Клиентское и серверное ПО существует практически для всех распространенных операционных систем. Процесс компиляции исходного кода при установке в UNIX-системах минимизирован настолько, что с ним легко справится любой пользователь.

ПО SoftEther состоит из нескольких компонентов:

Server – самый полный набор, включает в себя Server, Bridge и VPN Server Manager (в версии для Windows).

Bridge – позволяет подключать локальные сети к VPN-тоннелям.


VPN Server Manager
– утилита с графическим интерфейсом в системе Windows. Используется для администрирования локальных и удаленных VPN-серверов. Является самым удобным средством администрирования и управления. Устанавливается отдельно.

vpncmd – утилита администрирования командной строки, как в  терминалах UNIX-систем, так и в командной строке Windows. В UNIX-системах ставится вместе с сервером. В Windows идет в комплекте с VPN Server Manager.

Client – клиент для подключения к сети VPN.

1. Установка SoftEther VPN Server.

Предполагается, что у Вас уже установлена и обновлена ОС CentOS 8.

1.1. Установим утилиты для компилирования:

# dnf install wget, nano, tar -y
# dnf groupinstall -y "Development Tools"

1.2. Переходим в каталог /usr/share:

# cd /usr/share

1.3. Переходим на сайт SoftEther, выбираем нужное и копируем полученную ссылку.

1.4. Скачиваем исходники SoftEther выбрав значения в меню как на картинке выше:

# wget http://www.softether-download.com/files/softether/v4.27-9666-beta-2018.04.21-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.27-9666-beta-2018.04.21-linux-x64-64bit.tar.gz

1.5. Распаковываем скачанный архив:

# tar -zxvf softether-vpnserver-v4.27-9666-beta-2018.04.21-linux-x64-64bit.tar.gz
# rm softether-vpnserver-v4.27-9666-beta-2018.04.21-linux-x64-64bit.tar.gz

1.6. Переходим в каталог vpnserver:

# cd vpnserver

1.7. Компилируем и устанавливаем:

# make

1.8. Далее проверяем что были скомпилированы все необходимые файлы:

# ls -la

и ищем там файлы vpnserver и vpncmd

2. Настройка файрвола.

По умолчанию SoftetherVPN слушает 4 порта: 443/tcp, 992/tcp, 1194/udp, 5555/tcp

Для того чтобы зайти в настройки сервера удаленно, нужно открыть в файрволе порт управления 5555/tcp:

# firewall-cmd --permanent --zone=public --add-port=5555/tcp
# firewall-cmd --reload

Таким образом можно открыть все 4 порта при необходимости. Но я рекомендую порты по умолчанию все удалить и добавить свой.

Теперь для настройки сервера можно взять сподручный комп на Windows, установить на него программу с офф сайта SoftetherVPN Server Manager Tools и подключиться из локальной сети по IP-адресу и порту 5555 к нашему серверу на CentOS 8.

3. Автозапуск VPN Server.

Запускать сервер вручную неудобно. Напишем скрипт для автозапуска сервера:

3.1. Переходим в /usr/share/vpnserver:

# cd /usr/share/vpnserver

3.2. Останавливаем vpnserver:

# ./vpnserver stop

3.3. Создаем скрипт (vpnserver) в каталоге /etc/init.d:

# nano /etc/init.d/vpnserver

Содержание скрипта автозапуска для CentOS:

# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/share/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

3.4. Задаём права доступа на файл скрипта:

# chmod 755 /etc/init.d/vpnserver

3.5. Добавим скрипт в автозапуск:

# chkconfig --add vpnserver

3.6. Запустим vpnserver с помощью systemctl:

# systemctl start vpnserver

3.7. Проверим как работает:

$ systemctl status vpnserver
 
vpnserver.service - SYSV: SoftEther VPN Server
Loaded: loaded (/etc/rc.d/init.d/vpnserver; bad; vendor preset: disabled)
Active: active (running) since Mon 2017-09-25 22:02:58 EDT; 3min 59s ago
Docs: man:systemd-sysv-generator(8)
Process: 21190 ExecStart=/etc/rc.d/init.d/vpnserver start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/vpnserver.service
├─21193 /usr/share/vpnserver/vpnserver execsvc
└─21194 /usr/share/vpnserver/vpnserver execsvc
 
Sep 25 22:02:58 tech systemd[1]: Starting SYSV: SoftEther VPN Server...
Sep 25 22:02:58 tech vpnserver[21190]: The SoftEther VPN Server service has been started.
Sep 25 22:02:58 tech systemd[1]: Started SYSV: SoftEther VPN Server.

ВАЖНО!!! Всё выше написанное про Softether VPN Server. Для Softether VPN Bridge везде где указано vpnserver поменять на vpnbridge.