Что такое 3proxy и зачем он может вам понадобиться
Как правило, прокси используют по одной из следующих причин:
- Необходимо скрыть настоящий IP и тем самым обеспечить собственную анонимность;
- Нужно «обойти» имеющиеся ограничения и получить доступ к ресурсу, использующему механизмы блокировки доступа по географическому принципу.
Один из самых простых способов достижения поставленной цели — настройка сервиса 3proxy.
Требования
Перед началом установки убедитесь, что у вас есть:
- Сервер, который будет работать как «выходная нода». Особой мощности не требуется, достаточно 1 ядра процессора, 5-10Гб дискового пространства и 1Гб оперативной памяти. Гораздо более важным в данном случае будет наличие высокоскоростного подключения к сети и не тарифицируемый по объему данных трафик;
- Не устаревшая операционная система (например, Ubuntu 20.04);
- Доступ к серверу с повышенными правами.
Установка и настройка
Процесс установки очень прост. Достаточно открыть SSH-терминал на сервере и выполнить однострочную команду:
wget https://github.com/z3APA3A/3proxy/releases/download/0.9.3/3proxy-0.9.3.x86_64.deb; dpkg -i 3proxy-0.9.3.x86_64.deb
Далее необходимо отредактировать файл настроек. Команда ниже добавит необходимые директивы для настройки SOCKS5-proxy:
cat <<EOF > /etc/3proxy/3proxy.cfg
nscache 65536
nserver <используемый_DNS-сервер>
config /conf/3proxy.cfg
monitor /conf/3proxy.cfg
log /logs/3proxy-%y%m%d.log D
rotate 60
counter /count/3proxy.3cf
users $/conf/passwd # в этом файле сохраняются proxy-аккаунты
include /conf/counters
include /conf/bandlimiters
auth strong
deny * * 127.0.0.1
allow * * * 80 HTTP
allow * * * 443 HTTPS
socks -n -p<прослушиваемый_3proxy_порт> -a
flush
allow
maxconn <допустимое_количество_одновременных_соединений>
EOF
Разрешите прохождение трафика на выбранный порт на стороне системного файрволла:
ufw allow <выбранный_порт>
Запустите службу и проверьте ее статус:
systemctl enable 3proxy && service 3proxy start && netstat -tlpn | grep prox
Пришло время добавить прокси-пользователей. Это не аккаунты на уровне ОС, для добавления нужно запустить скрипт, установленный вместе с прочими файлами 3proxy:
/etc/3proxy/conf/add3proxyuser.sh <логин> <пароль> <дневной_лимит_трафика_в_МБ> <ограничение_скорости_в_битах_в_секунду>
Последние два параметра опциональны, если их не указать, предоставляется доступ без ограничений.
Перезапустите службу
systemctl restart 3proxy
Проверка результата
Самый простой способ убедиться, что прокси действительно работает — выполнить запрос с вашего компьютера:
curl -I -x socks5://<пользователь>:<пароль>@<IP-адрес_сервера>:<порт_прокси> https://serverspace.ru | grep HTTP
Полученный «код 200» означает, что прокси работает нормально. Теперь вы можете использовать его в своем браузере или любой другой программе-клиенте.
В качестве заключения
В этой статье рассматривается, почему вам может понадобиться собственный прокси-сервер и как его быстро настроить на Ubuntu 20.04 LTS.