Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> программы —> 3proxy

3PROXY или HTTP, FTP, SOCKS прокси за 5 минут

Автор: DNK.


3PROXY (или ЗаразаПрокси)  - маленький, очень простой в настройке  HTTP, FTP, SOCKS, POP прокси. Данный прокси сервер будет хорош для маленьких и средних предприятий а так же (что по моему самое главное) для начинающих админов.
По своему опыту знаю, как начинающие админы пугаются огромного количества настроек штатного Squid и иже с ним, и начинают заваливать глупыми вопросам типа
а что будет если я пропишу вот-так или так, хотя (опять же мое мнение) если почитать маны и поразбираться пару дней – проще squid не очень много програм.
И так начнем.
#cd /usr/ports/net/3proxy/
# make install clean

Собственно с установкой покончено.
Пишем свой конфиг для прокси.Предположим у нас внешний IP в интернет 85.85.85.85,
Внутренний в локальную сеть 192.168.1.1 и 192.168.5.1, а DNS 192.168.1.2 и 85.85.85.1
(пишу по 2 IP для наглядности).Все прокси будут осбслуживать ТОЛЬКО IP из локальных сетей.
# ee /usr/local/etc/3proxy.cfg

#-------------3proxy.cfg-------------
# ВНИМАНИЕ !! не должны быть пробелов
# перед любыми опциями конфигурации !!
# ip адрес DNS сервера провайдера или локального
nserver 192.168.1.2
nserver 85.85.85.1
timeouts 1 5 30 60 180 1800 15 60
# лог файл со списком запросов пользователей
# будет создаваться каждый день новый
# D – день H – час W - неделя
log /var/log/3proxy/3proxy.log D
#Зададим формат лог файла (люблю красоту :)
logformat "G%d-%m-%Y %H:%M:%S | %U | %C | %R:%r | %O    | %I    |%n"
#И добавляем команду rotate для хранения лишь последних 7 файлов с логами
rotate 7
#ну и сожмем по желанию
#archiver "/usr/bin/gzip" gzip -9 %F
# внешний интерфейс (через который будут уходить запросы от сервера)
external 85.85.85.85
# ip адрес (а) интерфейсов на которых будут приниматься запросы от клиентов
internal 192.168.1.1,192.168.5.1
# устанавливаем тип авторизации по IP
flush
auth iponly
#Для всей сетки  с понедельника-пятницу с 8:30-18:00
allow * 192.168.1.0/24 * * * 1-5 08:30:00-18:00:00
#для отдельных IP с понедельника-субботу с 9:00-17:30
allow * 192.168.5.234,192.168.5.235 * * * 1-6 09:00:00-17:30:00
proxy
ftppr
socks

# ограничиваем толшину канала для каждого пользователя по IP bps
# (тоже неплохо иногда)
#bandlimin 24000 * 192.168.1.81,192.168.1.55,192.168.5.235

# запускаем сервер от пользователя nobody
# (если в вашей ОС uid и gid пользователя nobody
# будут другими для их определения воспользуйтесь коммандой id nobody)
setgid 65534
setuid 65534
# будем собирать статистику по трафику некоторых IP
counter "/var/log/3proxy/3proxy.3cf" D "/var/log/3proxy/traf"
countin "1/Иванов" M 300 * 192.168.1.246 * * *
countin "2/Петрова" M 300 * 192.168.5.235 * * *
# и наконец последнее!!! В случае изменения настроек, сервер перегружать не нужно,
#он сам мониторит изменения
#monitor "/usr/local/etc/3proxy.users"
monitor "/usr/local/etc/3proxy.cfg"
# ну и для примера перенаправим запросы на sex.ru на yandex.ru
nsrecord sex.ru weather.yandex.ru

Собственно все.
Cоздаем директорию
#mkdir /var/log/3proxy
#chown 65534:65534 /var/log/3proxy

Добавляем в rc.conf
#echo 'threeproxy_enable="YES"' >> /etc/rc.conf

Рихтуем скрипт запуска (ну не умеют еще разработчики доводить все до ума!)
# ee /usr/local/etc/rc.d/3proxy
Ищем строку start_cmd="echo \"Starting ${name}.\";  ${command} ${threeproxy_flags}"
И меняем на start_cmd="echo \"Starting ${name}.\";  ${command} ${threeproxy_flags} &"

Запускаем
#/usr/local/etc/rc.d/3proxy start

Ну и начинаем тренировать свой английский читая маны.

