Головна FreeBSD 3proxy під FreeBSD. Швидке встановлення і налаштування

3proxy під FreeBSD. Швидке встановлення і налаштування

3proxy під FreeBSD. Швидке встановлення і налаштування
3proxy під FreeBSD. Швидке встановлення і налаштування

Коли мова заходить про проксі-сервера під Unix-подібні ОС, першим завжди згадують Squid. Проте коли нам не потрібно цілого комбайну наворочених функцій, авторизацій і іншого, а потрібно, скажімо, просто з інтернету потрапити у свою локалку потрібно щось маленьке і швидке що буде собі висіти в пам‘яті і не віджирати левову частку серверних ресурсів. Раніше я вже писав про проксі-сервер tinyproxy, та ось натрапив на ще один легенький проксі. Він мені сподобався тож я вирішив і про нього написати.

Отже 3proxy - це маленький і швидкий набір проксі-серверів! Саме набір, тобто модульність приваблює до цього продукту. Ви можете проксувати тільки http і буде завантажений тільки http-модуль, а можете налаштувати проксування http, pop3 і imap з авторизацією за логіном/паролем або IP-адресою і 3proxy завантажить модулі http, pop3 і imap. Нічого зайвого і все дуже швидко.

Встановлюємо 3proxy за допомогою менеджера пакунків:

pkg install 3proxy

І редагуємо файлик з настройками /usr/local/etc/3proxy.cfg

#!/usr/local/bin/3proxy

nserver 10.15.1.1
nserver 8.8.8.8
nscache 65536

timeouts 1 5 30 60 180 1800 15 60

users admin:CL:password

daemon

log /var/log/3proxy.log D

logformat "G%d-%m-%Y %H:%M:%S | %U | %C | %R:%r | %O | %I | %n"

archiver gz /usr/bin/gzip %F

rotate 9

auth strong
external 193.84.22.241
internal 10.15.1.1

proxy -n -p8087

setgid 65534
setuid 65534

Розберемо що в нас тут є:

nserver - вказує адресу DNS 

nscache - вказує використовувати кеш DNS-запитів і його розмір

timeouts - якщо чесно я так і не зрозумів що воно міняє, тому лишив як бкло в прикладі)

users - тут створюєм користувачів які матимуть доступ до сервера в форматі <ім‘я>:CL:<пароль>

daemon - запускає проксі в фоні як системний даемон

log - шлях до лог-файлу (буква D в кінці строчки означає поденне створення лог-файлу)

logformat - формат ведеггя логу

archiver - архіватор для ротації лог-файлів

rotate - увімкнення ротації логів і визнічення кількості архівних копій

auth - початок блоку опису проксі-модуля і визначення типу авторизації для нього

external - вибір IP-адреси для вихідних запитів

internal - вибір IP-адреси для клієнтських запитів

proxy - власне запуск http-proxy параметр p вказує порт на якому слухатимуться запити

setgid і setuid - встановлення користувача і групи від яких працюватиме проксі (в мене nobody)


Таким от чином в нас получився простий http проксі сервер з авторизацією. Але можливості 3proxy цим не обмежується. В прикладі конфігурації на github-репозиторії ви можете побачити що він вміє також проксувати mail-сервіси (pop3, smtp), dns, і навіть вміє portmap! Та я цими його можливостями не користувався тож і не описую)


Отож. Настройки ми зробили, і тепер пора нам запускати нашоно сервера. Додаємо запис в /etc/rc.conf:

echo 'threeproxy_enable="YES"' >> /etc/rc.conf

Запускаємо сервіс:

service 3proxy start

і наш проксі готовий!

Лишається настроїти браузер на використання нашого проксі і ціль досягнуто.


П.С. Паролі при такому налаштуванні лежать в файлі відкритим текстом. Тож краще виставити на нього chmod 600.


Гарного адміністрування!

perm_identity event

Коментарі

18 вер. 2019 р., 09:57

echo 'threeproxy_enable="YES"' >> /etc/rc.conf застаріло сучасніше sysrc threeproxy_enable="YES" До речі, невже у 2019 році хтось ще користується проксі?

Ai SolarireplyВідповісти