Для поднятия sstp сервера понадобятся VPS и доменное имя.
В роли сервера будет выступать Linux Debian 8 x64 и accel-ppp версии 1.12-072, клиентами будут Windows 7/2008r2 и Mikrotik.
Перед установкой aсcel, для доменного имени которое будет использоваться для подключений, надо в панели управления у регистратора DNS создать А-запись указывающую на текущий ip-адрес VPS. Устанавливаем accel по инструкции https://accel-ppp.org/wiki/doku.php?id= ... ion_debian
Приводим файл настроек к следующему виду:
Спойлер
Code: Select all
touch /etc/ppp/chap-secrets
Code: Select all
user1 * user1pass 192.168.11.2
user2 * user2pass 192.168.11.3
- Создаём корневой ключ:
Code: Select all
openssl genrsa -out sstp-ca.key
- Создаём корневой сертификат:
Code: Select all
openssl req -x509 -new -key sstp-ca.key -days 3650 -out sstp-ca.crt
- Создаём ключ для сервера sstp:
Code: Select all
openssl genrsa -out sstp-key.pem
- Формируем запрос на сертификат:
Code: Select all
openssl req -new -key sstp-key.pem -out sstp-csr.csr
- Подписываем запрос на сертификат корневым сертификатом:
Code: Select all
openssl x509 -req -in sstp-csr.csr -CA sstp-ca.crt -CAkey sstp-ca.key -CAcreateserial -out sstp-cert.pem -days 3650
Code: Select all
systemctl start accel-ppp
Запускаем консоль mmc.exe и добавляем оснастку «Сертификаты» управлять сертификатами для учётной записи компьютера.
После этого импортируем файлы sstp-ca.crt и sstp-cert.pem в «Доверенные корневые центры сертификации\Сертификаты»
Если с сертификатами всё хорошо, то оба сертификата будут действительными.
Далее создаём новое VPN-подключение к серверу по доменному имени, тип VPN SSTP, проверка подлинности MS-CHAP v2, логин\пароль из файла /etc/ppp/chap-secrets
Соединение с сервером можно устанавливать.
Чтобы заработал интернет через SSTP VPN надо разрешить пересылку пакетов между интерфейсами на сервере.
В /etc/sysctl изменяем следующее:
Code: Select all
net.ipv4.ip_forward = 1
Code: Select all
sysctl -a
Code: Select all
iptables -t nat -I POSTROUTING -o <ethernet> -j MASQUERADE
С ним всё намного проще, для подключения по SSTP ему достаточно указать адрес подключения (можно ip, можно домен) и логин\пароль. Сертификаты не обязательны.
Теперь если выполнить в консоли команду
Code: Select all
accel-cmd show sessions
root@root:~# accel-cmd show sessions
ifname | username | calling-sid | ip | type | comp | state | uptime
--------+----------+--------------+--------------+------+------+--------+----------
sstp0 | user2 | 95.xxx.xx.xxx | 192.168.11.3 | sstp | | active | 00:29:17
sstp1 | user1 | 5.xxx.xxx.xxx | 192.168.11.2 | sstp | | active | 00:28:40
Автозапуск сервера активируется командой:
Code: Select all
systemctl enable accel-ppp.service