Что такое SoftEther VPN и почему он популярен
SoftEther VPN — это свободный мультипротокольный VPN-сервер, распространяемый под лицензией GPLv2. Он был разработан в Университете Цукубы (Япония) и сочетает в себе поддержку множества протоколов, высокую производительность и простоту развертывания. В отличие от многих коммерческих решений, SoftEther доступен бесплатно, что делает его привлекательным для администраторов, желающих организовать собственный VPN без лицензионных отчислений.
Ключевая особенность SoftEther — способность одновременно работать с несколькими протоколами: L2TP/IPsec, OpenVPN, MS-SSTP, L2TPv3, EtherIP, а также собственным SSL-VPN протоколом, который маскируется под обычный HTTPS-трафик. Это позволяет обходить сетевые фильтры, которые блокируют стандартные VPN-порты, и обеспечивает гибкость при подключении клиентов с различными операционными системами.
Ещё одно преимущество — нетребовательность к виртуализации. В отличие от OpenVPN, которому требуются TUN/TAP-устройства в ядре, SoftEther работает на любых VPS/VDS, включая контейнерные окружения, где такие устройства недоступны. Это делает его идеальным выбором для развертывания на дешёвых виртуальных серверах.
SoftEther также поддерживает имитацию ICMP (ping) и DNS-запросов для передачи данных, что позволяет устанавливать соединение даже в сетях, где разрешён только этот трафик. Такая функция полезна в строгих корпоративных средах или в странах с интернет-цензурой.
Компоненты SoftEther VPN: сервер, клиент, мост и инструменты
Программный пакет SoftEther состоит из нескольких компонентов, каждый из которых выполняет свою роль:
- VPN Server — основной серверный компонент, который предоставляет VPN-сервисы. Включает в себя управление виртуальными хабами, пользователями, протоколами и настройками безопасности. В Windows-версии также включает VPN Server Manager.
- VPN Bridge — компонент для соединения локальных сетей через VPN-туннели. Используется для организации site-to-site VPN, когда необходимо объединить несколько офисов.
- VPN Client — клиентское приложение для подключения к VPN-серверу. Доступно для Windows, Linux, macOS и других платформ.
- VPN Server Manager — графическая утилита для администрирования сервера, доступная в Windows. Позволяет управлять локальными и удалёнными серверами через удобный интерфейс.
- vpncmd — консольная утилита для управления сервером, мостом и клиентом. Работает в терминалах UNIX-систем и в командной строке Windows. Предоставляет полный набор команд для настройки и мониторинга.
Для пользователей Linux важно понимать, что vpncmd устанавливается вместе с сервером и является основным инструментом управления, если графический интерфейс недоступен. В Windows VPN Server Manager обычно устанавливается отдельно, но может быть включён в состав пакета.
Выбор компонента зависит от задачи: для удалённого доступа сотрудников нужен VPN Server и VPN Client, для объединения офисов — VPN Bridge, для управления — VPN Server Manager или vpncmd.
Установка SoftEther VPN Server на Linux (CentOS, Ubuntu, Debian)
Установка SoftEther на Linux требует компиляции из исходного кода, но процесс автоматизирован и не вызывает сложностей даже у начинающих администраторов. Рассмотрим пошагово на примере CentOS и Ubuntu/Debian.
Шаг 1. Установка инструментов компиляции.
Для CentOS:
yum groupinstall -y "Development Tools"Для Ubuntu/Debian:
apt-get install -y build-essentialШаг 2. Скачивание исходников.
Перейдите на официальный сайт SoftEther (softether.org) или используйте прямую ссылку на архив. Например, для версии v4.27-9666-beta:
cd /usr/local
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Шаг 3. Распаковка и компиляция.
tar -zxvf softether-vpnserver-v4.27-9666-beta-2018.04.21-linux-x64-64bit.tar.gz
cd vpnserver
makeВо время компиляции будут заданы вопросы о лицензионном соглашении — отвечайте утвердительно (выберите 1).
Шаг 4. Установка прав и проверка совместимости.
chmod 600 *
chmod 700 vpnserver
chmod 700 vpncmdЗапустите проверку:
./vpncmdВ меню выберите пункт 3 (Use of VPN Tools), затем выполните команду check. Если все проверки пройдены (All checks passed), система совместима с SoftEther.
Шаг 5. Запуск сервера.
./vpnserver startПосле этого можно приступать к настройке через vpncmd.
Установка SoftEther VPN Server на Windows
Установка на Windows значительно проще, так как доступен инсталлятор с графическим интерфейсом. Скачайте установочный файл с официального сайта и запустите его. Процесс установки стандартный: выберите компоненты (Server, Client, Server Manager), укажите папку установки и завершите мастер.
После установки запустите VPN Server Manager. При первом запуске мастер предложит настроить сервер: указать имя хоста (можно оставить localhost), порт для администрирования (по умолчанию 443, но можно изменить на 5555 или другой), а также задать пароль администратора.
Далее откроется главное окно управления, где можно создавать виртуальные хабы, пользователей, настраивать протоколы и параметры безопасности. Для быстрого старта достаточно:
- Создать виртуальный хаб (например, VPN).
- Включить функции L2TP/IPsec и OpenVPN, если они нужны.
- Создать пользователей с парольной аутентификацией или сертификатами.
- Настроить SecureNAT или локальный мост для доступа к локальной сети.
VPN Server Manager предоставляет удобный графический интерфейс, который особенно полезен для администраторов, не знакомых с командной строкой. Однако для тонкой настройки может потребоваться обращение к документации, так как русской локализации у программы нет.
Настройка виртуальных хабов и пользователей
Виртуальный хаб — это изолированная среда внутри VPN-сервера, которая имеет собственных пользователей, настройки безопасности и протоколы. На одном сервере можно создать до 4096 хабов, что позволяет организовать несколько независимых VPN-сетей для разных групп пользователей или отделов.
При первом запуске на сервере уже существует хаб DEFAULT, но рекомендуется удалить его и создать собственный с понятным именем. В консоли vpncmd это делается командами:
HubDelete DEFAULT
HubCreate VPN_1При создании хаба задаётся пароль администратора хаба. После создания нужно переключиться на управление хабом:
Hub VPN_1Теперь можно создавать пользователей. Команда UserCreate создаёт пользователя, а UserPasswordSet задаёт пароль:
UserCreate denni
UserPasswordSet denniSoftEther поддерживает несколько типов аутентификации: парольная, сертификатная, а также комбинированная (пароль + сертификат). Для повышения безопасности рекомендуется использовать сертификаты, особенно для административных доступов.
Каждому пользователю можно назначить индивидуальные политики безопасности (Security Policy), ограничивающие скорость, время подключения, доступные протоколы и другие параметры. По умолчанию политики достаточно либеральны, но их можно ужесточить в зависимости от требований.
Настройка сетевого моста и SecureNAT
Для того чтобы клиенты VPN могли обращаться к ресурсам локальной сети, необходимо настроить мост между виртуальным хабом и физическим сетевым интерфейсом сервера. SoftEther поддерживает два режима: локальный мост (Local Bridge) и SecureNAT.
Локальный мост требует наличия TAP-устройства в системе. Создаётся командой:
BridgeCreate VPN_1 -device:vpn -tap:yesПосле этого в системе появится интерфейс tap_vpn, который нужно настроить с IP-адресом из локальной подсети. Мост позволяет VPN-клиентам быть полноценными участниками локальной сети, получать доступ к сетевым принтерам, файловым серверам и другим ресурсам.
SecureNAT — это встроенный механизм NAT, который не требует TUN/TAP-устройств. Он работает на уровне виртуального хаба и позволяет клиентам получать доступ в интернет через сервер, а также к локальной сети, если настроены соответствующие маршруты. SecureNAT включает виртуальный DHCP-сервер, который выдаёт клиентам IP-адреса из заданного диапазона.
Для включения SecureNAT в vpncmd используется команда SecureNatEnable. Настройки DHCP и диапазона адресов задаются через DhcpSet. В графическом интерфейсе Windows эти параметры доступны в свойствах хаба.
Выбор между мостом и SecureNAT зависит от задачи: для доступа к локальной сети нужен мост, для выхода в интернет через VPN — SecureNAT. В некоторых случаях можно использовать оба режима одновременно.
Подключение клиентов: Windows, Linux, macOS, мобильные устройства
SoftEther поддерживает подключение через собственный клиент, а также через стандартные VPN-клиенты операционных систем благодаря совместимости с L2TP/IPsec, OpenVPN и SSTP.
Windows: Рекомендуется использовать официальный SoftEther VPN Client, который предоставляет удобный графический интерфейс для создания подключений. Также можно настроить встроенный клиент Windows для L2TP/IPsec, указав IP-адрес сервера и общий ключ (PSK).
Linux: Для подключения можно использовать SoftEther VPN Client (доступен для Linux) или стандартные инструменты, такие как NetworkManager для L2TP/IPsec. Также поддерживается OpenVPN-совместимость, поэтому можно использовать любой OpenVPN-клиент.
macOS: Встроенный клиент L2TP/IPsec работает без дополнительного ПО. Также доступен SoftEther VPN Client для macOS.
Мобильные устройства (Android, iOS): Поддерживаются L2TP/IPsec и OpenVPN. Для Android можно использовать приложение SoftEther VPN Client, для iOS — встроенный клиент L2TP/IPsec или OpenVPN Connect.
При подключении через собственный клиент необходимо указать адрес сервера, порт (по умолчанию 5555 для SoftEther, но можно использовать 443 для маскировки под HTTPS), имя виртуального хаба и учётные данные пользователя. Для L2TP/IPsec потребуется общий ключ, который задаётся на сервере.
Важно помнить, что для доступа к серверу из интернета необходимо настроить проброс портов на маршрутизаторе, если сервер находится за NAT.
Безопасность и производительность SoftEther VPN
SoftEther использует современные алгоритмы шифрования, включая AES-256, и поддерживает аппаратное ускорение на процессорах с AES-NI. Это обеспечивает высокую производительность даже при больших объёмах трафика.
Одним из ключевых преимуществ является маскировка трафика под HTTPS. Собственный SSL-VPN протокол использует порт 443 и TLS-шифрование, что делает его неотличимым от обычного веб-трафика. Это позволяет обходить глубокую фильтрацию пакетов (DPI) и работать в сетях, где VPN-протоколы блокируются.
Для повышения безопасности рекомендуется:
- Использовать сертификаты для аутентификации пользователей вместо паролей.
- Настраивать политики безопасности для ограничения доступа.
- Регулярно обновлять SoftEther до последней версии.
- Ограничивать количество попыток входа и использовать сложные пароли.
- Включать журналирование для мониторинга подозрительной активности.
Производительность SoftEther сопоставима с OpenVPN, а в некоторых сценариях даже выше благодаря многопоточной обработке. Однако на слабых VPS с ограниченными ресурсами может наблюдаться снижение скорости, поэтому при выборе тарифа стоит учитывать ожидаемое количество одновременных подключений и объём трафика.
Типичные сценарии использования SoftEther VPN
SoftEther VPN подходит для множества задач, от защиты удалённого доступа до объединения офисов. Рассмотрим наиболее распространённые сценарии.
Защита RDP-доступа. Один из частых случаев — организация VPN для безопасного подключения к серверу по RDP. Вместо того чтобы открывать порт 3389 в интернет, администратор настраивает VPN-сервер, и сотрудники подключаются к нему, а затем уже по RDP к внутренним ресурсам. Это значительно снижает риск атак на RDP, так как порт не доступен извне.
Объединение офисов (site-to-site). С помощью VPN Bridge можно соединить локальные сети нескольких офисов в единую сеть. Это позволяет использовать общие ресурсы, такие как файловые серверы и принтеры, как если бы они находились в одном здании.
Обход гео-блокировок. Благодаря маскировке под HTTPS, SoftEther может использоваться для обхода региональных ограничений и доступа к заблокированным сайтам. Однако следует учитывать законодательство страны, в которой вы находитесь.
Безопасный интернет-серфинг. При использовании SecureNAT весь трафик клиента проходит через VPN-сервер, что скрывает реальный IP-адрес пользователя и шифрует данные. Это полезно при подключении к публичным Wi-Fi сетям.
Временный доступ для подрядчиков. Можно создать отдельный виртуальный хаб с ограниченными правами для внешних специалистов, которым нужен доступ к определённым ресурсам сети.
Часто задаваемые вопросы о SoftEther VPN
Вопрос: Можно ли использовать SoftEther VPN бесплатно?
Да, SoftEther VPN распространяется под лицензией GPLv2, что позволяет использовать его бесплатно, включая коммерческое использование. Однако необходимо соблюдать условия лицензии, в частности, предоставлять исходный код при распространении изменённых версий.
Вопрос: Какие порты нужно открыть на файрволе?
По умолчанию SoftEther использует порты 443, 992, 1194 и 5555. Для работы достаточно открыть один из них, например 443 (для маскировки под HTTPS) или 5555 (стандартный порт SoftEther). Если используется L2TP/IPsec, также нужно открыть порты 500 (IKE) и 4500 (IPsec NAT-T).
Вопрос: Чем SoftEther отличается от OpenVPN?
SoftEther поддерживает несколько протоколов одновременно, включая OpenVPN, L2TP/IPsec и SSTP, в то время как OpenVPN использует только собственный протокол. SoftEther также не требует TUN/TAP-устройств, что упрощает развёртывание на VPS. Однако OpenVPN имеет более широкое сообщество и больше документации.
Вопрос: Как настроить автозапуск SoftEther VPN Server?
В Linux можно создать systemd-юнит или использовать скрипт в /etc/rc.local. В Windows сервер устанавливается как служба и запускается автоматически. Для Linux пример systemd-юнита можно найти в документации SoftEther.
Вопрос: Можно ли использовать SoftEther для обхода блокировок?
Да, благодаря маскировке под HTTPS, SoftEther может обходить DPI-фильтры. Однако эффективность зависит от конкретной сети и используемых методов фильтрации. В некоторых случаях могут потребоваться дополнительные настройки, такие как использование порта 443 и TLS.
Вопрос: Как обновить SoftEther VPN Server?
Для обновления необходимо скачать новую версию с официального сайта, остановить сервер, заменить файлы и запустить заново. Конфигурация обычно сохраняется, но рекомендуется делать резервную копию перед обновлением.
Вопрос: Поддерживает ли SoftEther IPv6?
Да, SoftEther поддерживает IPv6, включая туннелирование IPv6 через IPv4 и наоборот. Настройка IPv6 выполняется в свойствах виртуального хаба.
Вопросы и ответы
Можно ли использовать SoftEther VPN бесплатно?
Да, SoftEther VPN распространяется под лицензией GPLv2, что позволяет использовать его бесплатно, включая коммерческое использование. Однако необходимо соблюдать условия лицензии, в частности, предоставлять исходный код при распространении изменённых версий.
Какие порты нужно открыть на файрволе для SoftEther?
По умолчанию SoftEther использует порты 443, 992, 1194 и 5555. Для работы достаточно открыть один из них, например 443 (для маскировки под HTTPS) или 5555 (стандартный порт SoftEther). Если используется L2TP/IPsec, также нужно открыть порты 500 (IKE) и 4500 (IPsec NAT-T).
Чем SoftEther отличается от OpenVPN?
SoftEther поддерживает несколько протоколов одновременно, включая OpenVPN, L2TP/IPsec и SSTP, в то время как OpenVPN использует только собственный протокол. SoftEther также не требует TUN/TAP-устройств, что упрощает развёртывание на VPS. Однако OpenVPN имеет более широкое сообщество и больше документации.
Как настроить автозапуск SoftEther VPN Server?
В Linux можно создать systemd-юнит или использовать скрипт в /etc/rc.local. В Windows сервер устанавливается как служба и запускается автоматически. Для Linux пример systemd-юнита можно найти в документации SoftEther.
Можно ли использовать SoftEther для обхода блокировок?
Да, благодаря маскировке под HTTPS, SoftEther может обходить DPI-фильтры. Однако эффективность зависит от конкретной сети и используемых методов фильтрации. В некоторых случаях могут потребоваться дополнительные настройки, такие как использование порта 443 и TLS.
Как обновить SoftEther VPN Server?
Для обновления необходимо скачать новую версию с официального сайта, остановить сервер, заменить файлы и запустить заново. Конфигурация обычно сохраняется, но рекомендуется делать резервную копию перед обновлением.
Поддерживает ли SoftEther IPv6?
Да, SoftEther поддерживает IPv6, включая туннелирование IPv6 через IPv4 и наоборот. Настройка IPv6 выполняется в свойствах виртуального хаба.