воскресенье, 17 октября 2021 г.

SSTP. Установка и запуск в Ubuntu 20.04

Добавляем ключ и репозиторий

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 61FF9694161CE595
sudo nano /etc/apt/sources.list.d/sstp-client.list
  deb http://ppa.launchpad.net/eivnaes/network-manager-sstp/ubuntu eoan main 
  deb-src http://ppa.launchpad.net/eivnaes/network-manager-sstp/ubuntu eoan main 
Ставим пакет sstp-client
sudo apt install sstp-client
При установке могут возникать ошибки
The following packages have unmet dependencies:
 sstp-client : Depends: libevent-2.1-6 (>= 2.1.8-stable) but it is not installable
Скачаем и установим нужный пакет
wget http://archive.ubuntu.com/ubuntu/pool/main/libe/libevent/libevent-2.1-6_2.1.8-stable-4build1_amd64.deb
sudo dpkg -i libevent-2.1-6_2.1.8-stable-4build1_amd64.deb
sudo apt install sstp-client
Запускаем для теста
sstpc --user user --password passwd --tls-ext servername noauth &
Проверим подключение
ip a | grep ppp
3: ppp0:  mtu 1350 qdisc fq_codel state UNKNOWN group default qlen 3
    link/ppp
    inet 10.0.0.121 peer 10.0.0.1/32 scope global ppp0
Теперь создадим сервис для автозапуска
sudo nano /etc/systemd/system/sstp.service

[Unit]
Description = sstp coonection
Wants=network-online.target
After=network-online.target

[Service]
RemainAfterExit=true
ExecStart=/usr/sbin/sstpc --user user --password pwd --tls-ext servername noauth
Type=simple
User=root
Group=root
Restart=on-failure
RestartSec=60s

[Install]
WantedBy=multi-user.target
Сконфигурируем systemclt для работы с новой службой
systemctl enable sstp.service
systemctl daemon-reload
Перезагружаемся, проверяем

Чтобы клиент SSTP увидел внутреннюю сеть сервера, пришлось добавить маршрут
ip route add 10.0.0.0/24 via 10.0.0.1
Можно добавить в службу две строчки в секцию [Service]
sudo nano /etc/systemd/system/sstp.service
ExecStartPost=/usr/bin/sleep 5
ExecStartPost=/usr/sbin/ip route add 10.0.0.0/24 via 10.0.0.1
Сконфигурируем systemclt для работы с новой службой
systemctl enable sstp.service
systemctl daemon-reload
Желающие спрятать пароль подключения к sstp-серверу могут использовать файл с настройками и переменные окружения описанные в секции [Service]
EnvironmentFile=-/etc/sstp.config
ExecStart=/usr/sbin/sstpc --user $USERNAME --password $PASSWORD --tls-ext $SERVERNAME noauth
Добавим возможность подключиться к серверу через доменное имя 4-го уровня через облако KeenDNS. Настройка через GUI возможна с прошивки 3.7. На версии 3.6.10 благополучно настраивается через cli, но с некоторыми артефактами в web-морде
ip http proxy server
  upstream http 10.0.0.130 666
  domain ndns
  allow public
  exit
  system configuration save

Комментариев нет :

Отправить комментарий