Linux
August 30

Делаем свой SOCKS5-прокси. Dante-proxy на Ubuntu

Это простой и быстрый гайд по созданию собственного SOCKS5-прокси. Мы будем использовать Ubuntu и Dante-server.

Dante-server - это продукт, разработанный компанией Inferno Nettverk A/S., который предназначен для создания собственного SOCKS-прокси. С помощью него можно очень легко и быстро запустить собственный прокси-сервер.

Здесь я не буду рассказывать о том, как арендовать и настроить свой VPS. Мы сразу перейдем к установке и настройке Dante-server.

Подключаемся к серверу:
ssh username@IP

Обновляем список пакетов и ставим dante-server:
sudo apt update && sudo apt install dante-server

Далее удаляем конфигурационный файл /etc/danted.conf, т.к. гораздо проще будет создать свой собственный конфиг:
sudo rm /etc/danted.conf

И создаем новый:
sudo vim /etc/danted.conf

В него записываем следующие данные (замените eth0 на свой сетевой интерфейс):

logoutput: syslog
user.privileged: root
user.unprivileged: nobody

# The listening network interface or address.
internal: 0.0.0.0 port=1080

# The proxying network interface or address.
external: eth0

# socks-rules determine what is proxied through the external interface.
socksmethod: username

# client-rules determine who can connect to the internal interface.
clientmethod: none

client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

Подробнее разберем конфиг:

  • logoutput определяет, как Dante будет регистрировать подключения (в данном случае это происходит с помощью обычного системного лога).
  • user.privived предоставляет серверу root-права для проверки разрешений
  • user.uncitationd блокирует работу сервера в качестве непривилегированного пользователя (так как в этом нет необходимости, если нет более детализированных разрешений).
  • internal определяет порт, на котором запущен сервис, и IP-адреса, к которым можно подключиться.
  • external определяет сетевой интерфейс для исходящих подключений.

Далее создаем нового пользователя и задаем ему пароль:
sudo useradd -r -s /bin/false dante
sudo passwd dante

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

Запускем службу dante и проверяем статус:
sudo systemctl start danted
sudo systemctl status danted.service

Теперь попробуем подключиться. Для этого я воспользуюсь веб-браузером Firefox и расширением FoxyProxy. Создаю новую настройку для FoxyProxy:

И подключаюсь:

Далее проверяем IP:

Отлично, прокси работает. Вот так просто можно создать собственный прокси и использовать его. Может быть полезно, если VPN заблокировали в вашей стране и вам срочно нужно обойти блокировку, не прибегая к альтернативным протоколам и фрэймворкам. SOCKS5 в России пока что не заблокировали...

Для создания статьи использовался следующий материал:
Как настроить прокси-сервер Dante | 8HOST.COM


Мой Telegram

Мой GitHub

Поддержать автора донатом