3proxy - быстрый прокси за несколько минут

Версия для печатиОтправить другуPDF version

Возникла как-то необходимость в прокси-сервере. Альтернатива, в виде бесплатных открытых прокси, либо использования универсального комбайна в виде SQUID не устраивала. Решил попробовать 3proxy, который довольно компактен и нетребователен к  ресурсам. Среди возможностей 3proxy:

  • HTTP(S) proxy
  • FTP over HTTP proxy
  • SOCKS4/5 proxy
  • POP3 proxy
  • TCP & UDP mapping портов
  • ACL к различным службам и адресам
  • Ограничение пропускной способности канала каждого пользователя
  • Ограничение обьема загруженного трафика пользователя на день, неделю и месяц
  • Ведение журналов через ODBC, syslog и т.д
  • Авторизация пользователей ко всем proxy службам по имени и паролю или по IP

К минусам 3proxy весьма условно можно отнести отсутствие кеширования загруженых страниц. Однако, стоит отметить, что при высокоскоростном доступе в сеть Интернет большая вероятность, что загрузка страницы из Сети будет быстрее, чем из кеша на жестком диске прокси-сервера.

Приступим к установке и настройке. Установку выполним из системы портов:

cd /usr/ports/net/3proxy
make install clean && rehash

После установки отредактируем файл конфигурации /usr/local/etc/3proxy.cfg. Файл конфигурации детально прокомементирован, проблем с настройкой не должно возникнуть. В моем частном случае, получаем следующий файл конфигурации:

#!/usr/local/bin/3proxy

# Указываем используемые DNS-сервера
nserver 8.8.8.8
nserver 8.8.4.4

# Использование кеширования DNS-запросов  для оптимизации скорости, траффика и пропускной способности
nscache 65536

timeouts 1 5 30 60 180 1800 15 60

# Список пользователей в формате username:CL:password
users username:CL:password

# Запускаем 3proxy как демон
daemon

# Включаем логирование
log /var/log/3proxy.log D

# Формат записи логов
logformat "G%d-%m-%Y %H:%M:%S | %U | %C | %R:%r | %O | %I | %n"

# Архивируем логи с помощью gzip
archiver gz /usr/bin/gzip %F

# Включаем ротацию логов. Оставляем только последние 7 файлов
rotate 7

# Разрешаем авторизацию по логину/паролю
auth strong

# Интерфейс для исходящих подключений
external 10.158.61.230

# Интерфейс, на котором будем ожидать запросы от клиентов
internal 192.168.1.1

# Запускаем прокси на порту 6655
proxy -n -p6655

# Запуск от пользователя nobody
setgid 65534
setuid 65534

В конфигурационный файл можно добавить еще много возможностей, мною, по сути, создан базовый конфиг.

В целях безопасности, поскольку в файле конфигурации хранятся логины/пароли в открытом виде, ограничиваем права доступа к файлу:

chmod 600 /usr/local/etc/3proxy.cfg

Добавим в rc.conf запись о запуске 3proxy:

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

Запускаем 3proxy:

sh /usr/local/etc/rc.d/3proxy start

Прокси-сервер 3proxy успешно запустился и "слушает" запросы на порту 6655 (порт изменен на нестандартный в целях безопасности).

В свойствах браузера прописываем необходимые настройки и "бегаем" через свой собственный прокси...

Ваша оценка: Нет Средняя: 5 (1 голос)

Вставай, Україно!

Литература

Компьютер - это почти человек. Единственное серьезное различие - ему не свойственно сваливать свои ошибки на другой компьютер.