Proxy server ubontu dante: различия между версиями

6547 байт добавлено ,  6 ноября 2023
нет описания правки
Нет описания правки
Нет описания правки
 
(не показаны 2 промежуточные версии этого же участника)
Строка 2: Строка 2:
<br>
<br>


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


     sudo apt update
     sudo apt update
Строка 61: Строка 61:
* '''internal''' сведения о соединении '''указывают порт''', на котором '''работает служба, и какие IP-адреса''' могут подключаться.
* '''internal''' сведения о соединении '''указывают порт''', на котором '''работает служба, и какие IP-адреса''' могут подключаться.
* '''externalс''' ведения о соединении указывают сетевой интерфейс, используемый для исходящих подключений, '''eth0''' по умолчанию на большинстве серверов.
* '''externalс''' ведения о соединении указывают сетевой интерфейс, используемый для исходящих подключений, '''eth0''' по умолчанию на большинстве серверов.
Остальные детали конфигурации касаются методов аутентификации, которые обсуждаются в следующем разделе. Не забудьте '''открыть порт 1080''' в брандмауэре, если вы используете '''ufw''':
    sudo ufw allow 1080
На этом этапе вы можете перезапустить Dante и подключиться к нему, но у вас будет сервер SOCKS, открытый для всего мира, что вам, вероятно, не нужно, поэтому сначала вы узнаете, как его защитить.
Шаг 2 — Обеспечение безопасности Данте
Если вы до сих пор следовали этому руководству, Dante будет использовать обычные учетные записи пользователей Linux для аутентификации. Это полезно, но пароль, используемый для этого соединения, будет отправлен в виде обычного текста, поэтому важно создать выделенного пользователя SOCKS, у которого не будет никаких других привилегий для входа. Для этого вы будете использовать useraddфлаги, которые не будут назначать пользователю оболочку входа, а затем установите пароль:
    sudo useradd -r -s /bin/false your_dante_user
    sudo passwd your_dante_user
Вам также следует избегать входа в эту учетную запись через незащищенное беспроводное соединение или слишком широкого общего доступа к серверу. В противном случае злоумышленники могут и будут предпринимать неоднократные попытки войти в систему.
Dante поддерживает другие методы аутентификации, но многие клиенты (например, приложения), которые будут подключаться к прокси-серверам SOCKS, поддерживают только базовую аутентификацию по имени пользователя и паролю, поэтому вы можете оставить эту часть как есть. В качестве альтернативы вы можете ограничить доступ только к определенным IP-адресам. Это не самый сложный вариант, но, учитывая сочетание используемых здесь технологий, он вполне разумен. Возможно, вы уже узнали, как ограничить доступ к определенным IP-адресам, '''ufw''' из наших обязательных руководств, но вы также можете сделать это непосредственно в Dante. Отредактируйте свой '''/etc/danted.conf''':
    sudo nano /etc/danted.conf
    …
    client pass {
        from: your_ip_address/0 to: 0.0.0.0/0
    }
Чтобы поддерживать несколько IP-адресов, вы можете использовать [https://www.digitalocean.com/community/tutorials/understanding-ip-addresses-subnets-and-cidr-notation-for-networking нотацию CIDR] или просто добавить еще один '''client pass {}''' блок конфигурации:
    client pass {
        from: your_ip_address/0 to: 0.0.0.0/0
    }<br>
    client pass {
        from: another_ip_address/0 to: 0.0.0.0/0
    }
После этого вы, наконец, можете перезапустить Dante с изменениями конфигурации.
    sudo systemctl restart danted.service
На этот раз, когда вы проверите статус службы, вы должны увидеть, что она работает без каких-либо ошибок:
    systemctl status danted.service
    Output
    ● danted.service - SOCKS (v4 and v5) proxy daemon (danted)
        Loaded: loaded (/lib/systemd/system/danted.service; enabled; vendor preset: enable>
        Active: active (running) since Thu 2021-12-16 18:06:26 UTC; 24h ago
На следующем шаге вы наконец подключитесь к своему прокси.
Шаг 3 — Подключение через Dante
Чтобы продемонстрировать свой сервер Dante, вы будете использовать программу командной строки под названием '''curl''', которая популярна для выполнения различных типов веб-запросов. В общем, если вы хотите проверить, должно ли данное соединение работать в браузере в идеальных обстоятельствах, вам всегда следует сначала протестировать его с помощью '''curl'''. Для этого вы будете использовать '''Curl''' на своем '''локальном компьютере — он установлен по умолчанию во всех современных средах Windows, Mac и Linux, поэтому вы можете открыть любую локальную оболочку для запуска этой команды:'''
    curl -v -x socks5://your_dante_user:your_dante_password@your_server_ip:1080 http://www.google.com/
    Output
    *  Trying 138.197.103.77...
    * TCP_NODELAY set
    * SOCKS5 communication to www.google.com:80
    * SOCKS5 connect to IPv4 142.250.189.228 (locally resolved)
    * SOCKS5 request granted.
    * Connected to 138.197.103.77 (138.197.103.77) port 1080 (#0)
    > GET / HTTP/1.1
    …
Учетные данные, которые вы использовали, '''curl''' теперь должны работать везде, где вы, возможно, захотите использовать новый прокси-сервер.
MediaWiki Appliance - Powered by TurnKey Linux