1 |
# mkdir /opt/ss5 |
1 |
# cd /opt/ss5 |
1.Скачиваем последние версии
1 |
# wget http://sourceforge.net/projects/ss5/files/ss5/3.8.9-8/ss5-3.8.9-8.src.rpm |
1 |
# wget http://sourceforge.net/projects/ss5/files/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz |
2.Устанавливаем необходимые зависимости
1 |
# yum install gcc automake autoconf libtool make pam-devel yum-utils |
Для Debian/Ubuntu зависимости
1 |
# apt-get install gcc make build-essential libpam0g-dev libssl-dev libldap2-dev openssl |
3.Проверяем все ли зависимости установлены
1 |
# yum-builddep ss5-3.8.9-8.src.rpm |
4.Распаковываем архив и собираем ss5-сервер с исходников
1 |
# tar xvfz ss5-3.8.9-8.tar.gz |
1 |
# cd ss5-3.8.9 |
1 |
# ./configure |
1 |
# make |
1 |
# make install |
1 |
# cd /etc/opt/ss5/ |
5.Делаем бекапы конфигов
1 |
# cp ss5.passwd ss5.passwd~ |
1 |
# cp ss5.conf ss5.conf~ |
6.Настройка основного конфигурационного файла ss5-сервера
1 |
# nano ss5.conf |
Рассмотрим различные варианты
1.Разрешить без аутентификации доступ к soscks-серверу в мир только со следующих адресов
1 2 3 |
auth 0.0.0.0/0 - - permit - 77.120.XXX.YYY/32 - 0.0.0.0/0 - - - - - permit - 159.224.ZZZ.WWW/32 - 0.0.0.0/0 - - - - - |
2.Разрешить без аутентификации доступ с socks-сервера в мир со всех адресов
1 2 |
auth 0.0.0.0/0 - - permit - 0.0.0.0/0 - 0.0.0.0/0 - - - - - |
3.Разрешить только с аутентификацией,например,пользователю user и паролем password доступ с socks-сервера в мир
1 2 |
auth 0.0.0.0/0 - u permit u 0.0.0.0/0 - 0.0.0.0/0 - - - - - |
При этом добавляем логин/пароль в файл ss5.passwd
1 |
# nano ss5.passwd |
1 |
username password |
7.Запуск ss5-сервера и проверка наличия запущенного процесса ss5
1 |
# ss5 -u root -b 0.0.0.0:1080 |
1 |
# netstat -nlpt | grep ss5 |
1 |
tcp 0 0 0.0.0.0:1080 0.0.0.0:* LISTEN 17936/ss5 |
1 |
# ps ax | grep ss5 | grep -v grep |
1 |
17936 ? S 0:00 ss5 -u root -b 0.0.0.0:1080 |
Мониторинг
1 |
# tail -f /var/log/ss5/ss5.log |
Настройка ротации лога
1 |
# cat /etc/logrotate.d/ss5 |
1 2 3 4 5 6 7 8 9 |
/var/log/ss5/ss5.log { daily rotate 3 dateext compress missingok notifempty copytruncate } |
Настройка iptables
1 |
# iptables -A INPUT -p tcp --dport 1080 -j socks |
1 |
# iptables -A socks -s 77.120.XXX.YYY -j ACCEPT |
1 |
# iptables -A socks -s 159.224.ZZZ.WWW -j ACCEPT |
1 |
# iptables -A socks -j LOG --log-prefix "input socks:" |
1 |
# iptables -A socks -j DROP |
1 |
# /etc/init.d/iptables save |
1 |
# /etc/init.d/iptables restart |
Источник:
http://www.linuxexpert.ro/Linux-Tutorials/setup-ss5-socks-proxy.html