Меню

Установка и настройка прокси сервера debian



Установка и настройка прокси-сервера 3proxy на Debian/Ubuntu

Введение

В этой статье мы расскажем, как установить и настроить прокси-сервер.

Прокси-сервер (от англ. proxy — «представитель, уполномоченный»)
выступает в роли посредника в коммуникациях между вашим ПК/мобильным и Интернетом.

Причин использовать его может быть множество, включая:

  • Обход ограничений доступа к определенным веб-ресурсам установленным администратором локальной сети.
  • Обход региональных ограничений доступа у определённых веб-ресурсов.
  • Анонимный доступ к веб-ресурсам путём сокрытия реального IP-адреса.

Среди всего многообразия прокси-серверов остановим свой выбор на открытом бесплатном кроссплатформенном сервере от Владимира ‘3APA3A’ Дубровина — 3proxy опубликованный под BSD-подобной лицензией. Текст лицензии.

Среди альтернатив можно выделить Squid, но он:

  • Сложен в настройках.
  • Потребляет больше ресурсов.
  • Не скомпилирован с поддержкой SSL по умолчанию и сложен для компиляции.

Также внимание заслуживает tinyproxy.

Преимущества и недостатки:

Он включает в себя:

  • HTTP прокси с поддержкой HTTPS и FTP.
  • SOCKSv4/SOCKSv4.5/SOCKSv5 прокси.
  • POP3 прокси.
  • SMTP прокси.
  • AIM/ICQ прокси.
  • MSN messenger / Live messenger прокси.
  • FTP прокси.
  • Кэширующий DNS прокси.
  • TCP и UDP портмапперы.

Так же доступны дополнительные возможности, такие как:

  • Управление доступом.
  • Ограничение ширины потребляемого канала.
  • Ограничение трафика на день, неделю и месяц.
  • Перенаправление соединений.
  • Построение цепочек соединений.
  • Ротация лог-файлов.
  • Ведение журналов через ODBC и syslog.
  • Поддержка IPv6.
  • и ряд других.

К недостаткам можно отнести:

  • Отсутствие поддержки кеширования веб-страниц.
  • Отсутствие в официальных репозиториях некоторых linux-дистрибутивов (включая Debian и Ubuntu), но в репозиториях Gentoo, RedHat, Alt Linux присутствует.

Технические требования

  • Операционная система Debian GNU/Linux (версии с 7 по 9) или Ubuntu (версии с 14.04 по 17.04) любой разрядности (32/64 бита).
  • Пользователь с привилегиями root (как вариант доступ через sudo).

Шаг 1. Подготавливаем инструментарий

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

Но перед этим установим всё необходимое для дальнейшей работы.

Шаг 2. Скачиваем и распаковываем исходники

Последняя версия 0.8.10 (на момент написания руководства).
Узнать последнюю версию можно на официальном сайте, при необходимости просто замените цифры на необходимые в следующих парах команд:

Шаг 3. Компилируем

Шаг 4. Устанавливаем

Копируем получившийся бинарный файл:

Создадим отдельного системного пользователя proxy3 от имени которого и будет работать сервер:

Узнаём UID и GID пользователя командой:

В ответ, например, получим:

Создаём файл настроек:

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Комментарии начинаются со знака # и допустимы только с начала строки.
Рекомендуется вообще удалить комментарии для более стабильной работы 3proxy.
Рекомендуется также использовать другой порт вместо стандартного 3128 для прокси серверов, лучше всего из диапазона 49152—65535.

Другие примеры настроек можно посмотреть командами:

или же в одном из следующих руководств на которые ссылается официальный сайт:

Вот пример конфигурации без ведения логов:

Создаём файл с пользователями и паролями:

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Где логин: username и пароль: strongpassword следует изменить на свои.

Каждый новый пользователь указывается с новой строки.

Выставляем права доступа к файлам прокси-сервера:

Создаём папку для ведения логов и назначаем права на неё:

