В свете периодических блокировок в РБ и РФ, блокирующих как “недозволенные речи неугодных” так и работу специалистов разных мастей, организации и просто технари перебирают возможности различных VPN решений. SoftEther VPN в моем списке выглядит как бесплатное “чудо-решение”, которое позволяет иметь под рукой внушительный лист протоколов VPN из коробки: L2TP, IPSec, OpenVPN, SSTP, SoftEther VPN.
Цель туториала — упростить его установку, сделав доступным любому специалисту способному подключиться по ssh к серверу и вбить пару команд.
Если вас интересуют все возможности решения — на хабре уже есть обзоры SoftEther VPN: раз два три.
Теоретически
Я не системный администратор и не специалист по безопасности. Могу быть не прав.
Наиболее интересными протоколами для нас выглядят протоколы работающие поверх 443 порта т.к. похожи на https трафик: «SSTP», «SoftEther VPN». Ставим нашей целью настроить оба, остальные протоколы бонусом.
Хотя по опыту, они не спасут в случае применения тяжелой артиллерии.
Нам понадобятся
-
SoftEther VPN Server manager for Windows
-
Ubuntu 20.04 server
-
Docker 19+ на борту
sudo apt-get update sudo apt-get install docker-ce docker
-
SoftEther VPN Client под необходимую вам систему. [Опционально, если планируете использовать «SoftEther VPN» протокол]
Приступим
UPD: Шаги 1-6, можно срезать.
Под FreeBSD SoftEther доступен для установки через пакетный менеджер.
su
pkg update
pkg upgrade
pkg install softether
sysrc softether_server_enable=yes
Листаем к пункту 7. Спасибо @i7071270
-
Создадим папку для наших настроек
mkdir /home/softethervpn && cd /home/softethervpn
-
Создайте и откройте
docker-compose.yaml
файл используяvi
илиnano
nano docker-compose.yaml
ВНИМАНИЕ: Замените следующие ключи своими значениями
-
<PSK> — pre-shared key. Используется для IpSec
-
<username>
-
<password>
-
<spassword> — Server management password (супер админ — будьте с ним аккуратны)
-
<hpassword> — hub management password
-
В секции USERS вы можете определить предустановленных юзеров: username:password;user2:pass2;
version: '3' services: softethervpn: container_name: 'softethervpn' image: siomiz/softethervpn cap_add: - NET_ADMIN environment: - PSK=<PSK> - "USERS=<username>:<password>" - SPW=<spassword> - HPW=<hpassword> #volumes: #- ./vpn_server.config:/opt/vpn_server.config ports: # L2TP/IPSec - "500:500/udp" - "4500:4500/udp" - "1701:1701/tcp" # OpenVPN/SSTP - "443:443/tcp" - "1194:1194/udp" # SoftEther VPN (recommended by vendor) - "5555:5555/tcp" - "992:992/tcp"
-
-
Стартуем из папки с
docker-compose.yaml
docker-compose up -d
-
Во время первого запуска контейнера была создана конфигурация. Давайте скопируем ее из контейнера в нашу папку.
docker cp softethervpn:/usr/vpnserver/vpn_server.config ./
-
Теперь нам необходимо раскомментировать строки 13, 14 в файле
docker-compose.yaml
Итоговый файл должен выглядеть так
version: '3' services: softethervpn: container_name: 'softethervpn' image: siomiz/softethervpn cap_add: - NET_ADMIN environment: - PSK=<PSK> - "USERS=<username>:<password>" - SPW=<spassword> - HPW=<hpassword> volumes: - ./vpn_server.config:/opt/vpn_server.config ports: # L2TP/IPSec - "500:500/udp" - "4500:4500/udp" - "1701:1701/tcp" # OpenVPN/SSTP - "443:443/tcp" - "1194:1194/udp" # SoftEther VPN (recommended by vendor) - "5555:5555/tcp" - "992:992/tcp"
-
Теперь вы не будете терять ваш конфиг после каждого перезапуска контейнера. Для обновления конфигурации контейнера вызываем.
docker-compose up -d
-
Запускаем SoftEther VPN Server manager for Windows с локальной машины и подключаемся к созданному серверу:
Если вам удалось подключиться — вам уже доступны протоколы L2TP, IPSec, SoftEther VPN. (при условии, что у вас установлены соответствующие клиенты)
-
Пора настроить OpenVPN
-
Активируем протокол в настройках
-
Кнопка «Generate a Sample Configuration File for OpenVPN Clients» отдаст вам файл который вы можете скормить типовому OpenVPN клиенту.
-
-
Пришло время настроить SSTP
-
Первое, что нужно сделать — сгенерировать self-signed сертификат для сервера:
-
Экспортируем сертификат в формате
.cer
-
Этот сертификат необходимо импортировать в Trusted Root Certificate Authorities вашей системы. Для этого
-
Открываем утилиту «Manage Computer Certificates»
-
Импортируем сертификат в «Trusted Root Certificate Authorities»
Важно: Store location должен быть установлен в Local:
После импорта, в ветке Certificates вы увидите сертификат с IP адресом вашего сервера.
-
Попробуем установить подключение, для этого идем в настройки VPN:
-
Добавляем новое VPN соединение
-
Готово! Если все настройки были выполнены верно, соединение должно было успешно установиться.
-
-
Дополнительно
-
По адресу https://<your_ip_address> доступна страница приветствия SoftEther VPN. Чтобы лишний раз не афишировать факт, что это VPN сервер, давайте ее отключим.
-
Откроем на редактирование файл
vpn_server.config
nano vpn_server.config
-
Заменим флаг
bool DisableJsonRpcWebApi false
наbool DisableJsonRpcWebApi true
-
Перезапустим контейнер:
docker restart softethervpn
-
-
Имеет смысл скрыть все неиспользуемые нами порты. В моем случае все кроме 443. Для этого комментируем в файле
docker-compose.yaml
строки с лишними портамиports: # L2TP/IPSec #- "500:500/udp" #- "4500:4500/udp" #- "1701:1701/tcp" # OpenVPN/SSTP - "443:443/tcp" #- "1194:1194/udp" # SoftEther VPN (recommended by vendor) #- "5555:5555/tcp" #- "992:992/tcp"
Готово
Теперь у нас под рукой есть многопользовательский VPN Server с набором протоколов которые можно перебирать в надежде достучаться до рабочего варианта в случае известных форс-мажоров. Всем спасибо!
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Как вы считаете, имеет ли это смысл
40.68%
Да, должно помочь от примитивных блокировок
24
3.39%
Нет, бесполезная трата времени
2
15.25%
VPN не для обхода блокировок придумали
9
16.95%
Могло бы помочь, но этог конфиг не полный
10
23.73%
Не знаю, но хочется верить
14
Проголосовали 59 пользователей.
Воздержался 31 пользователь.
СофтЭтер ВПН это многопротокольное программное обеспечение VPN, которое мы можем использовать в таких операционных системах, как Windows, Linux или macOS, среди прочего. Его название происходит от программного обеспечения Ethernet. Это открытый исходный код и совершенно бесплатно. Это альтернатива другим опциям, таким как OpenVPN и Microsoft сервера.
Он считается более быстрым вариантом, чем OpenVPN, и следует также отметить, что он совместим с Microsoft SSTP VPN для разных версий Windows. У него есть собственный протокол: SSL VPN . Он полностью оптимизирован для этого инструмента, предлагая очень высокую производительность, низкую задержку и брандмауэр сопротивление.
Позволяет виртуализировать Ethernet с помощью программного перечисления. SoftEther VPN-клиент реализует виртуальную Cеть Адаптер и SoftEther VPN-сервер реализует виртуальный коммутатор Ethernet. Мы легко можем создать удаленный доступ VPN и межсайтовый VPN , как расширение L2 VPN на базе Ethernet. Он также позволяет создавать традиционные VPN на основе L3 с IP-маршрутизацией.
SoftEther VPN полностью совместим с самыми популярными на сегодняшний день продуктами VPN во всем мире. Он может взаимодействовать с OpenVPN, L2TP, IPsec, EtherIP, L2TPv3, маршрутизаторами Cisco VPN и клиентами MS-SSTP VPN. В настоящее время это единственный в мире, который поддерживает SSL-VPN, OpenVPN, L2TP, EtherIP, L2TPv3 и IPsec в качестве единого программного обеспечения VPN.
SoftEther основные особенности
Мы видели, что такое SoftEther, и теперь посмотрим, что в нем основные черты находятся. Обзор моментов, которые мы должны учитывать при использовании этого программного обеспечения. Мы уже упоминали о некоторых аспектах, например о том, что он бесплатный и с открытым исходным кодом.
- Простота создания сетей VPN типа «сеть-сеть» и удаленного доступа.
- SSL-VPN-туннелирование через HTTPS для прохождения через NAT и межсетевые экраны
- Инновационные функции VPN через ICMP и VPN через DNS
- Он устойчив к брандмауэрам с жесткими ограничениями.
- Интегрированный динамический обход DNS и NAT, поэтому статический или фиксированный IP-адрес не требуется
- 256-битное шифрование AES и 4096-битное шифрование RSA
- Функции безопасности, такие как VPN-туннель и реестр
- Высокая производительность с 1 Гбит / с при небольшой загрузке памяти и ЦП
- Поддерживает, среди прочего, Windows, Linux, macOS, iOS или Android.
- Поддержка SSL-VPN (HTTPS) и шести основных протоколов VPN (OpenVPN, IPsec, L2TP, MS-SSTP, L2TPv3 и EtherIP)
- Функция клонирования OpenVPN поддерживает устаревшие клиенты OpenVPN
- IPv4 и IPv6
Вкратце, это основные функции SoftEther. Этот мультиплатформенный сервер и клиентское программное обеспечение VPN предлагает широкий спектр возможностей. Он имеет отличную производительность в различных операционных системах, с которыми он совместим.
Как установить SoftEther в Windows
Мы объясним шаг за шагом как установить SoftEther в Windows. Мы собираемся протестировать его в наиболее часто используемой операционной системе на настольных компьютерах, хотя следует отметить, что процесс его установки и использования аналогичен в остальных операционных системах, где мы можем его использовать.
Первое, что нам нужно сделать, это перейти в раздел загрузки его Официальном сайте . Там мы найдем различные варианты загрузки программы. У нас также есть ссылка на GitHub, и мы можем ознакомиться с исходным кодом программного обеспечения. Есть несколько серверов, с которых его можно скачать.
Имейте в виду, что мы можем скачать сервер, клиент, вариант моста, а также выбрать платформу. В установочный файл составляет около 50 МБ. После того, как мы его загрузили, следующее, что нам нужно сделать, это запустить его в системе. Вы начнете с установки, простого и интуитивно понятного процесса. Он запросит у нас разрешение на его установку, и мы должны его принять.
После того, как мы установили и запустили его в первый раз, появится окно, подобное тому, которое мы видим на изображении ниже. Мы должны ударить Поисковик чтобы начать его использовать. Он запросит у нас пароль администратора.
Если мы хотим создать удаленный VPN-сервер с SoftEther мы должны отметить эту опцию в новом окне, которое откроется позже, и нажать «Далее». Он запросит у нас подтверждение, и мы примем его. Нам также нужно будет придумать имя.
Как только это будет сделано, он создаст динамический DNS функция для нас. Он назначит имя хоста, глобальный адрес IPv4 и все, что мы видим на изображении ниже. Мы можем изменить имя и назначить то, которое хотим. Мы нажимаем Set to Above Hostname.
После создания мы должны дать ему выйти, и в появившемся окне отметьте опцию Включить функцию сервера L2TP (L2TP через IPsec). Вы также должны выбрать имя пользователя, но поскольку у нас будет только один созданный, он уже будет отмечен по умолчанию. Даем ОК.
В следующем окне мы даем вам отключить VPN Azure и снова отметьте ОК. После этого мы создаем нового пользователя и заполняем соответствующие данные. Мы должны указать имя и тип аутентификации, в основном, в дополнение к паролю.
В новом окне мы автоматически увидим, что созданный нами пользователь уже появляется. Мы можем просто закрыть это окно, нажав Exit и в предыдущем окне на шаге 3 выбрать Контроллер Ethernet и близко. Мы можем проверить, что статус находится в сети, как показано на изображении ниже.
Если мы выберем пользователя и нажмем на Управление виртуальным хабом мы можем ввести различные точки, которые мы можем изменить. Мы можем щелкнуть Virtual NAT и Virtual DCHP и включить SecureNAT. Позже мы войдем в SecureNAT Configuration, и там мы увидим параметры интерфейса карты, такие как MAC-адрес или IP-адрес.
В главном окне мы видим список прослушиваемых портов TCP / IP. Мы можем создавать, удалять или приостанавливать уже существующие.
Установить SoftEther Client
Мы также можем установить клиентская версия SoftEther VPN . Процесс такой же. Мы должны зайти на их веб-сайт и на этот раз выбрать «Клиент». Вам нужно выбрать операционную систему, в которую вы хотите ее установить. Когда мы откроем его, мы обнаружим окно, подобное тому, которое мы видим на изображении ниже.
Мы должны дать Добавить VPN-соединение . Вы должны дать ему имя, и он начнет создавать новую виртуальную сеть в Windows. Это займет несколько секунд. Он автоматически появится в нижней части главного окна с созданным нами именем. Убедитесь, что статус включен.
Как только это будет сделано, вам нужно перейти в Connect, щелкнуть New VPN, и появится новое окно для ввода данных, как мы видим на изображении.
Здесь мы должны поместить такие данные, как имя хоста, которое в нашем случае, как мы его настроили ранее, будет vpnredeszone.softether.net. Также выберите порт и отключите NAT-T.
Вы должны ввести имя пользователя и пароль справа и нажать ОК. В главном окне появится офлайн-соединение. Просто щелкните правой кнопкой мыши и выберите «Подключиться», чтобы установить соединение, и появится IP-адрес. Мы увидим, что он выглядит как подключенный.
Короче говоря, следуя этим шагам, которые мы объясняли, мы можем загрузить и настроить SoftEther как сервер и клиент. Мы можем легко и безопасно создать VPN.
20:03, 10.03.2016
Рассмотрим установку и настройку VPN сервера SoftEther VPN на Windows. SoftEther VPN позволяет объединить в сеть различные устройства, так как поддерживает практически все популярные протоколы сетей.
Настройка SoftEther VPN топология клиент-сервер.
VPN сервер здесь будет центральным узлом, к которому будут подключаться клиенты для получения доступа во внутреннюю сеть. Скачиваем последнюю RTM версию и запускаем установку. Выбираем строчку SoftEther VPN Server и жмем далее.
Тут ставим галочку Remote Access VPN Server.
Затем вводим имя виртуального хаба.
Далее идет настройка функции динамического DNS, ее можно отключить позже.
Затем, если необходимо, то настраиваем подключение по L2TP, указываем общий ключ IPsec.
Далее идет настройка Azure VPN — это бесплатный облачный сервис, который позволяет устанавливать VPN соединение с сервером при отсутствии внешнего ip адреса и открытых портов. Для соединения через него, необходимо указывать доменный идентификатор Azure VPN и 443 порт.
На последнем шаге нужно указать физический сетевой интерфейс, который подключен к локальной сети.
Теперь можно настроить учетные записи и прослушиваемые TCP порты в виртуальном хабе . Порт 5555 удалять нельзя, т.к. через него подключается локальный клиент управления сервером. О том как открыть нужные порты в роутере можно прочитать в статье.
Для того что бы настроить учетные записи нажимаем Manage Virtual Hub, затем Manage Users, создаем нового пользователя. Вводим имя, а также задаем тип аутентификации. Поддерживаются следующие виды аутентификации: анонимный, пароль, индивидуальный сертификат, подписанный сертификат, аутентификация через сервер RADIUS и контроллер домена Windows NT. Для примера, создадим пользователя Test с парольной защитой.
Настройка VPN клиентов.
На клиентском компьютере настроим подключение по протоколу L2TP/IPsec с общим ключом.
По умолчанию клиентам присваиваются IP адреса того же диапазона DHCP сервера, к которому подключен VPN сервер.
Нельзя не отметить, что у SoftEther VPN имеется собственный VPN клиент, который по заявлению разработчика работает быстрее и шифрует трафик с помощью SSL. Таким образом, его трудно отличить от HTTPS, следовательно, VPN будет работать даже в сетях где другие протоколы заблокированы.
Установка и настройка собственного клиента довольно проста. После стандартной инсталляции клиента нажимаем пункт Add VPN Connection и соглашаемся создать виртуальный сетевой адаптер.
Далее пишем имя адаптера.
Затем появится окно создания нового VPN подключения, указываем здесь адрес сервера, порт, имя виртуального хаба на сервере и учетные данные пользователя.
Если вдруг, при подключении VPN соединения локальная сеть становится неопознанной, то необходимо нажать Advanced Settings (см. картинку выше) и поставить галочку No Adjustments of Route Table. Также можно изменить приоритеты сетевых подключений, подробнее в статье.
На этом всё, спасибо за внимание.
Обновлено: 25.08.2022
Опубликовано: 15.05.2022
Используемые термины: SoftEther, Linux, VPN.
Установка SoftEther VPN на Linux выполняется из исходников. Мы рассмотрим процесс компиляции и установки программного продукта в командной строке Linux. Инструкция протестирована на Ubuntu и Rocky Linux (CentOS). Настройку сервера мы выполним в графическом интерфейсе Server Manager. В качестве решения VPN будет использоваться OpenVPN.
Подготовка системы
Сборка SoftEther
Настройка запуска сервиса
Создание пароля для подключения
Общая настройка SoftEther
Установка программы для управления
Подключение к сервису и настройка с помощью мастера
Создание пользователя для подключения к VPN
Настройка NAT
Настройка OpenVPN
Примеры управления сервером из командной строки
Другие инструкции по настройке VPN
Настройка анонимности
Читайте также
Предварительная настройка
Перед установкой сервера VPN выполним предварительные настройки.
1. Установка пакетов, необходимых для установки приложения
Для загрузки, сборки и установки SoftEther нам нужны дополнительные компоненты:
- wget — для загрузки исходников.
- tar — для распаковки архивов.
- make — компиляция приложения из исходников.
- gcc — набор компиляторов для разных языков программирования.
Их может не быть в системе и требуется установка. В зависимости от типа дистрибутива, наши действия будут немного отличаться.
а) Deb (Debian, Ubuntu, Astra Linux):
apt update
apt install wget tar make gcc
б) RPM (Rocky Linux, CentOS, Oracle Linux):
yum install wget tar make gcc
2. Настройка брандмауэра
В нашем примере мы хотим использовать OpenVPN, поэтому нам нужен порт 1194 (если мы захотим его поменять, то подставляем свое значение). Также нам нужно открыть порт 5555 — по нему мы будем подключаться к системе для управления настройками из графического интерфейса.
В зависимости от утилиты управления брандмауэром, наши действия будут отличаться.
а) Iptables (как правило, для Debian/Ubuntu):
iptables -I INPUT -p tcp —dport 1194 -j ACCEPT
iptables -I INPUT -p udp —dport 1194 -j ACCEPT
iptables -I INPUT -p tcp —dport 5555 -j ACCEPT
Для сохранения правил вводим:
apt install iptables-persistent
netfilter-persistent save
б) Firewalld (как правило, для Rocky Linux/CentOS):
firewall-cmd —permanent —add-port=1194/{tcp,udp}
firewall-cmd —permanent —add-port=5555/tcp
Для сохранения правил вводим:
firewall-cmd —reload
Загрузка и установка SoftEther VPN
Переходим на страницу загрузки программного обеспечения, выбираем серверный компонент и платформу для установки:
* в нашем примере установка будет выполняться на Linux 64-bit.
Ниже появятся ссылки для загрузки SoftEther VPN — копируем последнюю RTM:
На сервере с помощью скопированной ссылки загрузим архив с исходниками:
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
Создадим каталог, где будут находиться файлы сервера:
mkdir /opt/vpnserver
Распакуем скачанный архив в созданную папку:
tar zxvf softether-vpnserver-v*.tar.gz -C /opt/vpnserver —strip-components 1
Переходим в распакованную директорию:
cd /opt/vpnserver/
Выполняем компиляцию:
make
Мы должны увидеть что-то на подобие:
After you start the server daemon, you can open the HTML5 Web Administration Console is available at
https://127.0.0.1:5555/
or
https://ip_address_of_the_vpn_server:5555/
This HTML5 page is obviously under construction, and your HTML5 development contribution is very appreciated.
Серверная часть установлена.
Запуск сервера
Для запуска сервера используется команда /opt/vpnserver/vpnserver start. Но нам нужно настроить непрерывную работу системы, поэтому мы будем использовать systemd.
Создаем файл:
vi /etc/systemd/system/vpnserver.service
[Unit]
Description=SoftEther VPN Server
After=network.target
[Service]
Type=forking
ExecStart=/opt/vpnserver/vpnserver start
ExecStop=/opt/vpnserver/vpnserver stop
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
[Install]
WantedBy=multi-user.target
Перечитываем конфигурацию systemd:
systemctl daemon-reload
Разрешаем автозапуск и стартуем vpnserver:
systemctl enable vpnserver —now
Проверяем состояние:
systemctl status vpnserver
Смотрим, на каких портал слушает сервис:
ss -tunlp | grep vpnserver
Мы должны увидеть что-то на подобие:
udp UNCONN 0 0 0.0.0.0:49032 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=5),(«vpnserver»,pid=15458,fd=5))
udp UNCONN 0 0 0.0.0.0:58441 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=11))
udp UNCONN 0 0 127.0.0.1:1194 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=47))
udp UNCONN 0 0 10.0.2.18:1194 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=46))
udp UNCONN 0 0 0.0.0.0:36046 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=16))
udp UNCONN 0 0 0.0.0.0:23986 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=43))
udp UNCONN 0 0 [::1]:1194 [::]:* users:((«vpnserver»,pid=15459,fd=49))
udp UNCONN 0 0 [fe80::a00:27ff:fedc:7a3d]%enp0s3:1194 [::]:* users:((«vpnserver»,pid=15459,fd=48))
tcp LISTEN 0 128 0.0.0.0:1194 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=35))
tcp LISTEN 0 128 0.0.0.0:5555 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=39))
tcp LISTEN 0 128 0.0.0.0:443 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=26))
tcp LISTEN 0 128 0.0.0.0:992 0.0.0.0:* users:((«vpnserver»,pid=15459,fd=31))
tcp LISTEN 0 128 [::]:1194 [::]:* users:((«vpnserver»,pid=15459,fd=37))
tcp LISTEN 0 128 [::]:5555 [::]:* users:((«vpnserver»,pid=15459,fd=41))
tcp LISTEN 0 128 [::]:443 [::]:* users:((«vpnserver»,pid=15459,fd=28))
tcp LISTEN 0 128 [::]:992 [::]:* users:((«vpnserver»,pid=15459,fd=33))
Другими словами, vpnserver запускается на большом количестве портов.
Сервис работает и можно переходить к его настройке.
Создаем пароль администратора
Для администрирования SoftEther, создаем пароль администратора. Вводим:
/opt/vpnserver/vpncmd
Система задаст вопрос, какой сервис нам нужен — выбираем Management of VPN Server or VPN Bridge (номер 1):
1. Management of VPN Server or VPN Bridge
2. Management of VPN Client
3. Use of VPN Tools (certificate creation and Network Traffic Speed Test Tool)
Select 1, 2 or 3: 1
На следующие два вопроса просто нажимаем Enter.
Мы окажемся в командной оболочке SoftEther. Вводим:
> ServerPasswordSet
И дважды задаем пароль, который планируем использовать:
Password: ***********
Confirm input: ***********
The command completed successfully.
Готово — выходим в Linux shell:
> quit
Настройка сервера SoftEther
В нашем примере мы будем выполнять настройку сервера с помощью графической консоли, установленной на Windows. Рассмотрим подробнее:
- Установку утилиты для управления SoftEther.
- Базовую настройку сервера с помощью мастера настройки.
- Создание пользователя для подключения к VPN.
- Включение NAT.
Поехали.
Установка утилиты управления сервером VPN
Снова переходим на страницу загрузки SoftEther, выбираем VPN Server Manager и платформу для установки:
Скачиваем последнюю версию приложения:
После загрузки файла, запускаем его — откроется мастер установки. Выбираем установку утилиты для администрирования:
На остальные вопросы просто отвечаем Далее. Установка завершена.
Подключение к серверу и начальная настройка
Запускаем установленную утилиту SE-VPN Server Manager (Tools). Переходим к созданию нового подключения, кликнув по New Settings:
В открывшемся окне заполняем данные по нашему серверу — указываем произвольное имя для подключения, вводим имя сервера или его IP-адрес, выбираем порт для подключения 5555, вводим пароль администратора (который мы создали на шаге выше):
Нажимаем ОК.
В следующем окне ставим галочку Remote Access VPN Server (это наиболее встречаемый сценарий работы VPN — клиенты получают доступ к внутренней сети через сервер VPN):
Нажимаем Next.
Подтверждаем наши действия по инициализации настройки:
Даем произвольное название для Virtual Hub Name:
Приложение позволяет зарегистрировать DNS имя для нашего сервера в домене softether.net — оставляем предложенное имя или задаем свое:
Остальные шаги мастера настройки можно пропустить. Начальная настройка завершена.
Создание пользователя
Для аутентификации на сервере VPN при подключении к нему клиентом, создадим пользователя. Для этого нажимаем по Manage Virtual Hub:
Далее кликаем по Manage Users:
Переходим к созданию нового пользователя, нажав New:
Заполняем форму создания новой учетной записи — достаточно ввести имя пользователя и пароль:
* нам доступно несколько способов аутентификации, но в данной инструкции ограничимся входом по паролю.
Нажимаем по OK для создания пользователя и закрываем окно со списком пользователей (Exit).
Включение SecureNAT
В окне настройки виртуального хаба, кликаем по Virtual NAT and Virtual DHCP Server (SecureNAT):
Кликаем по Enable SecureNAT:
Нажимаем OK:
Закрываем окно настройки виртуального хаба.
Наш сервер подготовлен для настройки VPN.
Конфигурирование OpenVPN
SoftEther поддерживаем возможность настройки VPN на базе различных протоколов и технологий. В нашем примере мы сконфигурируем OpenVPN.
Нашу настройку необходимо выполнить на сервере и клиенте. Рассмотрим процесс пошагово.
Настройка сервера
В окне настройки сервера кликаем по OpenVPN / MS-SSTP Setting:
Проверяем, чтобы стояла галочка Enable OpenVPN Clone Server Function, а также задаем порт, на котором будет слушать наш сервер OpenVPN:
* порт 1194 является портом по умолчанию для OpenVPN.
Также кликаем по Generate a Simple Configuration File for OpenVPN Clients — появится окно выбора каталога, в котором нужно сохранить конфигурационные файлы. Переносим на компьютер, с которого нужно подключиться к серверу файл server_openvpn_remote_access_l3.ovpn.
Закрываем окно, кликнув OK.
Настройка клиента
Подробнее работа с клиентом OpenVPN рассмотрена в инструкции Настройка OpenVPN клиента. Мы для примера кратко рассмотрим подключение из под компьютера с Windows.
Заходим на официальную страницу загрузки openvpn и скачиваем клиента для Windows:
Запускаем скачанный файл и устанавливаем программу, нажимая «Далее».
Переходим в папку C:Users<USERNAME>OpenVPNconfig (предполагается, что системный диск — диск С; <USERNAME> — имя учетной записи, под которой мы зашли в систему). И копируем в нее файл server_openvpn_remote_access_l3.ovpn, который мы ранее сгенерировали на сервере.
Запускаем с рабочего стола программу «OpenVPN GUI».
Нажимаем правой кнопкой по появившемуся в трее значку и выбираем «Подключиться»:
Произойдет подключение и значок поменяет цвет с серого/желтого на зеленый.
Некоторые полезные команды
Мы уже немного пользовались утилитой командной строки для управления VPN. Это vpncmd. В данном разделе приведем несколько примеров ее использования.
Подключение
Для начала, заходим в консоль управления SoftEther с помощью vpncmd:
/opt/vpnserver/vpncmd
На первый вопрос отвечаем 1 — управление сервером:
By using vpncmd program, the following can be achieved.
1. Management of VPN Server or VPN Bridge
2. Management of VPN Client
3. Use of VPN Tools (certificate creation and Network Traffic Speed Test Tool)
Select 1, 2 or 3: 1
На второй вопрос можно не отвечать, нажав Enter:
Hostname of IP Address of Destination:
На третий вопрос вводим имя нашего хаба (его мы задали при настройке сервера через графическую утилиту):
Specify Virtual Hub Name: VPN_Server
Мы должны увидеть:
VPN Server/VPN_Server>
Мы подключились для управления сервером.
Управление пользователями
1. Для создания пользователя вводим:
> UserCreate
2. Для удаления пользователя:
> UserDelete
3. Чтобы сменить пароль пользователю вводим:
> UserPasswordSet
Управление сервером
Для смены пароля администратора сервера вводим:
> ServerPasswordSet
Настройка анонимности
Для обеспечения полной анонимности при использовании VPN-сервера, делаем дополнительные настройки.
1. Необходимо, чтобы время на сервере совпадало с временем на компьютере/телефоне, откуда мы подключаемся к данному серверу.
На стороне сервера необходимо задать часовой пояс, например, если наш прокси находится в Германии, вводим:
timedatectl set-timezone Europe/Berlin
На стороне клиента либо меняем часовой пояс в системе, либо устанавливаем плагин для браузера, например, для Mozilla Firefox и меняем часовой пояс уже в нем.
2. Отключение icmp.
По времени ответа на ping можно определить отдаленноесть клиента от прокси. Чтобы проверку нельзя было выполнить, отключаем на сервере icmp. Для этого создаем файл:
vi /etc/sysctl.d/icmp.conf
net.ipv4.icmp_echo_ignore_all=1
И применяем настройки:
sysctl -p /etc/sysctl.d/icmp.conf
Однако, данный метод сработал не для всех операционных систем на базе DEB. В этом случае есть альтернативный способ — задать блокировку с помощью брандмауэра:
iptables -I INPUT -p icmp —icmp-type echo-request -j DROP
И сохраним настройки:
netfilter-persistent save
3. Проверяем анонимность.
Открываем браузер, который работает через прокси и переходим на страницу 2ip.ru/privacy — кликаем по Проверить:
Будет выполнена проверка анонимности нашего сервера.
Читайте также
Другие инструкции по работе с VPN, которые могут оказаться интересными:
1. Как настроить сервер OpenVPN на Windows.
2. Настройка и использование OpenVPN на Ubuntu.
3. Установка и настройка OpenVPN на Linux CentOS 7.
4. Настройка доступа к локальной сети клиентам OpenVPN в Linux.
5. Настройка IPSEC L2TP VPN-сервера на CentOS 7.