На последок : прокси неплохой,работает стабильно,имеет множество дополнительных функций (если будет кому-то интересно могу дописать их) например : авторизация по логину,админка, логи в форматах для различных анализаторов логов , логи с хранением в БД (к сожалению только через ODBC работает), POP через прокси и т.д.



размещено: 2008-08-19,
последнее обновление: 2008-08-21,
автор: DNK


midda2, 2008-08-22 в 7:11:48

Нет ссылки на форум...

А пассивным фтп-прокси под 6.2 он работает?

DNK, 2008-08-22 в 10:14:02

Да,работает.
Проверял на 7.0 и 6.2.

Raven2000, 2008-08-30 в 15:28:02

to DNK если хочешь могу дополнить тк я несколько лет юзаю его и + на Win машине. Могу дополнить конфиг + про переброс портов ничего не указал и про список IP и про парсинг логов и про сайт на котором все это есть и по русски описано подробнее.
Семь слоев матрешки, или Настройка 3proxy для чайников
HowTo
FAQ

DNK, 2008-09-01 в 14:50:50

Спасибо, конечно дополни статью, думаю
это будет интересно многим.
Но я ставил задачу показать настройки
под freebsd. А на сайте хорошее описание
но только для винды.Не все работает под
freebsd.

Raven2000, 2008-09-01 в 15:26:59

Конфиги не меняются...

blackseed, 2008-09-04 в 2:31:27

неожидал тут увидеть маны к детищу Заразы )

TheFeaR, 2008-09-11 в 17:10:27

по поводу
# ee /usr/local/etc/rc.d/3proxy
Ищем строку start_cmd="echo \"Starting ${name}.\";  ${command} ${threeproxy_flags}"
И меняем на start_cmd="echo \"Starting ${name}.\";  ${command} ${threeproxy_flags} &"

автор походу сам невнимательно читал маны. Достаточно записать в конфииг файл строчку
daemon

в самом начале конфига

m4rkell, 2008-10-25 в 20:01:35

Прокся рульная под винду, работает у меня как часы уже почти как год, только обновляю переодически, под иксы имхо, есть более конструктивные варианты.

gx, 2008-12-18 в 1:29:24

хораша прокся - легко настраиваемая, еще б где-то достать парсер логов - кто, где, сколько/ кто знает?

gx, 2008-12-19 в 18:32:17

а все почитал доки понял

ууу, 2009-02-09 в 13:16:21

Товарищщи Это поля для ввода комментариев к статье, а не для вопросов. Сюда пишите найденные баги, или какие-то фичи :)
Для вопросов есть форум!

Товарищщщи!, 2010-02-18 в 1:18:52

Товарищщи!  Это поля для ввода комментариев к статье, а не для вопросов.  Сюда пишите найденные баги, или какие-то фичи  :)
Для вопросов есть форум!

123, 2010-10-08 в 16:06:46

 Т оварищщи! Это поля для ввода комментариев к статье, а не для вопросов. Сюда пишите найденные баги, или какие-то фичи :)
Для вопросов есть форум!

lllo, 2011-02-23 в 15:48:08

Товapищи! Это поля для ввода комментариев к статье, а не для вопросов. Сюда пишите найденные баги, или какие-то фичи :)
Для вопросов есть форум!q

ttys, 2012-08-09 в 12:39:37

>>автор походу сам невнимательно читал маны.
>>Достаточно записать в конфииг файл строчку
>>daemon

>>в самом начале конфига
с daemon не хочет работать от нобади
а вообще вот пример http://3proxy.ru/doc/ru/example1.txt

vasa, 2013-03-29 в 5:17:44

Еще можно добавить вот что для виндомса:

monitor "c:\3proxy\bin\3proxy.cfg" - мониторит изменения конфига, не нужно делать рестарт.

tcppm -i192.168.1.4 2355 212.42.44.98 80 - проброс портов.

Signal, 2015-09-08 в 19:24:25

Что-то не пойму, прокс сам работает, все пашет НО руки у меня кривые, если не указывать сокс в браузере клиентского ПК то все равно инет пашет напрямую минуя этот прокс, стоит на WIN XP
как настроить 2 сетевые?
и еще там же вроде можно как сделать прозраный прокс? допустим только для 80 и 443 порта а все остальное прибить?
помогите люди добрые!



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0436 секунд
Из них PHP: 24%; SQL: 76%; Число SQL-запросов: 77 шт.
Исходный размер: 31280; Сжатая: 7876