В случае наличия IPv6 на сервере,
рекомендуем запускать прокси со следующей строкой в /etc/3proxy/3proxy.cfg:

для сервера с IPv4:95.213.255.16 и IPv6:2002:5fd5:ff010::1 у вас же они будут иные.
В таком случае будет поддержка IPv6 на выходе с прокси,
например https://yandex.ru/internet отобразит оба адреса.

Шаг 5. Добавляем в автозагрузку и запускаем прокси-сервер

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Ещё один вариант скрипта инициализации:

Делаем файл исполняемым:

Добавляем в автозагрузку:

В консоли мы увидим сообщение:

Проблемы с запуском чаще всего связаны с файлом /etc/3proxy/3proxy.cfg
в т.ч. к последней строке файла. При возникновении ошибки обычно указан порядковый номер проблемной строки.

Также мы увидим его в списке запущенных процессов в ответе на команду:

Шаг 6. Открываем порт

Открываем порт (3128/tcp) на сервере.
Либо указываем свой, который указан в файле /etc/3proxy/3proxy.cfg

Читайте также:  Настройка линукс ubuntu server

При использовании iptables:

Шаг 7. Настраиваем окружение

Множество программ (включая веб-браузеры) поддерживают работу через прокси по умолчанию. Интерфейс настроек у каждой свой.

Если же программа не поддерживает, то возможна настройка
работы всех соединений через прокси в параметрах используемой вами операционной системы.

Либо использование программы проксификатора.
Например такой как:

Настройки для браузера Google Chrome:
Для подключения к сети Google Chrome использует системные настройки прокси-сервера.
В случае Microsoft Windows это настройки можно также найти в Internet Explorer / MS Edge.

Форма с предложением ввода логина и пароля (username:strongpassword) появится, после первой попытки открытия любой веб-страницы.

Затем любые сервисы по проверки IP-адреса,
например, такие как:

сообщат IP-адрес вашего Vscale-сервера вместо текущего.

Шаг 8. Удаляем временные файлы

Шаг 9. (ОПЦИОНАЛЬНО) Удаляем 3Proxy

Так как установка осуществлялась из исходников, то пакетный менеджер операционной системы бесполезен. Для удаления выполните следующие команды:

Заключение

Мы рассмотрели установку и базовую настройку 3proxy. Безусловно у данного прокси-сервера есть еще множество настроек, которые мы не затронули, в том числе настройку SOCKS-прокси, построение цепочек соединений, управление доступом, ограничение ширины потребляемого канала, ограничение трафика по времени, но это тема уже для отдельного руководства.

Таким образом после выполненных действий вы получаете свой собственный прокси-сервер, который более безопасен для вас, так как ваш трафик заведомо не будет перехвачен и проанализирован третьими лицами, от чего вы не застрахованы при использовании сторонних решений. Хотя с этой точки зрения более эффективна настройка VPN-туннеля с шифрованием.

3proxy может выступать в роли высоко-анонимного прокси-сервера. Признаком использования подобного может быть лишь принадлежность выходного IP-адреса сервера к пулу адресов закреплённых за хостинговой компанией при просмотре WHOIS-данных и PTR-записи. В целом он хорош тем, что является маленьким и простым, но в то же время функциональным.

Комментарии

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

Danil Walk, в руководстве есть не меньше чем 3 ссылки на разные документации по данному прокси-серверу но расскажу как и SOCKS поднять. Документация в целом достаточно полная, по непонятным вопросом всегда можно вежливо спросить ведущего разработчика по email, или на том же Тостере как люди так и разработчик активно отвечают. Он кстати просматривал данную статью. Дал несколько советов по конфигам, совет по IPv6. Заметил что в шаге 5 не самый удачный пример скрипта-инициализации, но рабочий.

