Установка и настройка Dante

1. Установка

Добавляем репозиторий (тут и далее все действия от root, либо подставляйте sudo перед командой):
yum install http://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm

Устанавливаем пакет

yum --enablerepo=gf-plus install dante-server

Создаём каталог для pid-файла
mkdir /var/run/sockd

Бэкапим стандартный конфиг
mv /etc/sockd.conf /etc/sockd.conf.orig

2. Настройка конфига

Конфиг для работы на порту 443 (стандартный порт для HTTPS). Это подойдёт вам, если на этом же сервере у вас не работает какая-нибудь другая программа на этом же порту (например, web-сервер Apache или Nginx или любой другой).
nano /etc/sockd.conf

user.privileged: root
user.unprivileged: nobody

# The listening network interface or address.
internal: 0.0.0.0 port=443
#internal: 0.0.0.0 port=1080 # можно указать несколько портов, по умолчанию 1080

# The proxying network interface or address.
external: eth0

logoutput: syslog stdout /var/log/sockd.log
errorlog: /var/log/sockd_err.log
# socks-rules determine what is proxied through the external interface.
# The default of "none" permits anonymous access.
socksmethod: username

# client-rules determine who can connect to the internal interface.
# The default of "none" permits anonymous access.
clientmethod: none

client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}

socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}

Этот конфиг делает так, что клиенты смогут подключаться к вашему прокси по имени и паролю пользователей (активных) вашего сервера. Т.е. нужно завести отдельных пользователей, которые собой будут являть данные для подключения к прокси.

3. Добавляем пользователей

Добавляем пользователей аккуратно, чтобы им не было разрешено ничего лишнего на сервере (например, подключаться по SSH) :
useradd --shell /usr/sbin/nologin proxyuser
passwd proxyuser

Так можно завести общего пользователя (в данном случае логин: proxyuser), данные которого можно использовать самому и передать близким людям, которым можно доверить это навсегда. Для друзей лучше заводить отдельных пользователей аналогичным образом. В будущем, если нужно будет отлучить пользователя от доступа к прокси, достаточно будет заблокировать пользователя на сервере.
Можно задать пароль пользователю со специальным ключом для автоматической деактивации пользователя по прошествии заданного времени (демо-режим своеобразный настроить):
passwd --inactive 10 testuser

А так можно заблокировать определённого пользователя:
passwd --lock testuser

У команды создания паролей много разных полезных опций.
Если не потребуется отслеживать частоту подключений пользователей, то в конфиге можно заменить строки:
log: connect disconnect error

На
log: error

В этом случае в лог /var/log/sockd.log будет складываться меньше записей.

4. Запуск прокси-сервера

Запуск и управление производится стандартным образом с помощью systemd. Запуск:
systemctl start sockd.service

Добавление в автозапуск (на случай перезагрузки сервера):
systemctl enable sockd.service

Перезапуск:
systemctl restart sockd.service

5. Проверка работы

Для начала можно проверить доступность вашего прокси-сервера с другого компьютера так (вместо PASS и SERVER_IP подставить ваши значения):
curl -v -x socks5://proxyuser:PASS@SERVER_IP:443 https://ya.ru

Если тут соединение удалось, значит и в других программах работать будет. Вот, например, можно сделать ссылку для автоматической настройки прокси в Telegram: https://t.me/socks?server=SERVER_IP&port=443&user=proxyuser&pass=PASS (а если домен t.me у вашего провайдера забанен, то можно попробовать http://t-do.ru/socks?server=SERVER_IP&port=443&user=proxyuser&pass=PASS)
Либо тоже самое набрать вручную в настройках.

Тэги: , , ,

Вы должны залогиниттся ,чтобы оставить комментарий.