Softether vpn for linux

Установка SoftEther VPN на Linux сервере Ubuntu

В этой статье моя инструкция по установке SoftEther VPN на Linux сервере под управлением ОС Ubuntu Serever 20.04, но в принципе мануал подойдет к любой версии Ubuntu или даже другому дистрибутиву при самостоятельной установке зависимостей.

SoftEther VPN — продвинутый мульти протокольный и кросс платформенный VPN-сервер и клиент. Этот сервер умеет работать с такими протоколами как L2TP/IPsec, OpenVPN, MS-SSTP, L2TPv3, EtherIP-серверы, а также имеет свой собственный протокол «SSL-VPN», который неотличим от обычного HTTPS-трафика. Может работать не только через TCP/UDP, но и через ICMP (подобно pingtunnel, hanstunnel) и DNS (подобно iodine), работает быстрее других аналогов (по заверению разработчиков). Текущих версия строит L2 и L3 туннели, имеет встроенный DHCP-сервер, поддерживает как kernel-mode, так и user-mode NAT, IPv6, шейпинг, QoS, кластеризацию, load balancing и fault tolerance. Поддерживает операционные системы Windows, Linux, Mac OS, FreeBSD и Solaris и является Open-Source проектом под GPLv2.

Установка SoftEther VPN на Synology NAS • Александр Linux (bafista.ru)

Так отличие Softether VPN от других аналогов в том, что у него есть отличное приложение Softether VPN Server Manager, которое доступно для Windows и Mac OS. Для Linux доступен только режим через командную строку vpncmd

Так же хочу отметить, что можно создавать несколько хабов с разным поведением VPN для разных задач. Это очень удобно

Всю установку я буду делать на любимом дистрибутиве Linux Ubuntu версия 20.04 LTS

Все команды я буду вводить от имени root. Для этого достаточно ввести:

Первое, что всегда нужно делать это обновить систему:

apt update && apt upgrade -y

Если при обновлении обновились пакеты, то лучше перегрузить систему:

Теперь, когда система в актуальном состоянии установим зависимости:

apt install build-essential cmake gcc g++ make libncurses5-dev libssl-dev libsodium-dev libreadline-dev zlib1g-dev pkg-config

Затем переходим на офф сайт softether vpn и копируем ссылку на продукт

Когда вы будите устанавливать этот vpn сервер его актуальная версия может поменяться. На данный момент версия такая.

Я предпочитаю устанавливать стороннее ПО в папку opt, поэтому переходим в нее, скачиваем vpn сервер и распаковываем:

cd /opt/ wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.38-9760-rtm/softether-vpnserver-v4.38-9760-rtm-2021.08.17-linux-x64-64bit.tar.gz tar xzvf softether-vpnserver-v4.38-9760-rtm-2021.08.17-linux-x64-64bit.tar.gz cd vpnserver/

В папке /opt/vpnserver будут лежать исполняемый файлы, логи и конфигурация Sofrether VPN сервера.

Настало время скомпилировать наш vpn сервер с исходников. Для этого нам нужна всего одна команда:

После компиляции в папке /opt/vpnserver должны появиться бинарные файлы для запуска:

Теперь добавим Softether VPN в автозагрузку как сервис системы. Для этого создадим файл:

nano /lib/systemd/system/softether-vpnserver.service

И добавим в него следующее содержимое:

[Unit] Description=SoftEther VPN Server After=network.target auditd.service ConditionPathExists=!/opt/vpnserver/do_not_run [Service] Type=forking TasksMax=16777216 EnvironmentFile=-/opt/vpnserver ExecStart=/opt/vpnserver/vpnserver start ExecStop=/opt/vpnserver/vpnserver stop KillMode=process Restart=on-failure # Hardening PrivateTmp=yes ProtectHome=yes ProtectSystem=full ReadOnlyDirectories=/ ReadWriteDirectories=-/opt/vpnserver/ CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW CAP_SYS_NICE CAP_SYSLOG CAP_SETUID [Install] WantedBy=multi-user.target

Для выхода из режима редактирования и сохранения изменений нажмите Ctrl+x и ответьте y на вопрос.

Читайте также:  Xerox phaser 3100 mfp драйвер linux установка

Включаем сервис Softether VPN в автозагрузку

systemctl enable softether-vpnserver.service

Запустим вручную для проверки

systemctl start softether-vpnserver.service

Статус можно узнать командой:

systemctl status softether-vpnserver.service

Если нужно включить форвардин пакетов силами ядра, вводим команды:

sudo sysctl -w net.ipv4.ip_forward=1
sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf

Для проверки вводим такие команды:

cat /etc/sysctl.conf | grep forward
cat /proc/sys/net/ipv4/ip_forward