Должен предупредить: на данный момент обходить блокировки РКН с серверов расположенных на территории РФ — не лучшая идея. Особенности блокировок на стороне дата-центров я намеренно обсуждать здесь не хочу. Но сам лично наблюдал блокировки/заглушки web-страниц с серверов расположенных в МСК, СПБ. При подробном разборе ситуации, просмотре логов, трассировок и т.д. выяснялось что зачастую причиной были блокировки на стороне крупных транзитных операторов связи таких как ТрансТелеКом. На блокировки на стороне ТТК натыкаются порой и жители стран СНГ, некоторые хоть и имеют свои национальные аналоги РКН, но там блокировки именно российские проскакивают.

SOCKS-прокси

SOCKS-прокси имеют несколько версий протокола (SOCKSv4/SOCKSv4.5/SOCKSv5) и ряд особенностей.
Подробнее описано тут — https://3proxy.ru/howtor.asp

Например SOCKSv4 не поддерживает IPv6 на уровне протокола, в SOCKSv5 есть поддержка IPv6 с помощью отдельного вида запроса, который должен быть реализован в клиентском приложении или соксификаторе. Авторизации по паролю поддерживаются в SOCKS так же как и через HTTP-прокси. SOCKSv5 имеет поддержку UDP.

В шаге-4 в конфиге /etc/3proxy/3proxy.cfg
вместо последней строчки, а можно одновременную работы с HTTP-прокси настроить — тогда просто добавить в конец строку:

Параметр (-p1080) это номер порта. Можно другой указать, но этот стандартный.

В шаге-6 при использовании Uncomplicated Firewall (UFW):

Источник

Быстрая установка прокси-сервера 3proxy в Ubuntu и Debian

Прокси-сервер 3proxy является одним из самых настраиваемых прокси серверов. Кроссплатформенность 3proxy делает его популярным не только на серверах Linux, но и на серверах Windows Server.

3proxy поддерживает такие протоколы как: SOCKS5 (4), HTTP прокси с поддержкой HTTPS и FTP, AIM/ICQ, прокси сервера на MSN messenger / Live messenger, FTP, кэширующий DNS прокси, TCP и UDP портмапперы (tcppm, udppm).

Читайте также:  Настройка серверов linux ftp настройки

Кроме того, поддерживает комбинированный прокси сервер, который позволяет настроить управление доступом, шириной канала, ограничением объема трафика, перенаправлением и т.д.

Автоматическая установка прокси-сервера 3proxy с помощью скрипта в Ubuntu и Debian

Редактируем файл авторизации. Меняем имя пользователя и пароль:

Сохраняем изменения и закрываем редактор: CTRL+O, CTRL+X.

Ознакомимся и если надо, то отредактируем файл конфигурации прокси-сервера:

Типовая конфигурация доступна по ссылке: 3proxy.cfg

По умолчанию для протокола socks (5) используется порт 8088, а для http протокола прокси-сервера порт 9999.

За тип авторизации отвечает строка с названием auth strong cache.

Работают следующие типы авторизации:

  • auth strong cache – по имени пользователя и паролю
  • auth iponly — авторизация по IP-адресу.

Где 192.168.0.1 IP-адрес пользователя.

  • auth none – отсутствие авторизации

Можно добавить еще одну строку:

  • maxconn 32 – максимально разрешённое число одновременных подключений.

Как фильтровать только определенные адреса в 3proxy

Можно разрешить фильтрацию только для определённых адресов, а все остальные заблокировать.

Подобные правила работают только при наличии авторизации, без авторизации будет разрешена фильтрация всего трафика.

Правила по доменам корректно работают на http протоколе прокси-сервера.

Источник

PlugFox / .proxyauth

