Настройка SoftEther VPN Client на Linux Debian/Ubuntu/Mint (связка Linux-Windows)

04.02.20

База данных - Администрирование СУБД

На сервере установлен и настроен VPN через программное обеспечение SoftEter VPN Server, настроены клиенты с доступом по сертификату, встала задача настроить доступ клиента из Linux и подключиться по RDP (VNC) в Windows к серверу VPN.

Все документацию по приведенным ниже командам можно найти тут: https://www.softether.org/4-docs/1-manual/6._Command_Line_Management_Utility_Manual/6.5_VPN_Client_Management_Command_Reference#6.5.28_.22AccountCertSet.22:_Set_User_Authentication_Type_of_VPN_Connection_Setting_to_Client_Certificate_Authentication

Скачиваем SoftEteh VPN for Linux, распаковываем загруженный файл (tar.gz).

Извлечение произвел в домашний каталог (/home/clickup/vpnclient)

1. Установка

Открываем терминал (Ctrl+Alt+T) и вводим команды:

 cd ./vpnclient

Переходи в домашний каталог и вводим "make" принимаем лицензионные соглашения: 1

После завершения команды "make" запускаем установленный VPN клиент из того же каталога:

sudo ./vpnclient start

2. Первоначальная настройка vpn client

Чтобы перейти к конфигурированию клиентской части переходим в командную строку VPN-клиента:

sudo ./vpncmd

Перед настройкой проверим готовность клиента:

Выбираем "3" чтобы попасть в раздел Use of VPN Tools (certificate creation and Network Traffic Speed Test Tool

Выполняем команду "check"

Если все тесты пройдены без ошибок, можно переходит дальше, выход из vpncmd Ctrl+C.

После выхода, опять выполняем команду: "sudo ./vpncmd" выбираем пункт "2" (Management of VPN Client)

Программа запросит IP адрес хоста, нажимаем "Enter" (по умолчанию подключается к "localhost").

2.1 Создание и настройка VPN адаптера, и аккаунта для подключение к VPN сети

  •  Создайте виртуальный интерфейс для подключения к VPN-серверу:

 - NicCreate vpn    (где "vpn" это имя виртуального адаптера), другие команды (NicDelete - удалить адаптер, NicList - список адаптеров)

  • Создайте учетную запись VPN-клиента с помощью следующей команды

- AccountCreate NameConnect /SERVER:<IPSERVER>:5555 /HUB:<NAMEVIRTUALHUB> /USERNAME:<username> /NICNAME:<name nic adaptera>

- ПРИМЕР: AccountCreate Terminal /server:91.91.91.91:5555 /HUB:VPN /USERNAME:Clickup /NICNAME:VPN  

   (где "NameConnect" это просто имя подключения), другие команды (AccountDelete - удалить, AccountList - список)

  • Настройка учетной записи по вашим данным для подключения по аналогии как в Windows клиенте:

Если вы получите сообщение "The command completed successfully", то все сделано верно, c помощью AccountList можно посмотреть созданное подключение.

ВАЖНО! Варианты аутентификации на сервере.

В некоторых случаях необходимо указать тип аутентификации пользователя и указать необходимые параметры. Чтобы изменить эту информацию, вы можете использовать такие команды, как AccountAnonymousSet, AccountPasswordSet, AccountCertSet и AccountSecureCertSet.

 AccountAnonymousSet - анонимная аутентификация

 AccountPasswordSet- аутентификация по пользователю и паролю

 AccountCertSet - аутентификация по пользовательскому сертификату

 AccountSecureCertSet- аутентификация пользователя по смарт-картам

В нашем случае аутентификация будет происходить по пользовательскому сертификату AccountCertSet, для этого выполняем команду:

 - AccountSecureCertSet [имя] [/ CERTNAME: путь до сертификата] [/ KEYNAME: путь до ключа]

 - ПРИМЕР: AccountCertSet Terminal /LOADCERT:/home/clickup/Serv/Terminal.cer /LOADKEY:/home/clickup/Serv/Terminal.key

После выполнения у вас запросит пароль для сертификата (если он установлен).

Подключение готово, можно посмотреть список подключений выполнив команду AccountList, в статусе подключение будет видно его текущее состояние (offline, connected).

Чтобы подключиться необходимо выполнить команду: 

 - AccountConnect Terminal   (где Terminal это имя созданного аккаунта для подключения)

После чего статус должен измениться на Connected.

Если все сделано верно то вы подключитесь к VPN сети со своими учетными данными.

На сервере VPN вы сможете увидеть активное подключение, работающее пока по Ipv6.

3. Получение IP адреса для виртуального адаптера и настройка маршрутизации.

Прежде чем начать необходимо проверить включен ли "ip forward" (маршрутизация), выполняем команду:

cat /proc/sys/net/ipv4/ip_forward    если после выполнения возврат "1", то все включено, если "0" то выполняем команду:

sudo nano /etc/sysctl.conf    (переходим к редактированию файла конфига), находим строку net.ipv4.ip_forward=1 и раскомментируем ее, сохраняем файл.

и проверяем cat /proc/sys/net/ipv4/ip_forward  команда должна вернуть "1".

Получение IP адреса от сервера.

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

- sudo dhclient <virtual_network_adapter_name>

- Пример: sudo dhclient vpn_vpn

VPN-сервер должен выдать вам IP-адрес для вашего виртуального адаптера (если на сервере не отключен DHCP).

  

Либо IP адрес можно прописать вручную выполнив команду:

sudo nano /etc/network/interfaces

Завершающем шагом будет указание статических маршрутов, выполняем команду, чтобы увидеть таблицу маршрутизации:

 sudo netstat -rn  

 ip route

Количество маршрутов зависит от сложности построения сети и как далеко необходимо пробиться в нашем случае схема была следующая:

Команда трассировки:  sudo traceroute -I 10.10.10.1 (параметр -I "icmp" отправлять пакеты из Linux, которые понимает Windows)

Поэтому в нашем случае достаточно 2 маршрутов.
sudo ip route add 10.10.10.0/24 dev vpn_vpn
sudo ip route add 192.168.100.0/24 via 10.10.10.1

Возможно, вам понадобится больше маршрутов.

Доступ был получен вход по RDP осуществлен во внутреннюю сеть.

Как настроить SoftEther VPN Server и Client для Windows рассмотрено в этой статье: //infostart.ru/public/1176534/

См. также

Linux Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Задача разработки перед выполнением проходит пять стадий принятия: отрицание, гнев, поиск в интернете, депрессия и чтение документации. Некоторым темы, затронутые в публикации, будут знакомы, некоторым покажутся банальными, но, надеюсь, некоторым они сэкономят немного времени и нервов. По сути это шпаргалка самому себе по тем вещам, которые потребовали более часа поисков.

23.12.2024    2143    capitan    7    

15

HighLoad оптимизация Администрирование СУБД Программист Платформа 1С v8.3 Бесплатно (free)

В рамках мастер-класса мы запустим нагрузочный тест на 3К пользователей и посмотрим, как будет вести себя PostgreSQL при такой нагрузке.

11.12.2024    1268    Tantor    1    

6

Linux Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Александр Кириллов, руководитель группы разработки компании «ИТ-Экспертиза», на конференции INFOSTART TECH EVENT 2024 выступил с докладом на тему «Как найти и устранить платформеннозависимый код менее, чем за 5 лет». Материал получился интересным и объемным, поэтому мы решили сделать на базе выступления Александра цикл статей. В первой части начнем с особенностей работы информационных систем 1С под управлением ОС Linux.

06.12.2024    1458    it-expertise    6    

21

Linux Системный администратор Программист Бесплатно (free)

Проект перевода 10+ систем 1С на 2000+ пользователей в Авито завершен успешно, преодолев технические трудности и «черных лебедей» в виде неопределенности, демотивации, потерь производительности и нереалистичных требований руководства. Расскажем об опыте проекта, в котором было «очень страшно», но в итоге всё получилось.

29.11.2024    1569    kirill.skoromykin    1    

7

Администрирование СУБД Системный администратор Программист

В крупных компаниях, где много типовых и сильно доработанных баз с режимом работы 24/7, переход с MS SQL на PostgreSQL затягивается. Получается гетерогенная структура – когда прод уже на PostgreSQL, а разработка и тестирование – пока на MS SQL. О том, какие варианты помогут постепенно перевести прод с несколькими базами MS SQL на PostgreSQL, не сломав среду тестирования и разработки, пойдет речь в статье.

21.11.2024    3565    a.doroshkevich    8    

15

Linux Программист Бесплатно (free)

При многолетней эксплуатации 1С на Windows и MS SQL в базе накапливаются не самые оптимальные запросы, COM-объекты и скрипты, зависящие от ОС. Из-за этого процесс перехода на PostgreSQL и переноса сервера 1С на Linux неизбежно осложняется длительным исправлением кода и оптимизацией запросов. Расскажем о том, как с задачей такого рефакторинга справились в компании Avito.

13.11.2024    6209    klimat12    17    

28

HighLoad оптимизация Администрирование СУБД Системный администратор Программист Платформа 1С v8.3 Россия Бесплатно (free)

Мы исследуем проблему долгого выполнения запросов PostgreSQL при использовании конструкции VALUES: когда она возникает, как на нее можно повлиять, а главное, почему ее продуманная отработка важна для более быстрого функционирования решений на базе 1С

12.11.2024    1366    Tantor    20    

17

HighLoad оптимизация Администрирование СУБД Механизмы платформы 1С Программист Платформа 1С v8.3 ИТ-компания Россия Бесплатно (free)

В данной статье мы рассмотрим, как работает механизм временных таблиц на postgres на платформе 8.3.23 и что изменилось в нем при добавлении новых возможностей в платформе 8.3.25. А также на примере покажу, как понимание работы платформы позволяет оптимизировать СУБД для работы с 1С.

29.10.2024    4484    Tantor    38    

37
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Megaiff 11.02.20 01:31 Сейчас в теме
Картинки сдохли презалейте.
2. murat_zh 06.07.20 18:59 Сейчас в теме
Доброе время суток! можно вашей помощи по поводу маршрутизации с использованием softEther VPN под Windows
3. ClickUp 734 06.07.20 19:38 Сейчас в теме
Добрый день. Можно. вот статья под настройку виндовс.
https://infostart.ru/public/1176534/
4. ClickUp 734 06.07.20 19:40 Сейчас в теме
По маршрутизации и маршрутам можете написать в личку, описать строение сети что как и куда нужно попасть.
5. murat_zh 07.07.20 13:10 Сейчас в теме
(4) В личку сообщение не отправляются
6. user1092887 11.11.20 13:21 Сейчас в теме
После перезагрузки компьютера как вернуть опять подключение? Мои клиентские компьютеры и их владельцы это сами не сделают! Как это автоматизировать проще?
7. ClickUp 734 11.11.20 15:14 Сейчас в теме
Сделайте Bash скрипт который будет это делать при запуске.
https://losst.ru/napisanie-skriptov-na-bash
8. user1553633 01.03.21 08:28 Сейчас в теме
Здраствуйте, можно пожалуйста уточнить, как правильно подключаться по логину/паролю и что значит "Specify standard or radius"
9. user1553633 01.03.21 09:40 Сейчас в теме
AccountConnect ES
input pass
confim....

Далее
Specify standard or radius

Если пишу standard, ошибка, если radius то всё ок, но при подключении (AccountConnect) AccountConnect command - Start Connection to VPN Server using VPN Connection Setting
Error occurred. (Error code: 35)
10. Old_School 121 27.11.22 13:22 Сейчас в теме
Прочитал, установил по статье - работает. Поставил +.
Копеечка по автозапуску.
Можно через юниты сделать.

Например вот так:
Это первый - который запускает службу:
[Unit]
Description=SoftEther VPN Client
After=network.target

[Service]
Type=forking
ExecStart=/home/<Имя пользователя>/vpnclient/vpnclient start
ExecStop=/home/<Имя пользователя>/vpnclient/vpnclient stop
Restart=on-failure

[Install]
WantedBy=multi-user.target

Это второй - который поднимает подключение через dhсp (вариант через статику также привел - закоментирован)
[Unit]
Description=DHCP Client for SoftEther VPN
After=softether_client.service
Requires=softether_client.service
PartOf=softether_client.service

[Service]
Type=forking
RemainAfterExit=true
ExecStart=/sbin/dhclient vpn_vpn
#это для статики
#ExecStart=/sbin/ifconfig vpn_vpn 192.168.37.202 netmask 255.255.255.0 up
#ExecStartPost=/etc/network/if-up.d/routes
ExecStop=/sbin/dhclient -r vpn_vpn
#ExecStop=/sbin/ifconfig vpn_vpn down
Restart=always
RestartSec=30

[Install]
WantedBy=multi-user.target
11. user1681229 05.12.22 15:14 Сейчас в теме
(6)
для автоматизаии такой ss.sh ::

ps. правда аутентификаия там по паролю, а не по сертификату.
Прикрепленные файлы:
ss.sh
Оставьте свое сообщение