3proxy для windows 10
Bugfixes:
Fixed: systemd description file (proxy may fail to start after reboot or via systemctl)
Fixed: group/account creation in installation scripts
Fixed: countall/nocounall do not work in some configurations
Fixed: counters do not work if counter file is not specified
Fixed: counters without rotation (type N) are incorrectly shown in web admin interface
Fixed: %n may be incomplete or missed in long log records
Fixed: connect back functionality does not work
Improvements:
+ Docker builds
Bugfixes:
Fixed: bandwidth limiters (once again)
Fixed: data filtering plugins (PCREPlugin, SSLPlugin). SSLPlugin use on Linux requires to disable splice (-s0)
FIxed: standalone proxies do not react on HUP (Ctrl+C) in Linux/Unix
Fixed: few minor bugs
Improvements:
+ deb for arm platforms (experimental)
+ Openssl 1.1 support for SSLPlugin
Пофикшены ошибки:
Fixed: сокет может быть закрыт до чтения/отравки всех данных
Fixed: не работает bandlimin
Fixed: пофикшена работа countall/nocountall
Fixed: устранено несколько race conditions
В версии 0.9 реализованы опции сокетов, в т.ч. привязка к интерфейсам в Linux/Unix, ограничения по соединениям и рейтлимитам соединений, реализован режим zero-copy под Linux, возможность запретить одновременный вход пользователем с нескольких IP, улучшена поддержка IPv6, реализована предварительная поддержка RADIUS, поддержана платформа ARM на Windows. Ветка 0.9 рекомендована для обновления всех более старых релизов.
Ветка 0.9 считается стабильной, разработка ведется в ветке 10. Ветка 0.8 больше не поддерживается, за исключением исправлений, связанных с безопасностью.
3proxy это маленький многоплатформный набор прокси-серверов (под Linux/Unix и Windows, включая 64-битные версии).
Он включает в себя HTTP прокси с поддержкой HTTPS и FTP (proxy/proxy.exe), SOCKSv4/SOCKSv4.5/SOCKSv5 прокси (socks/socks.exe), POP3 прокси (pop3p/pop3p.exe), SMTP прокси (smtpp/smtpp.exe), AIM/ICQ прокси (icqpr/icqpr.exe), MSN messenger / Live messenger proxy (msnpr/msnpr.exe), FTP proxy, кэширующий DNS прокси, TCP и UDP портмапперы (tcppm, udppm) а так же комбинированный прокси-сервер с поддержкой дополнительных возможностей, таких как управление доступом, ограничение ширины потребляемого канала, ограничение трафика на день, неделю и месяц, перенаправление соединений, построение цепочек соединений (proxy chaining), ротацию лог-файлов, ведение журналов через ODBC и syslog и т.д. (3proxy).
Он создан в рассчете на то, чтобы быть маленьким и простым и в то же время функциональным. Он может быть скомпилирован как с помощью Visual C так и с помощью gcc. Версия под Win32/Win64 использует родные библиотеки (т.е. не требуется Cygwin или другие POSIX-эмуляторы), поддерживается установка в качестве сервиса. На сегодняшний день работоспособность проверена на Windows начиная с 98 (для Windows до Vista требуется версия lite) и заканчивая последними версиями, FreeBSD/i386/x64, NetBSD/i386/x64, OpenBSD/i386/x64, Linux/i386/x64/arm/PPC/Alpha, Mac OS X, Solaris/i386/x64.
3proxy является FreeWare и может быть использован по лицензии GNU/GPL или под собственной лицензией. Начиная с версии 0.6 Используется лицензия типа BSD, позволяющая, так же, использовать LGPL, Apache License и многие другие совместимые типы лицензирования.
По вопросам лицензирования и коммерческой поддержки пишите [email protected]
3proxy настройка прокси сервера в Windows
Сегодня мы рассмотрим еще один бесплатный прокси сервер — 3proxy. Не смотря на то, что крайняя версия была выпущена в конце 2009 года, программа примечательна своим широким функционалом. Дистрибутивы доступны как для Windows различной разрядности так и для Linux. 3proxy очень похож на монстра всех прокси серверов squid, однако более легок в конфигурировании и прост в эксплуатации на Windows.Дистрибутив весит каких-то полмегабайта. 3proxy умеет работать с HTTP/HTTPS, FTP over HTTP, SOCKS, можно делать разные правила разрешений и запретов, даже скорость ограничивать персонально для выбранного пользователя. Можно настраивать формат ведения логов, что позволяет в последствии анализировать их сторонними анализаторами. При желании журнал можно вести в базу данных через ODBC. Однако, прокси сервер не умеет кэшировать трафик, что в общем то уже не так актуально в условиях безлимитных тарифов на интернет.
3proxy написан русскими разработчиками, снабжен хорошей справкой на русском языке, примером конфигурации и благодаря этим обстоятельствам программу можно смело рекомендовать новичкам.
На официальном сайте 3proxy можно найти не только дистрибутивы, но и ответы на часто задаваемые вопросы, плагины, примеры настройки.Скачиваем дистриб и распаковываем куда нужно, я это сделал в C:3proxy. На момент написания обзора крайняя версия была 0.6.1. В каталоге мы увидим три папки и еще всякие файлики. В папке bin хранится сама программа прокси сервера и всякие плагины, в папке cfg хранится пример файла конфигурации и sql скрипт для создания базы данных, если есть желание хранить журнал в БД. В папке doc справка.
Мы идем в папку bin, там создаем файлик 3proxy.cfg. Открываем его на редактирование, вписываем туда всего три строчки:
Cохраняем и закрываем. Так выглядит конфиг прокси сервера в минимальном варианте.
Первая строка говорит, что авторизация не требуется, строка log — вывод журнала прямо в окно программы, строка proxy без параметров включает сам прокси сервер на стандартном порту 3128. Запускам 3proxy.exe, настраиваем браузер на прокси сервер localhost и порт 3128 и захоим на какой-нибудь сайт.
В окне 3proxy сразу увидим много строк, это собственно и есть журнал, который мы включили параметром log.
Если на компьютере с 3proxy одна сетевая карта смотрит в локальную сеть, а другая в интернет, то не лишним будет принудительно указать какая из сетевых карт какая. Это делается так:
internal 192.168.1.2
external 10.10.54.22
Суть следующая: internal — это сетевуха локальной сети и её IP-адрес, а external — внешняя. Если внешний интерфейс не постоянный, т.е. подключение к интернет осуществляется, например, по PPPoE, то надо писать так — external 0.0.0.0
Не лишним будет указать IP-адреса DNS серверов провайдера и кэширование, делает это так:
nserver ip-адрес-dns-сервера-1
nserver ip-адрес-dns-сервера-2
nscache 65536
Если необходимо, можно делать статические DNS-записи, в некоторых случаях это тоже помогает что-нибудь заблокировать:
nsrecord www.porno.com 127.0.0.1
Далее настроим запись лог-файлов. В каталоге 3proxy создайте папку logs, а в конфиге измените строку log на следующее:
log C:3proxylogs3proxy.log D
rotate 30
Здесь мы указываем куда сохранять лог-файлы, каждый день будет создаваться новый файл, а длительность хранения составит 30 дней.
В итоге наш конфигурационный файл будет иметь следующий вид:auth none
log C:3proxylogs3proxy.log D
rotate 30
proxyinternal 192.168.1.2
external 10.10.54.22
nserver ip-адрес-dns-сервера-1
nserver ip-адрес-dns-сервера-2
nscache 65536
nsrecord www.porno.com 127.0.0.1
В Windows нужно создать группу 3ProxyAllowedGroup и затем добавлять туда пользователей. Можно поменять название группы на что-нибудь свое, изменив соответствующий параметр выше.
В случае с auth strong логины и пароли задаются в следующем формате:
users user1:CL:password1
Пароли можно задавать и в зашифрованном виде, кому интересно как это делается — велкам в мануал к 3proxy.
Следующий на очереди инструмент ограничения скорости. Синтаксис команды достаточно простой:
bandlimin
bitrate — скорость в битах
userlist — список пользователей через запятую без пробела, если у вас авторизация auth strong, в противном случае ставится звездочка
sourcelist — если у вас авторизация auth iponly, то тут указывается список IP-адресов через запятую без пробела, в других случаях ставится звездочка
targetlist — IP-адреса назначения через запятую без пробела. если хотим просто ограничить скорость, то можно не заполнять
targetportlist — порты адресов назначения
commandlist — дополнительные команды
Пример правила:
bandlimin 240000 * 192.168.0.2,192.168.0.3
Здесь мы ограничиваем скорость до 24 Кбит/c для двух IP-адресов локальной сети. При этом т.к. IP-адреса перечислены через запятую, то 24 Кбит будет делиться между ними.
Чтобы на какой-то ресурс принудительно снять ограничение скорости существует следующая команда:
nobandlimin Теперь мы дошли до самого главного — создание правил доступа. Для этого используются команды allow, deny и flush. Синтаксис имеет следующий вид:
allow
deny
flush
CONNECT — установить исходящее TCP соединение (например, SOCKSv4/5, POP3 proxy, и т.д.)
BIND — разрешить входящее TCP соединение (SOCKSv5)
UDPASSOC — создать UDP-ассоциацию (SOCKSv5)
ICMPASSOC — создать ICMP-ассоциацию (не реализовано)
HTTP_GET — HTTP GET запрос (HTTP proxy)
HTTP_PUT — HTTP PUT запрос (HTTP proxy)
HTTP_POST — HTTP POST запрос (HTTP proxy)
HTTP_HEAD — HTTP HEAD запрос (HTTP proxy)
HTTP_CONNECT — HTTP CONNECT запрос (HTTP proxy)
HTTP_OTHER — другой HTTP запрос (HTTP proxy)
HTTP — соответствует любому HTTP запросу кроме HTTP_CONNECT (HTTP proxy)
HTTPS — тоже, что HTTP_CONNECT (HTTP proxy)
FTP_GET — FTP get запрос
FTP_PUT — FTP put запрос
FTP_LIST — FTP list запрос
FTP — соответствует любому FTP запросу
ADMIN — доступ к интерфейсу администрирования
задает список дней недели, 1 соответствует понедельнику, 0 или 7 — воскресенье. 1-5 означает с понедельника по пятницу (включительно). 1,3,5 задает нечетные дни недели.
список интервалов дня в формате ЧЧ:ММ:СС-ЧЧ:ММ:СС, например, 00:00:00-08:00:00,17:00:00-24:00:00 задает нерабочее время. Примеры использования листов доступа можно найти в файле 3proxy.cfg.sample в папке cfg.
В завершении обзора еще парочка моментов.
Во-первых, когда вы напишете рабочий конфиг и 3proxy будет запускаться с ним без ошибок, прокси сервер можно установить в качестве службы Windows командой 3proxy.exe —install
При этом в конфигурационном файле добавьте строку service
Во-вторых мы рассмотрели только самые основные возможности прокси сервера. На официальном сайте есть подробная документация на русском языке по настройке большинства аспектов работы 3proxy.
Настройка 3proxy для чайников
Пара ремарок перед началом чтения:
Что это вообще такое?
Проще некуда
Для затравки, если уж «для чайников», да простят меня читатели, то вот простой конфиг 3proxy.cfg:
auth none
log
proxy
Куда уж проще. Вообще, 3proxy хорош тем, что он может быть и очень простым и лаконичным. Да и запуск его не сложен вовсе.
Скачали с сайта архив, распаковали в c:\3proxy, создали тектовый файл 3proxy.cfg и положили его в папку с exe-файлом, запустили cmd:
Все, ничего не устанавливая, мы запустили proxy сервер, который принимает соединения на порт 3128. Можно прописать даже у себя в браузере, 127.0.0.1 3128 и все уже начинает работать, вы сразу увидите, как в консоли побегут строчки лога.
Оригинал с правками
Автор статьи: Kurmaeff Halit
halit_at_mail_dot_ru
auth none
log
proxy
Все гениальное, как говорится, просто. А моя ошибка заключалась, кстати, как раз в том, что я пытался сразу написать рабочий конфиг со всеми лимитами и т.д.
Важно! Конфиг файл в общем случае должен находиться в одной папке с исполняемым файлом 3proxy.exe (по умолчанию в папке bin). Иначе надо запускать исполняемый файл с указанием пути к конфигу. В 90% случаях этот конфиг будет работать. Выше мы уже прокомментировали этот конфиг.
В начале конфига можно было бы еще поставить строчку service, для того, чтобы сервер запускался как служба, а не отдельным приложением. В этом случае его надо будет предварительно установить как службу командой:
Но не спешите этого делать! Дело в том, что будучи запущен приложением, 3proxy будет сразу выдавать на экран сообщения об обрабатываемых запросах и ошибках и вам не придется смотреть текстовые логи. Причем, что особенно радует, с указанием кода ошибки и номера строки в конфиге, где эта ошибка присутствует. А на стадии обучения это очень помогает.
Техническое задание
На компьютере с адресами 192.168.0.2-192.168.0.4 работают пользователи Иванов, Петров, Сидоров соответственно.
Установка 3proxy
Конфиг
Теперь последовательно займемся дальнейшим улучшением нашего замечательного конфига.
Для начала укажем внутренний:
— вы ведь понимаете, что здесь должен стоять IP сетевой карты ВАШЕГО прокси сервера, настроенной на локальную сеть. Эта команда задает именно тот IP адрес в локальной сети, к которому будут обращаться клиенты и который, соответственно, будет прописан в браузерах в качестве прокси-сервера
и внешний интерфейсы для прокси-сервера:
— а этот IP адрес вы должны были получить от провайдера, как правило, в случае выделенной линии это так называемый «реальный» IP, который должен быть доступен из интернета (хотя это не обязательно).
internal 192.168.0.1
external 211.80.11.12
proxy
где вместо 65536 может быть любое, желательно представляющее степень числа 2 и достаточно большое. Итак, на данном этапе наш конфиг выглядит следующим образом (версия 1):
Кажется, нам еще не хватает полноценного логирования всех доступов и ошибок, ведь на экране лог очень быстро пролетает! Поменяем команду log на более расширенную
для того, чтобы в папке с логами сохранялись лишь последние 30 файлов, а то логи так быстро растут, а диск не резиновый!
В этом случае логи примут вид:
Ну и наконец, если вы хотите еще больше сэкономить места на диске под логи, то их можно архивировать с помощью любого доступного архиватора, например, вот так:
(подсказку для опций командной строки WinRAR можно найти в его же Help’е)
Можно собирать продвинутую версию (версия 2) нашего конфига:
Все лучше и лучше! Продолжаем. Подумаем о том, что пользователей много, а канал, может, и не очень толстый, хорошо, если хотя бы 128 кб, а если диалап на 33.6? Начинаем резать, товарищи!
— разрешаем качать компьютерам с IP-адресами 192.168.0.2 и 192.168.0.3 со скоростью 24 кбит в секунду, причем это 24 кбит приходятся не на каждый из этих компьютеров, а на оба в совокупности, т.е. если оба будут к примеру, качать одновременно файлы с достаточно быстрых сайтов, то каждому придется только по 12 кбит в секунду (заметьте, килобит, а не килобайт, если надо пересчитать в килобайты, разделите числа на 8)
— а этому счастливчику единолично скорость 48 кбит в секунду
— исходящую скорость тоже ограничим всем до 24 килобит в секунду (сейчас эта команда работает только в версии devel 0.6) Ну и наконец, если вы хотите, чтобы эти жесткие ограничения не касались, к примеру, скачивания почты, то снимите ограничения на порт 110:
Скорости скачивания-закачивания мы уже задали, продолжаем закручивать гайки. В этом нам помогут команды deny и allow
— а здесь разрешаем только WEB-серфинг, зато круглосуточно и любой день недели
Кстати вспоминаем (вы ведь уже медитировали над man, FAQ и HowTO, не правда ли?), что команда
собственно никакую авторизацию не дает, т.к. отключает любую авторизацию совсем и команды allow и deny после нее теряют всякий смысл. Пора перейти на что-нибудь более подходящее, в нашем случае это авторизация по IP:
Снова собираем очередную версию конфига с учетом вышенаписанного (версия 3):
— этим мы задаем, где у нас будет хранить общий файл хранения всех всех счетчиков. Он представляет собой файл в двоичном формате, причем он всегда один на всех.
Эту команду можно было бы задать в формате
Снова собираем очередную версию конфига с учетом вышенаписанного (версия 4):
В этом случае надо будет настроить ваши мэйл-клиенты. Если, к примеру, для ящика vasya.pupkin@mail.ru в настройках моего любимого TheBat! в настройках доставки почты (закладка Транспорт) раньше стояли такие параметры:
pop3-сервер: pop.mail.ru
пользователь: vasya.pupkin
то чтобы получать почту через прокси, надо будет их поменять на следующие:
pop3-сервер: 192.168.0.1
пользователь: vasya.pupkin@pop.mail.ru
— внимание, именно последовательность «имя пользователя»@»POP3-сервер вашего ящика», а не ваш адрес.
Для большей наглядности рассмотрим еще вариант настройки клиента:
pop3-сервер: mail.example.com
пользователь: vasya.pupkin@example.com
Тогда для получения почты через прокси пришлось бы поменять настройки клиента на следующие:
pop3-сервер: 192.168.0.1
пользователь: vasya.pupkin@example.com@mail.example.com
Что же касается отправки почты, то разработчик нашего замечательного прокси-сервера рекомендует воспользоваться для этого портмаппингом:
то есть, не мудрствуя лукаво, мы просто все запросы по порту 25, по которому, собственно, и отправляются почтовые сообщения, перекидываем на 25-ый же порт почтового сервера провайдера.
В настройках вашего почтового клиента в этом случае для упомянутого выше ящика в общем случае поменяется запись только для SMTP-сервера:
Должен заметить, что ловкий прием с портмаппингом можно было бы использовать и для получения почты. В этом случае используется команда:
Впрочем, вряд ли их число даже в большом офисе превысит 10-15.
В этом случае параметры ящика в мэйл-клиенте будут следующие:
pop3-сервер: 192.168.0.1
пользователь: vasya.pupkin
и дополнительно надо будет поменять порт на 2110 и не забыть дать пользователям разрешение на этот нестандартный порт:
Собираем очередную версию конфига с получением почты через pop3p (версия 5):
в случае получения почты через портмаппинг секция конфига, идущая после коментария # ПОЧТА выглядела бы немного по другому:
может быть заменена командой
Тогда мы можем задать слежение и за списком адресов из файла IP_list.txt
Осталось привести получившийся рабочий вариант конфига (версия 6):
Теперь при попытке доступа на страницу WEB-администрирования с компьютера Сидорова будет запрашиваться пароль, а на других компьютера доступ будет полностью закрыт. Если же третья строчка в приведенной выше секции конфига будет выглядеть так:
Согласитесь, что так конфиг намного информативнее и легче в восприятии.
Необходимое послесловие
Приведенный выше конфиг довольно близок к тому, что я использую в офисе, за исключением количества пользователей и некоторых специфичных моментов.
3proxy для windows 10
Извлеките файлы из архива 3proxy.tgz (например, с помощью WinZip). Используйте команду nmake /f Makefile.msvc.
См. Как скомпилировать 3proxy Visual C++. Используйте Makefile.intl вместо Makefile.msvc
Установка в качестве системной службы под Windows 9x поддерживается с версии 0.5
Извлеките файлы из архива 3proxy.zip в любой каталог (например, c:\Program Files\3proxy). Если необходимо, создайте каталог для хранения файлов журналов. Создайте файл конфигурации 3proxy.cfg в каталоге 3proxy (См. раздел Конфигурация сервера). В файле конфигурации удалите строку и добавьте строку Создайте ярлык для 3proxy.exe и поместите его в автозагрузку либо с помощью редактора реестра regedit.exe добавьте в разделе
HKLM\Software\Microsoft\Windows\CurrentVersion\Run строковый параметр
3proxy = «c:\Program Files\3proxy.exe» «C:\Program Files\3proxy.cfg»
Использование кавычек при наличии в пути пробела обязательно. Перезагрузитесь. Если сервер не запускается, проверьте содержимое файла журнала, попробуйте удалить строку daemon из 3proxy.cfg, запустить 3proxy.exe вручную и проанализировать сообщения об ошибках.
Скомпилируйте 3proxy (см. раздел Компиляция). Скопируйте исполняемые файлы в подходящий каталог (например, /usr/local/3proxy/sbin для серверных приложений или /usr/local/3proxy/bin для клиентских утилит). Создайте файл /usr/local/etc/3proxy.cfg. (См. раздел Конфигурация сервера). Изменить расположение файла конфигурации можно, задав параметр при вызове 3proxy или изменив путь в файле 3proxy.c до компиляции. Добавьте вызов 3proxy в скрипты начальной инициализации.
Для работы требуется корректный файл конфигурации. Если прокси не запускается, значит в конфигурации есть ошибка.
Интерфейс с адресом external, если он указан, должен быть рабочим на момент получения запроса клиента. При отсутствии external или адресе 0.0.0.0 внешний адрес будет выбираться системой при установке соединения. При этом, может быть возможность доступа через прокси к ресурсам локальной сети, поэтому для предотвращения несанкционированного доступа следует использовать ACL. Кроме того, могут быть проблемы с приемом входящих соединений через SOCKSv5 (SOCKSv5 используется в клиентах исключительно редко). В случае, если адрес динамический, можно либо не указывать external, либо использовать адрес 0.0.0.0, либо, если необходима поддержка входящих соединений в SOCKSv5, использовать скрипт, который будет получать текущий адрес и сохранять его в файл, который будет отслуживаться через команду monitor.
Прокси не может обращаться напрямую к IPv6 сети если в запросе от клиента указан IPv4. В запросе от клиента должен быть IPv6 адрес или имя хоста, чаще всего это решается включением опции разрешения имен через прокси-сервер на стороне клиента.
Возможно, недостаточен размер стека потока по-умолчанию, это может быть при использовани каких-либо сторонних плагинов (PAM, ODBC) или на некоторых платформах (некоторые версии FreeBSD на amd64). Можно решить проблему с помощью опции ‘stacksize’ или ‘-S’, поддерживаемых в 0.8.4 и выше.
Пример файла конфигурации 3proxy.cfg.sample поставляется с любым дистрибутивом программы.
A: Для этого надо использовать тип родительского прокси http, connect+, socks4+ и socks5+. Однако, при это надо помнить, что самому 3proxy требуется разрешение имени для управления ACL. Поэтому, если с прокси-хоста не работают разрешения имени, необходимо в конфигурации дать команду которая разрешает любое имя в адрес 127.0.0.2.
Есть поддержка как FTP через HTTP (то, что называется FTP прокси в браузерах) так и настоящего FTP прокси (то, что называется FTP proxy в командных оболочках и FTP клиентах). В браузерах в качестве FTP прокси следует прописывать порт службы proxy, т.е. FTP организован через http прокси, дополнительного прокси поднимать не надо. Для FTP-клиентов необходимо поднять ftppr. FTP прокси всегда работает с FTP сервером в пассивном режиме.
Для разных служб можно установить различные типы авторизации, например, не накладывает ограничений на использование POP3 Proxy, производит проверку по спискам доступа для пользователей HTTP Proxy и требует авторизации с именем и паролем для SOCKS.
С версии 0.6 возможно использвоать двойную авторизацию, например, будет использовать авторизацию только в том случае, если не удалось пропустить пользователя с авторизаций iponly, т.е. для доступа к ресурсам 192.168.0.0/16 авторизация не требуется.
authcache так же может использоваться для привязки сессий пользователя к ip с с помощью опции limit запретит пользователю использовать более одного адреса в течении времени кеширования.
A: Чтобы иметь в логах URL запросов, если пользователь SOCKS пользуется Web, FTP или POP3.
A: Перенапраление невозможно для web-серверов или FTP, висящих на нестандартных портах, для SOCKSv4 не поддрживается авторизация с паролем (IE поддерживает только SOCKSv4), но при этом IE передает имя пользователя по SOCKSv4 (имя, с которым пользователь вошел в систему). Для SOCKSv5 не поддерживается NTLM авторизация, пароли передаются в открытом тексте.
A: Достаточно в настройках IE только указать адрес SOCKS прокси. В больших сетях можно для этого использовать WPAD (автоматическое обнаружение прокси). В 3proxy достаточно запускать только одну службу (socks). Если используется только Internet Explorer, то можно автоматически получать имя пользователя в логах, не запрашивая логин/пароль.
A: Указывается parent http proxy со специальным адресом 0.0.0.0 и портом 0. Пример:
A: После внутреннего перенаправления правила рассматриваются еще раз за исключением самого правила с перенаправлением (т.е. обработка правил не прекращается). Это позволяет сделать дальнейшие перенаправления на внешний прокси. По этой же причине локальное перенаправление не должно быть последним правилом (т.е. должно быть еще хотя бы правило allow, чтобы разрешить внешние соединения через HTTP прокси). Например,
bitrate указывает ширину потока в битах в секунду (именно в битах). В остальном команды аналогичны командам allow/deny с тем отличием, что команды bandlim не имеют привязки к конкретному сервису, такому как HTTP прокси или SOCKS и действуют на все сервисы, трафик по всем соединениям, попавшим под действие правила суммируется независимо от того, через какой сервис это соединение установлено. устанавалиет канал 57600 для каждого из четырех клиентов, устанавалиает суммарный канал 57600 на 4-х клиентов. Если необходимо, чтобы на какой-то сервис не было ограничения ширины канала, следует указать nobandlim для этого сервиса, например: разрешает клиентам неограниченный по скорости доступ по протоколу POP3.
Следует учитывать, что 3proxy считает трафик только на прикладном уровне и только проходящий через прокси-сервер. Провайдеры и другие средства учета трафика считают трафик на сетевом уровне, что уже дает расхождение порядка 10% за счет информации из заголовков пакетов. Кроме того, часть трафика, как минимум DNS-разрешения, различный флудовый трафик и т.д. идут мимо прокси. Уровень «шумового» трафика в Internet сейчас составляет порядка 50KB/день на каждый реальный IP адрес, но может сильно варьироваться в зависимости от сети, наличия открытых портов, реакции на ping-запросы и текущего уровня вирусной активности. По этим причинам, если 3proxy используется чтобы не «выжрать» трафик, выделенный провайдером, всегда следует делать некий запас порядка 15%.
Например, пользователю нужен доступ к прокси-серверу, который расположен на хосте 192.168.1.2 недоступном из внешней сети, но имеющем доступ во внешнюю сеть с внешним адрес 1.1.1.1. Так же у него есть машина с именем host.dyndns.example.org с внешним адресом 2.2.2.2. Пользователь запускает 2 экземпляра 3proxy, один на хосте 192.168.1.2 с конфигурацией второй на хосте host.dyndns.example.org (2.2.2.2) с конфигурацией В настройках браузера указывается host.dyndns.example.org:3128.
Мы будем рассматривать Interenet Explorer, т.к. у него больше особенностей настройки, с другими браузерами должно возникать меньше вопросов.
Для конфигурации HTTP прокси необходимо указать внутренний адрес и порт, установленые для службы proxy в конфигурации 3proxy (либо как «Один прокси-сервер для всех протоколов» либо для HTTP, Secure, FTP). Поддержка Gopher в 3proxy в настоящий момент не реализована, но этот устаревший протокол в Internet практически не используется. Для нормальной работы FTP через HTTP прокси необходимо отключить представление для папок FTP (FTP folder view), он включен по-умолчанию, т.к. иначе FTP будет работать без использвания HTTP прокси. HTTP прокси использует пассивный режим для протокола FTP. В настройках 3proxy рекомендуется разрешть метод HTTP_CONNECT только для порта назначения 443. Если метод HTTP_CONNECT не разрешен, то не будет работать протокол HTTPS, если он разрешен для всех портов, то можно обойти журналирование запросов для протокола HTTP). Для работы с HTTP прокси может использоваться авторизация по паролю (strong).
Настройка FTP клиента для работы через SOCKS прокси не отличается от настройки браузера.
Для работы с FTP клиентом через FTP прокси (ftppr) есть несколько возможностей. Допустим, нам необходимо подключиться ко внешнему FTP серверу со следующими параметрами:
Не все клиенты обработают это корректно, но в большинстве случаев этого не требуется.
Предположим, у вас есть следующие настройки для получения почты: В настройках почтовой программы следует указать:
Имя пользователя может само по себе содержать знак ‘@’. Если в примере выше имя пользователя [email protected], то имя пользвоателя для доступа к прокси-серверу должно быть [email protected]@pop3.security.nnov.ru. Если pop3pr требует авторизации по имени/паролю (например, pruser и prpass), то их необходимо указать в начале имени пользователя, отделив знаком ‘:’, т.е для самого тяжелого случая pruser:prpass:[email protected]@pop3.security.nnov.ru
Свежую версию всегда можно взять здесь. Обратите внимание, что в новой версии может измениться порядок лицензирования или команды конфигурации, поэтому прежде чем устанавливать новую версии программы обязательно ознакомьтесь с документацией.
При установке 3proxy в качестве системной службы сервером поддерживаются команды запуска, остановки, временной приостановки и продолжения. При временной приостановке сервер перестает принимать новые запросы от клиентов, но обработка ранее поступивших запросов продолжается. Сервер не подерживает динамическое изменение конфигурации, т.е. после изменения конфигурации 3proxy необходимо перезапустить. Управлять запуском, остановкой, приостановкой и продолжением можно либо через служебную программу «Службы» (Services) либо через команду net:
Задайте его на Github. Только не пытайтесь задавать какие-либо вопросы, если вы просто не поняли этот HowTo.