где 0 – форвардинг отключен, 1 – форвардин включен

Теперь можно первый раз подключиться к нашему SoftEther VPN серверу. Для этого скачиваем и устанавливаем Manager

После установки запускаем программу, нажимаем добавить новый и в открывшемся окне вписываем только имя и IP адрес сервера.

Первый раз пароль вводить не надо. Затем нажимаем ОК и подключаемся к серверу для настройки. Первый раз он предложит установить пароль администратора. Придумываем сложный пароль:

После чего система начнет задавать вопросы, для первоначальной настройки. Выбирайте нужные параметры, но имейте ввиду, что потом их можно поменять в любой момент.

Так же я рекомендую настроить защиту от подбора паролей fail2ban для Softether VPN. Установим fail2ban^

После установки создаем файл фильтров:

nano /etc/fail2ban/filter.d/vpnserver.conf

И наполняем его следующим содержимым:

# Fail2Ban filter for SoftEther authentication failures # Made by quixrick and Nobody # Thanks to quixrick from Reddit! https://reddit.com/u/quixrick # Further reference: http://www.vpnusers.com/viewtopic.php?f=7&t=6375&sid=76707e8a5a16b0c9486a39ba34763901&view=print [INCLUDES] # Read common prefixes. If any customizations available -- read them from # common.local before = common.conf #Enable multi line support. Doesn't work with versions < 0.9 [Init] maxlines = 2 # The regular expression filter follows [Definition] failregex =IP address: .*\n.*User authentication failed.* ignoreregex=
nano /etc/fail2ban/jail.local

Добавляем в конец следующее:

[vpnserver-udp] port = 500,1701,4500 enabled = true protocol = udp filter = vpnserver logpath = /opt/vpnserver/security_log/*/sec_*.log [vpnserver-tcp] port = 443 enabled = true protocol = tcp filter = vpnserver logpath = /opt/vpnserver/security_log/*/sec_*.log

Нужно создать два контекста, один для tcp, другой для udp иначе fail2ban не сможет заблокировать udp соединения и пароль будут подбирать несмотря на то, что IP адрес заблокирован в правилах. Порты указывайте свои, те которые вы используете.

Рестартуем fail2ban для применения изменений:

systemctl restart fail2ban.service

Теперь защита от подбора паролей включена, но ее нужно до настроить. Как это сделать я расскажу в другой статье.

В этой статье только установка, настройка будет попозже.

Читайте также:  Kali linux установка инструментов

Настраивайте ваш личный VPN сервер, подключайте клиентов, желаю удачи.

Канал Телеграм Канал Дзенс Группа ВКонтакте Канал YouTube Канал Rutube

Источник

Установка SoftEther VPN на Linux сервере Ubuntu

В этой статье моя инструкция по установке SoftEther VPN на Linux сервере под управлением ОС Ubuntu Serever 20.04, но в принципе мануал подойдет к любой версии Ubuntu или даже другому дистрибутиву при самостоятельной установке зависимостей.

Установка SoftEther VPN на Synology NAS • Александр Linux (bafista.ru)SoftEther VPN — продвинутый мульти протокольный и кросс платформенный VPN-сервер и клиент. Этот сервер умеет работать с такими протоколами как L2TP/IPsec, OpenVPN, MS-SSTP, L2TPv3, EtherIP-серверы, а также имеет свой собственный протокол «SSL-VPN», который неотличим от обычного HTTPS-трафика. Может работать не только через TCP/UDP, но и через ICMP (подобно pingtunnel, hanstunnel) и DNS (подобно iodine), работает быстрее других аналогов (по заверению разработчиков). Текущих версия строит L2 и L3 туннели, имеет встроенный DHCP-сервер, поддерживает как kernel-mode, так и user-mode NAT, IPv6, шейпинг, QoS, кластеризацию, load balancing и fault tolerance. Поддерживает операционные системы Windows, Linux, Mac OS, FreeBSD и Solaris и является Open-Source проектом под GPLv2.

Так отличие Softether VPN от других аналогов в том, что у него есть отличное приложение Softether VPN Server Manager, которое доступно для Windows и Mac OS. Для Linux доступен только режим через командную строку vpncmd

Так же хочу отметить, что можно создавать несколько хабов с разным поведением VPN для разных задач. Это очень удобно

Всю установку я буду делать на любимом дистрибутиве Linux Ubuntu версия 20.04 LTS

Все команды я буду вводить от имени root. Для этого достаточно ввести:

Первое, что всегда нужно делать это обновить систему:

Если при обновлении обновились пакеты, то лучше перегрузить систему:

Теперь, когда система в актуальном состоянии установим зависимости:

apt install build-essential cmake gcc g++ make libncurses5-dev libssl-dev libsodium-dev libreadline-dev zlib1g-dev pkg-config

Затем переходим на офф сайт softether vpn и копируем ссылку на продукт

Когда вы будите устанавливать этот vpn сервер его актуальная версия может поменяться. На данный момент версия такая.

Я предпочитаю устанавливать стороннее ПО в папку opt, поэтому переходим в нее, скачиваем vpn сервер и распаковываем:

cd /opt/
wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.38-9760-rtm/softether-vpnserver-v4.38-9760-rtm-2021.08.17-linux-x64-64bit.tar.gz
tar xzvf softether-vpnserver-v4.38-9760-rtm-2021.08.17-linux-x64-64bit.tar.gz
cd vpnserver/

В папке /opt/vpnserver будут лежать исполняемый файлы, логи и конфигурация Sofrether VPN сервера.

Настало время скомпилировать наш vpn сервер с исходников. Для этого нам нужна всего одна команда:

После компиляции в папке /opt/vpnserver должны появиться бинарные файлы для запуска:

Читайте также:  Найти файл по названию linux

Теперь добавим Softether VPN в автозагрузку как сервис системы. Для этого создадим файл:

И добавим в него следующее содержимое:

[Unit]
Description=SoftEther VPN Server
After=network.target auditd.service
ConditionPathExists=!/opt/vpnserver/do_not_run

[Service]
Type=forking
TasksMax=16777216
EnvironmentFile=-/opt/vpnserver
ExecStart=/opt/vpnserver/vpnserver start
ExecStop=/opt/vpnserver/vpnserver stop
KillMode=process
Restart=on-failure

# Hardening
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=full
ReadOnlyDirectories=/
ReadWriteDirectories=-/opt/vpnserver/
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW CAP_SYS_NICE CAP_SYSLOG CAP_SETUID

Для выхода из режима редактирования и сохранения изменений нажмите Ctrl+x и ответьте y на вопрос.

Включаем сервис Softether VPN в автозагрузку

Запустим вручную для проверки

Статус можно узнать командой:

Если нужно включить форвардин пакетов силами ядра, вводим команды:

sudo sysctl -w net.ipv4.ip_forward=1
sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf

Для проверки вводим такие команды:

где 0 – форвардинг отключен, 1 – форвардин включен

Теперь можно первый раз подключиться к нашему SoftEther VPN серверу. Для этого скачиваем и устанавливаем Manager

После установки запускаем программу, нажимаем добавить новый и в открывшемся окне вписываем только имя и IP адрес сервера.

Первый раз пароль вводить не надо. Затем нажимаем ОК и подключаемся к серверу для настройки. Первый раз он предложит установить пароль администратора. Придумываем сложный пароль:

После чего система начнет задавать вопросы, для первоначальной настройки. Выбирайте нужные параметры, но имейте ввиду, что потом их можно поменять в любой момент.

Так же я рекомендую настроить защиту от подбора паролей fail2ban для Softether VPN. Установим fail2ban^

После установки создаем файл фильтров:

И наполняем его следующим содержимым:

# Fail2Ban filter for SoftEther authentication failures
# Made by quixrick and Nobody
# Thanks to quixrick from Reddit! https://reddit.com/u/quixrick
# Further reference: http://www.vpnusers.com/viewtopic.php?f=7&t=6375&sid=76707e8a5a16b0c9486a39ba34763901&view=print

# Read common prefixes. If any customizations available -- read them from
# common.local
before = common.conf

#Enable multi line support. Doesn't work with versions < 0.9
[Init]
maxlines = 2
# The regular expression filter follows
[Definition]

failregex =IP address: .*\n.*User authentication failed.*
ignoreregex=

[vpnserver-udp]
port = 500,1701,4500
enabled = true
protocol = udp
filter = vpnserver
logpath = /opt/vpnserver/security_log/*/sec_*.log

[vpnserver-tcp]
port = 443
enabled = true
protocol = tcp
filter = vpnserver
logpath = /opt/vpnserver/security_log/*/sec_*.log

Нужно создать два контекста, один для tcp, другой для udp иначе fail2ban не сможет заблокировать udp соединения и пароль будут подбирать несмотря на то, что IP адрес заблокирован в правилах. Порты указывайте свои, те которые вы используете.

Рестартуем fail2ban для применения изменений:

Теперь защита от подбора паролей включена, но ее нужно до настроить. Как это сделать я расскажу в другой статье.

В этой статье только установка, настройка будет попозже.

Настраивайте ваш личный VPN сервер, подключайте клиентов, желаю удачи.

Источник

Оцените статью
Adblock
detector