Как установить 3Proxy на Ubuntu

Скачать

wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz

Распаковать

tar xzf 0.9.3.tar.gz

Установить компилятор

sudo apt-get install make

sudo apt-get install gcc

Откомпилировать

cd ~/3proxy-0.9.3

sudo make -f Makefile.Linux

Скопировать откомпилированный файл в нужный каталог

sudo mkdir /etc/3proxy

cd ~/3proxy-0.9.3/bin

sudo cp 3proxy /usr/bin/

Создать административный логин

sudo adduser --system --no-create-home --disabled-login --group proxy3

id proxy3

Получится что-то вроде

uid=109(proxy3) gid=115(proxy3) groups=115(proxy3)

Создать файл настроек

sudo nano /etc/3proxy/3proxy.cfg

Заполнить его следующим кодом (в setgid и setuid поставить полученные только что значения)

# Запускаем сервер от пользователя proxy3
# (возможно в вашей ОС uid и gid пользователя proxy3
# будут другими. Для их определения воспользуйтесь командой id proxy3)
setgid 115
setuid 109
#
# Пропишите правильные серверы имен посмотрев их
# на своем сервере в /etc/resolv.conf
nserver 188.93.16.19
nserver 188.93.17.19
#
# Оставьте размер кэша для запросов 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

Создать файл с учетными записями 3Proxy

sudo nano /etc/3proxy/.proxyauth

Заполнить пользователями

## addusers in this format:
#user:CL:password
##see for documentation: http://www.3proxy.ru/howtoe.asp#USERS
username:CL:strongpassword
abc:CL:mysecretpassword

Поддерживаются следующие типы паролей:

CL – в открытом виде

CR – в формате MD5

NT – пароль в формате NT в шестнадцатеричной кодировке

Дать права на папки

sudo chown proxy3:proxy3 -R /etc/3proxy

sudo chown proxy3:proxy3 /usr/bin/3proxy

sudo chmod 444 /etc/3proxy/3proxy.cfg

sudo chmod 400 /etc/3proxy/.proxyauth

Настроить каталог логирования

sudo mkdir /var/log/3proxy

sudo chown proxy3:proxy3 /var/log/3proxy

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

sudo nano/etc/systemd/system/3proxy.service

Вставить следующий код

[Unit]
Description=3proxy Proxy Server
After=network.target


[Service]
Type=simple
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg
ExecStop=/bin/kill `/usr/bin/pgrep -u proxy3`
RemainAfterExit=yes
Restart=on-failure

[Install]
WantedBy=multi-user.target

Обновить конфигурацию сервисов

sudo systemctl daemon-reload

Добавить в автозагрузку

sudo systemctl enable 3proxy

Запустить сервис

sudo systemctl start 3proxy

Проверить статус

systemctl status 3proxy.service

Проверить наличие процесса

ps -ela | grep "3proxy"

Открыть порт

sudo iptables -I INPUT -p tcp -m tcp --dport 3128 -j ACCEPT

Добавить комментарий