## addusers in this format:
#user:CL:password
##see for documentation: http://www.3proxy.ru/howtoe.asp#USERS
#
# Username
MyUser:CL:MyPassword
# Запускаем сервер от пользователя proxy3
# (возможно в вашей ОС uid и gid пользователя proxy3
# будут другими. Для их определения воспользуйтесь командой id proxy3)
setgid 112
setuid 107
#
# Пропишите правильные серверы имен посмотрев их
# на своем сервере в /etc/resolv.conf
nserver 8.8.8.8
nserver 77.88.8.8
#
# Оставьте размер кэша для запросов DNS по умолчанию
nscache 65536
#
# Равно как и таймауты
timeouts 1 5 30 60 180 1800 15 60
#
# Если несколько IP на одном сервере, указываем тот,
# через который ходить во внешний мир.
# Иначе эту строку игнорируем
# external
# Тоже самое, только указываем IP, который надо слушать
# Если проигнорировать, то прокси слушает все адреса на сервере
# internal
#
# Указываем на расположение файла с пользователями и паролями
users $/etc/3proxy/.proxyauth
#
# укажите режим запуска как deamon
daemon
#
# путь к логам и формат лога, к имени лога будет добавляться дата создания
log /var/log/3proxy/3proxy.log D
logformat » — +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T «
#
# Включаем авторизацию по логинам и паролям
auth cache strong
#
# Конфигурация http(s) proxy
# Запускаем анонимный (-a) HTTP-proxy на порту (-p) 3128 и
# c отключенной NTLM-авторизацией (-n)
proxy -n -p3128 -a
socks -p1080

В этой статье мы расскажем, как установить и настроить прокси-сервер.

Прокси-сервер (от англ. proxy — «представитель, уполномоченный») выступает в роли посредника в коммуникациях между вашим ПК/мобильным и Интернетом.

Причин использовать его может быть множество, включая:

  • Обход ограничений доступа к определенным веб-ресурсам установленным администратором локальной сети.
  • Обход региональных ограничений доступа у определённых веб-ресурсов.
  • Анонимный доступ к веб-ресурсам путём сокрытия реального IP-адреса.

Среди всего многообразия прокси-серверов остановим свой выбор на открытом бесплатном кроссплатформенном сервере от Владимира ‘3APA3A’ Дубровина — 3proxy опубликованный под BSD-подобной лицензией. Текст лицензии.

Среди альтернатив можно выделить Squid, но он:

  • Сложен в настройках.
  • Потребляет больше ресурсов.
  • Не скомпилирован с поддержкой SSL по умолчанию и сложен для компиляции.

Также внимание заслуживает tinyproxy.

Преимущества и недостатки:

Он включает в себя:

  • HTTP прокси с поддержкой HTTPS и FTP.
  • SOCKSv4/SOCKSv4.5/SOCKSv5 прокси.
  • POP3 прокси.
  • SMTP прокси.
  • AIM/ICQ прокси.
  • MSN messenger / Live messenger прокси.
  • FTP прокси.
  • Кэширующий DNS прокси.
  • TCP и UDP портмапперы.

Так же доступны дополнительные возможности, такие как:

  • Управление доступом.
  • Ограничение ширины потребляемого канала.
  • Ограничение трафика на день, неделю и месяц.
  • Перенаправление соединений.
  • Построение цепочек соединений.
  • Ротация лог-файлов.
  • Ведение журналов через ODBC и syslog.
  • Поддержка IPv6.
  • и ряд других.

К недостаткам можно отнести:

  • Отсутствие поддержки кеширования веб-страниц.
  • Отсутствие в официальных репозиториях некоторых linux-дистрибутивов (включая Debian и Ubuntu), но в репозиториях Gentoo, RedHat, Alt Linux присутствует.
  • Операционная система Debian GNU/Linux (версии с 7 по 9) или Ubuntu (версии с 14.04 по 17.04) любой разрядности (32/64 бита).
  • Пользователь с привилегиями root (как вариант доступ через sudo).

Шаг 1. Подготавливаем инструментарий

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

Но перед этим установим всё необходимое для дальнейшей работы.

Читайте также:  Server 2012 настройка службы времени

Шаг 2. Скачиваем и распаковываем исходники

Последняя версия 0.8.10 (на момент написания руководства). Узнать последнюю версию можно на официальном сайте, при необходимости просто замените цифры на необходимые в следующих парах команд:

Шаг 3. Компилируем

Шаг 4. Устанавливаем

Копируем получившийся бинарный файл:

Создадим отдельного системного пользователя proxy3 от имени которого и будет работать сервер:

Узнаём UID и GID пользователя командой:

В ответ, например, получим:

Создаём файл настроек:

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Комментарии начинаются со знака # и допустимы только с начала строки. Рекомендуется вообще удалить комментарии для более стабильной работы 3proxy. Рекомендуется также использовать другой порт вместо стандартного 3128 для прокси серверов, лучше всего из диапазона 49152—65535.

Другие примеры настроек можно посмотреть командами:

или же в одном из следующих руководств на которые ссылается официальный сайт:

Вот пример конфигурации без ведения логов:

Создаём файл с пользователями и паролями:

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Где логин: username и пароль: strongpassword следует изменить на свои.

Каждый новый пользователь указывается с новой строки.

Выставляем права доступа к файлам прокси-сервера:

Создаём папку для ведения логов и назначаем права на неё:

В случае наличия IPv6 на сервере, рекомендуем запускать прокси со следующей строкой в /etc/3proxy/3proxy.cfg:

для сервера с IPv4:95.213.255.16 и IPv6:2002:5fd5:ff010::1 у вас же они будут иные. В таком случае будет поддержка IPv6 на выходе с прокси, например https://yandex.ru/internet отобразит оба адреса.

Шаг 5. Добавляем в автозагрузку и запускаем прокси-сервер

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Ещё один вариант скрипта инициализации:

Делаем файл исполняемым:

Добавляем в автозагрузку:

В консоли мы увидим сообщение:

Проблемы с запуском чаще всего связаны с файлом /etc/3proxy/3proxy.cfg в т.ч. к последней строке файла. При возникновении ошибки обычно указан порядковый номер проблемной строки.

Также мы увидим его в списке запущенных процессов в ответе на команду:

Шаг 6. Открываем порт

Открываем порт (3128/tcp) на сервере. Либо указываем свой, который указан в файле /etc/3proxy/3proxy.cfg

При использовании iptables:

Шаг 7. Настраиваем окружение

Множество программ (включая веб-браузеры) поддерживают работу через прокси по умолчанию. Интерфейс настроек у каждой свой.

Если же программа не поддерживает, то возможна настройка работы всех соединений через прокси в параметрах используемой вами операционной системы.

Либо использование программы проксификатора. Например такой как:

Настройки для браузера Google Chrome: Для подключения к сети Google Chrome использует системные настройки прокси-сервера. В случае Microsoft Windows это настройки можно также найти в Internet Explorer / MS Edge.

Форма с предложением ввода логина и пароля (username:strongpassword) появится, после первой попытки открытия любой веб-страницы.

Затем любые сервисы по проверки IP-адреса, например, такие как:

сообщат IP-адрес вашего Vscale-сервера вместо текущего.

Шаг 8. Удаляем временные файлы

Шаг 9. (ОПЦИОНАЛЬНО) Удаляем 3Proxy

Так как установка осуществлялась из исходников, то пакетный менеджер операционной системы бесполезен. Для удаления выполните следующие команды:

Мы рассмотрели установку и базовую настройку 3proxy. Безусловно у данного прокси-сервера есть еще множество настроек, которые мы не затронули, в том числе настройку SOCKS-прокси, построение цепочек соединений, управление доступом, ограничение ширины потребляемого канала, ограничение трафика по времени, но это тема уже для отдельного руководства.

Таким образом после выполненных действий вы получаете свой собственный прокси-сервер, который более безопасен для вас, так как ваш трафик заведомо не будет перехвачен и проанализирован третьими лицами, от чего вы не застрахованы при использовании сторонних решений. Хотя с этой точки зрения более эффективна настройка VPN-туннеля с шифрованием.

3proxy может выступать в роли высоко-анонимного прокси-сервера. Признаком использования подобного может быть лишь принадлежность выходного IP-адреса сервера к пулу адресов закреплённых за хостинговой компанией при просмотре WHOIS-данных и PTR-записи. В целом он хорош тем, что является маленьким и простым, но в то же время функциональным.

Источник

Adblock
detector