Proxy server ubontu dante

Материал из wiki.ramba-art.ru
Перейти к навигации Перейти к поиску

настроить прокси-сервер Dante для частных подключений в Ubuntu


Dante — это прокси-сервер SOCKS с открытым исходным кодом. SOCKS — менее широко используемый протокол, но он более эффективен для некоторых одноранговых приложений и предпочтительнее HTTP для некоторых видов трафика. Начните с выполнения следующих команд от имени пользователя без полномочий root, чтобы обновить списки пакетов и установить Dante:

   sudo apt update
   sudo apt install dante-server

Dante также автоматически настроит фоновую службу и запустится после установки. Однако он предназначен для корректного выхода с сообщением об ошибке при первом запуске, поскольку он поставляется с отключенными всеми функциями. Проверить это можно с помощью systemctl команды:

   systemctl status danted.service

ВЫВОД будет :

   Output
   ● danted.service - SOCKS (v4 and v5) proxy daemon (danted)
        Loaded: loaded (/lib/systemd/system/danted.service; enabled; vendor preset: enabled)
        Active: failed (Result: exit-code) since Wed 2021-12-15 21:48:22 UTC; 1min 45s ago
          Docs: man:danted(8)
                man:danted.conf(5)
      Main PID: 14496 (code=exited, status=1/FAILURE)
   Dec 15 21:48:21 proxies systemd[1]: Starting SOCKS (v4 and v5) proxy daemon (danted)...
   Dec 15 21:48:22 proxies systemd[1]: Started SOCKS (v4 and v5) proxy daemon (danted).
   Dec 15 21:48:22 proxies danted[14496]: Dec 15 21:48:22 (1639604902.102601) danted[14496]: warning: checkconfig(): no socks authentication methods enabled.  This means all socks requests will be blocked after negotiation.                 
   Perhaps this is not intended?

Чтобы успешно запустить службы Dante, вам необходимо включить их в файле конфигурации.

Конфигурационный файл Dante по умолчанию предоставляется в формате /etc/danted.conf. Если вы откроете этот файл с помощью nano вашего любимого текстового редактора, вы увидите длинный список параметров конфигурации, все из которых отключены. Вы можете попробовать перемещаться по этому файлу и включать некоторые параметры построчно, но на практике будет более эффективно и читабельно удалить этот файл и заменить его с нуля. Не беспокойтесь об этом. Вы всегда можете просмотреть конфигурацию Dante по умолчанию, перейдя к его онлайн-руководству , и вы даже можете повторно загрузить пакет вручную из списка пакетов Ubuntu , чтобы повторно получить стандартный файл конфигурации, если захотите. А пока удалите его:

   sudo rm /etc/danted.conf

Теперь вы можете заменить его на что-то более лаконичное. Открытие файла в текстовом редакторе автоматически создаст файл, если он не существует, поэтому с помощью nano вашего любимого текстового редактора вы должны получить пустой файл конфигурации:

   sudo nano /etc/danted.conf

Добавьте следующее содержимое:

   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 }

Теперь у вас есть пригодная для использования конфигурация сервера SOCKS, работающая на порту 1080, что является общепринятым соглашением для SOCKS. Вы также можете разбить остальную часть этого файла конфигурации построчно:

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