Все конфигурационные файлы для удобства разбиты на секции. Все пробелы и переносы в файлах игнорируются и нужны только для визуального удобства системного администратора. После каждой команды и между параметрами ставится знак ":".
Ниже приведено содержимое конфигурационных файлов с комментариями ключевых моментов прокси-сервера.
[Server]
Master=
# IP-адрес родительского прокси-сервера. Если он отсутствует, то поле остается пустым.
Port=
80# Порт для подключения пользователей по протоколу HTTP.
Idle Thread Time=
100# Время в милисекундах холостого хода рабочих потоков.
Threads=
100# Целое положительное число количества рабочих потоков.
Threads Type=
1 [FTP]
Enable=
1# (0 или 1) разрешение на работу фтп-прокси.
Port=
21# Порт для подключения пользователей по протоколу FTP.
Scan for server name from the begin=
0Log Enable=
1# (0 или 1) ведение log-файла.
Log File Name=
C:\Program Files\ES proxy\esps4_ftp.log# Путь к log-файлу.
Info Log Enable=
0# (0 или 1) ведение log-файла с дополнительной информацией.
;Info Log File Name=C:\Program Files\ES proxy\esps4_ftp_info.log
;Путь к log-файлу
[Connect]
Enable=
1# (0 или 1) Глобальное разрешение использование HTTPS-протокола по методу Connect.
Use Parent=
1# (0 или 1) разрешение работы через родительский прокси.
Log Enable=
1# (0 или 1) ведение log-файла.
Log File Name=
C:\Program Files\ES proxy\esps4_https.log# Путь к log-файлу.
[Statistics]
Show Zero Day Users=1
Show Zero Week Users=1
Show Zero Month Users=1
[Users]
Groups File=
C:\Program Files\ES proxy\user.ini# Путь к конфигурационному файлу, содержащему настройки групп пользователей.
Count=
3# Количество пользователей, подключаемых к прокси-серверу.
Wait Free Thread=
100# Время ожидания (в секундах) освобождения потоков для системы квотирования.
Threads Limit=
32# Количество входящих потоков, которые распределяются между пользователями системой квотирования.
Input Rate Limit=
1048576# Скорость входящего потока в байтах (1Мб/сек = 1048576).
Output Rate Limit=
1048576# Скорость исходящего потока в байтах (1Мб/сек = 1048576).
Save Users File Name=
C:\Program Files\ES proxy\user.dat# Путь к файлу для хранения временной информации во время остановки системной службы.
Show Names=
1Show MAC=
0Report Disable URLs=
1 [Main Log]
Enable=
1# (0 или 1) ведение log-файла
File Name=
C:\Program Files\ES proxy\esps4_m.log# Путь к log-файлу запуска и остановки сервера.
[Access Log]
Enable=
1# (0 или 1) ведение log-файла
File Name=
C:\Program Files\ES proxy\esps4_http.log# Путь к log-файлу регистрации доступа клиентов по HTTP.
[Error Log]
Enable=
0# (0 или 1) ведение log-файла.
;File Name=C:\Program Files\ES proxy\esps4_errors.log
# log-файл регистрации ошибок.
[Cache]
Enable=
1# (1 или 0) разрешение или запрещение работы кэша.
Path=
C:\Program Files\ES proxy\Cache# Путь к директории содержащей кэш.
Rules File=
C:\Program Files\ES proxy\esps4_cache_rules.ini# Путь к файлу, в котором содержатся правила хранения для различных типов объектов в кэше.
Max Size=
50# Максимально допустимый размер кэша в Мб.
Test Time=
1800# Периодичность проверки (в секундах) сервером своего кэша.
Clear Log Enable=
0# (0 или 1) ведение log-файла очистки кэша.
;Clear Log File Name=C:\Program Files\ES proxy\esps4_clear_cache.log
# Путь к log-файлу.
[Wait Socket]
Retry Connect=
1# Количество повторов при неудаче связаться с удаленным сокетом.
Retry DNS=
1# Количество повторов при неудаче определения IP-адреса по имени запрошенного ресурса.
Write Local=
1000# Допустимый таймаут на запись для локальных сокетов.
Read Local=
1000# Допустимый таймаут на чтение для локальных сокетов.
Read Remote=
1000# Допустимый таймаут на чтение для удаленных сокетов.
Write Remote=
1000# Допустимый таймаут на запись для удаленных сокетов.
[Routers]
Enable=
1# (0 или 1) разрешение использования перенаправления портов TCP.
List File Name=
C:\Program Files\ES proxy\esps4_routers_list.ini# Путь к файлу, где находятся настройки перенапрвления портов TCP.
Threads=
32# Целое положительное число количества рабочих потоков роутинга портов.
Log Enable=
1# (0 или 1) ведение log-файла.
Log File Name=
C:\Program Files\ES proxy\esps4_routers_list.log# Путь к log-файлу.
[UDP Routers]
Enable=
0# (0 или 1) разрешение использования перенаправления портов UDP.
;List File Name=C:\Program Files\ES proxy\esps4_udp_routers_list.ini
# Путь к файлу, где находятся настройки перенапарвления портов UDP.
;Threads=32
# Целое положительное число количества рабочих потоков роутинга портов.
Log Enable=
0# (0 или 1) ведение log-файла.
;Log File Name=C:\Program Files\ES proxy\esps4_udp_routers_list.log
# Путь к log-файлу.
[Exclude From Limits]
Enable=0
;List File Name=
GROUP : admin :
# Имя первой группы (групп может быть несколько).
USER :
192.168.1.1 :
255.255.255.255 :
# В группе один пользователь с IP-адресом 192.168.1.1
Enable HTTPS Port :
443 :
# Разрешены HTTPS соединения для группы на 443 порту.
Weight :
3 :
# Вес группы, учитывающийся при распределении входящего канала.
Show Statistics :
1 :
# (0 или 1) запрещает или разрешает просмотр статистики.
GROUP : users :
# Имя второй группы.
USER :
192.168.0.2 :
255.255.255.0 :
# В группе несколько пользователей имеющие IP-адреса из диапазона 192.168.0.2-192.168.0.255.
Enable HTTPS Port :
443 :
# Разрешены HTTPS соединения для группы на 443 порту.
Weight :
2 :
# Вес группы, учитывающийся при распределении входящего канала.
Show Statistics :
0 :
# (0 или 1) запрещает или разрешает просмотр статистики.
Day Input Limit :
500 :
M :
# Дневной лимит входящего трафика 500 Мб (вторым параметром может быть: B-байты; K-килобайты; M-мегабайты; G-гигабайты).
;Day Output Limit : :
# Дневной лимит исходящего трафика (вторым параметром может быть: B-байты; K-килобайты; M-мегабайты; G-гигабайты).
;Week Input Limit : :
# Недельный лимит входящего трафика (вторым параметром может быть: B-байты; K-килобайты; M-мегабайты; G-гигабайты).
;Week Output Limit : :
# Недельный лимит исходящего трафика (вторым параметром может быть: B-байты; K-килобайты; M-мегабайты; G-гигабайты).
;Month Input Limit : :
# Месячный лимит входящего трафика (вторым параметром может быть: B-байты; K-килобайты; M-мегабайты; G-гигабайты).
;Month Output Limit : :
# Месячный лимит исходящего трафика (вторым параметром может быть: B-байты; K-килобайты; M-мегабайты; G-гигабайты).
;Day Off: 0 :
# Понедельник;Day Off: 1 : # Вторник
;Day Off: 2 :
# Среда;Day Off: 3 : # Четверг
;Day Off: 4 :
# Пятница;Day Off: 5 : # Суббота
;Day Off: 6 :
# Воскресенье# Запрещает работу в указанный день (может повторятся несколько раз).
;Max Input Rate: :
# Максимально входящая скорость в байтах - шейпер (автором ПО не рекоменуется к использованию без особой нужды).
;Max Output Rate: :
# Максимально исходящая скорость в байтах - шейпер (автором ПО не рекоменуется к использованию без особой нужды).
Disable URL :
*porno*.* :
# Запрещены все URL с встречающимся сочетанием *porno*.*
Enable URL :
*sporno*# Но разрешается URL содержащий в имени *sporno* (в примере адрес porno.com не будет отображаться, а sporno.ru будет)
URL : *images/* :
Min save time :
20 :
H :
# Минимальное время сохранения в кэше объекта *.gif 3 часа (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
Max save time :
10 :
D :
# Максимальное время сохранения в кэше объекта *.gif 7 дней (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
URL : *.gif :
Min save time :
3 :
H :
# Минимальное время сохранения в кэше объекта *.gif 3 часа (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
Max save time :
7 :
D :
# Максимальное время сохранения в кэше объекта *.gif 7 дней (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
URL : *.png :
Min save time :
3 :
H :
# Минимальное время сохранения в кэше объекта *.gif 3 часа (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
Max save time :
7 :
D :
# Максимальное время сохранения в кэше объекта *.gif 7 дней (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
URL : *.jpg :
Min save time :
3 :
H :
# Минимальное время сохранения в кэше объекта *.gif 3 часа (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
Max save time :
7 :
D :
# Максимальное время сохранения в кэше объекта *.gif 7 дней (второй параметр может быть: M-минуты; H-часы; D-дни; W-недели).
Хотелось бы заострить внимание на системе квотирования, реализованной в ES Proxy. Эта система предназначена для распределения внешнего канала между группами пользователей в заданном соотношении. В конфигурационном файле users.ini каждой группе можно задать определенный вес (Weigh). Само по себе значение веса большой роли не играет, играет отношение этого значения между разными группами. Для наглядности работы квотирования приведу пример с сайта проекта:
Например, общая полоса сервера составляет 100000 байт в секунду, а общее количество допустимых сессий - 100. Допустим также, что работают два клиента, один из группы директоров, с весом 3, а другой - из группы менеджеров, с весом 1. В этом случае, директор получит 75% всех ресурсов (то есть 75000 байт в секунду и 75 сессий), а менеджер - 25% (то есть 25000 байт в секунду и 25 сессий). При большем количестве активных "директоров" и "менеджеров" каждый из них получит меньше байт в секунду и меньше сессий, чем в этом примере, но любой директор, при указанном распределении весов, всегда получит ровно в три раза больше ресурсов, чем любой менеджер.
Между пользователями одной группы входящий канал делится на равные части, система квотирования распределяет ресурсы канала только при одновременной работе пользователей из разных групп.
3 Январь, 08:48
Добавлю то, что насчет первой команды консоль ругалась на синтаксис. service name es нужен в кавычках и путь к программе тоже должен быть в кавычках тк содержит пробелы.
вот команда:
sc create “es” binpath= “C:/Program Files/ES Proxy/espsrv.exe” start= auto displayname= “es proxy”
Автору, в свою очередь, спасибо за статью! Я долго искал проксик с диамическим распеределением полосы пропускания сети между клиентами.
4 Январь, 19:25 (Комментарий автора)
Команду поправил, спасибо.
Винды под рукой нет, так что поверю на слово. :)) Название службы вроде можно без кавычек, т.к. без пробелов, а в пути – правильно подметили, упустил.
Еще раз спасибо.
5 Январь, 22:39
Да не за что:)
Сейчас вот вожусь с такой проблемой: как поднять SOCKS на ES Proxy?
Суть в том, чтобы распределить канал между машиной с торрентом и несколькими пользователями. Создал 2 группы с весовыми коэффициентами 25% на торрент и 75% на пользователей. Задумка следующая: когда пользователи не активны, весь канал потребляет торрент, как пользователь подключился – можно серфить с 75% канала.
Вот только торрент (uTorrent 1.8.5) по HTTP не работает. Проще по SOCKS сделать ИМХО.
6 Январь, 21:20 (Комментарий автора)
Вроде ES не умеет подымать прокси через socks. Можете задать вопрос разработчику прокси-сервера.
20 Апрель, 15:45
Очень рад что наткнулся на это прокси, пока не ставил но возник вопрос, авторизация пользователей возможна только по IP адресу? или по логину тоже? Если второй вариант возможет то можно пример.
22 Апрель, 01:59 (Комментарий автора)
К сожалению авторизация по логину и паролю ES Proxy не работает
27 Апрель, 13:53
Жаль, что по логину нельзя, придется искать что то другое, тоже бесплатное.
29 Апрель, 01:52 (Комментарий автора)
Попробуйте 3proxy
14 Май, 13:39
Ок как нить попробую. Хотя уже хочу сервер на Linux в скором будущем перевести.
16 Май, 08:38
3proxy работает и на Linux, либо посмотрите на Squid
20 Май, 16:01
Можно ли задавать диапозон IP адресов таким образом 192.168.0.1-192.168.0.10, а не по маске?
26 Май, 15:25
Вроде нет, но точно не знаю, т.к. не было в этом необходимости.