Vpn client linux remote

Vpn client linux remote

Use the steps in this topic to install the SSL VPN-Plus client on a remote Linux site.

Prerequisites

Install Linux TCL and TK packages on the remote computer.

You must have root privileges to install the SSL VPN-Plus client.

Procedure

  1. On the remote client site, open a browser window, and type https:// ExternalEdgeInterfaceIP /sslvpn-plus/ , where ExternalEdgeInterfaceIP is the IP address of the Edge external interface where you enabled the SSL VPN-Plus service.
  2. Log in to the portal using the credentials of the remote user.
  3. Click the Full Access tab.
  4. Click the name of the installer package, and save the linux_phat_client.tgz compressed file on the remote computer.
  5. Extract the compressed file. The linux_phat_client directory is created.
  6. Open the Linux CLI and change to the linux_phat_client directory.
  7. Run the $./install_linux_phat_client.sh command.

What to do next

Log in to the SSL VPN GUI with the credentials specified in the Users section.

  • Two-factor RSA authentication is not supported for logging in to the SSL VPN client on Linux operating systems.
  • SSL VPN Linux client CLI does not validate server certificates. If server certificate validation is required, use the SSL VPN GUI for connecting to the gateway.

The SSL VPN Linux client validates the server certificate against the browser’s certificate store by default. If server certificate validation fails, you are prompted to contact your system administrator. If server certificate validation succeeds, a login prompt is displayed.

Adding a trusted CA to the trust store (for example, Firefox certificate store) is independent of the SSL VPN work flow.

Источник

Create a VPN connection from Linux Terminal

In this article, we’ll look at how to create a VPN connection from the Linux terminal console and connect to a remote VPN server from the command line. Consider how to create L2TP, PPTP, OpenVPN, and SSTP VPN connections on Linux.

Creating an L2TP VPN Connection in Linux

You can use NetworkManager to create L2TP VPN connections from the Linux console.

To install NetworkManager with L2TP support, run the command:

# yum -y install NetworkManager-l2tp
$ sudo add-apt-repository ppa:nm-l2tp/network-manager-l2tp $ sudo apt-get install network-manager-l2tp

install network-manager-l2tp on linux ubuntu

To create a new L2TP VPN connection, use the command:

$ nmcli connection add connection.id [VPNConnectionName] con-name [VPNConnectionName] type VPN vpn-type l2tp ifname -- connection.autoconnect no ipv4.method auto vpn.data "gateway = [ipv4], ipsec-enabled = yes, ipsec-psk = 0s"$(base64 
  • [VPNConnectionName]
  • [ipv4] — IP address or FQDN of L2TP/IPSEC VPN server
  • [PSK] —Pre-Shared Key (PSK)
  • [user] — VPN username
  • [user-password] — user password

The settings for a new VPN connection are saved to the /etc/NetworkManager/system-connections/ file.

List all connections in NetworkManager:

Show information about the created VPN connection:

$ nmcli c show id [VPNConnectionName]

To connect to the L2TP VPN server from the command line:

$ nmcli c up [VPNConnectionName]

Error: Connection activation failed: Could not find source connection.

In this case, check the following:

  • journactl logs;
  • the default gateway is set for the physical interface (for example, ens33 );
  • the br0 interface may be enabled on the server, but is not used. Try to remove it.

To disconnect from a VPN server, run:

$ nmcli c down [VPNConnectionName]

Adding PPTP VPN Connection in Linux

To install a PPTP VPN client on Ubuntu/Debian:

$ sudo apt install pptp-linux
$ sudo nano /etc/ppp/peers/PPTP

Add the following content:

pty "pptp YOUR_VPN_SERVER --nolaunchpppd --debug" name VPNUsername password VPNPassword remotename PPTP require-mppe-128 require-mschap-v2 refuse-eap refuse-pap refuse-chap refuse-mschap noauth debug persist maxfail 0 defaultroute replacedefaultroute usepeerdns

Save the file by pressing CTLR+X, Y -> Enter.
Change file permissions:

$ chmod 600 /etc/ppp/peers/PPTP

To connect to a PPTP VPN server, run the command:

How to Set Up SSTP VPN Connection with Command Line on Linux?

You can set up an SSTP connection to a VPN server on Linux. On Ubuntu, you can use the sstp package for nmcli.

$ sudo add-apt-repository ppa:eivnaes/network-manager-sstp $ sudo apt update $ sudo apt install network-manager-sstp sstp-client

The following command is used to connect to the SSTP VPN server:

$ sudo sstpc --cert-warn --save-server-route --user --password  usepeerdns require-mschap-v2 noauth noipdefault nobsdcomp nodeflate

You can save VPN server connection settings to a text file:

$ sudo nano /etc/ppp/peers/sstptest
 remotename sstptest linkname sstptest ipparam sstptest pty "sstpc --ipparam sstptest --nolaunchpppd sstpvpn.contoso.com" name user1 plugin sstp-pppd-plugin.so sstp-sock /var/run/sstpc/sstpc-sstp-test usepeerdns require-mppe require-mschap-v2 refuse-eap refuse-pap refuse-chap refuse-mschap nobsdcomp nodeflate 

Add the username and password for authentication on the VPN server to /etc/ppp/chap-secrets file:

# Secrets for authentication using CHAP # client server secret IP addresses user1 * xxxxxx *

Now you can connect to the SSTP VPN server using the configured connection:

To send all traffic through the VPN connection, you need to add a route:

(usually, this is ppp0 device)

Or only traffic to specific networks/hosts:

$ sudo route add -net 192.168.2.0/24 dev ppp0

Configure OpenVPN Connection Using Linux Terminal

Install the OpenVPN package on Linux:

    Debian, Ubuntu, Linux Mint, Kali Linux:

$ sudo apt-get update && apt-get upgrade $ sudo apt-get install openvpn
# yum install epel-release –y. # yum install openvpn –y

You will need the *.ovpn configuration file to connect to an OpenVPN server. In order to connect to VPN using the client.ovpn file:

$ sudo openvpn --config /etc/openvpn/client.ovpn --daemon

Check that the VPN connection is established:

To end the OpenVPN connection, press CTRL+C (if the client is running without the --daemon parameter) or run the command:

In order for an OpenVPN connection to be automatically established when Linux starts, you need to create a separate systemd unit:

$ sudo vi /lib/systemd/system/OpenVPNClientCorp.service

[Unit]
Description=Hide.me OpenVPN Client Corp
After=multi-user.target
[Service]
Type=idle
ExecStart=/usr/sbin/openvpn --config /etc/openvpn/client.ovpn
[Install]
WantedBy=multi-user.target

Change the file permissions:

$ sudo chmod 644 /lib/systemd/system/OpenVPNClientCorp.service

Add the new unit via systemctl:

$ sudo systemctl daemon-reload $ sudo systemctl enable OpenVPNClientCorp.service

I can’t fix the error Error: Connection activation failed: Could not find source connection. can you help me?

Источник

StrongSwan. Remote Access VPN с использованием MSCHAPv2-EAP

В данной статье я расскажу о том как настроить на Linux-сервере демон StrongSwan для подключения удаленных пользователей (Remote Access VPN) по протоколу IPSEC IKEv2, а в качестве протокола аутентификации клиентов будет использоваться связка MSCHAPv2-EAP.

Описание решения

image

В данной реализации Remote Access VPN для подключения к шлюзу клиент используется протокол EAP (RFC 3748) совместно с Microsoft CHAP version 2 для аутентификации.
Этот протокол используется в VPN – клиенте Windows 7 Agile. В дополнении к идентификации IKEv2 по IP-адресу клиент использует EAP идентификацию по определенному на шлюзе имени и паролю.
Шлюз проходит аутентификацию на клиенте с помощью сертификата RSA.
Схема моего стенда и решения на рисунке ниже.

Virtual IP interface — виртуальный адрес, который назначается клиенту шлюзом. Настраивается в конфигурационных файлах StrongSwan.
Основное преимущество данного решения по отношению к VPN на сертификатах в том, что не нужно импортировать каждый сертификат на клиента, достаточно знать только логин и пароль. Дополнительным преимуществом является использование для установки IPSEC соединения протокола IKEv2, который обладает рядом преимуществ по отношению к IKEv1. Описание преимуществ успешно гуглиться.

Генерация сертификатов

Генерация сертификатов является самой ответственной частью и самой трудной, именно от нее будет зависеть работоспособность нашего IPSEC=тунеля.
Сертификаты генерировались с помощью OPENSSL.
Сначала настраиваем OPENSSL:

vi /usr/lib/ssl/openssl.cnf [ CA_default ] dir = /etc/ipsec.d # Основная директория, в ней будут храниться все сертификаты certificate = $dir/cacerts/strongswanCert.pem # Здесь у нас будет лежать CA сертификат private_key = $dir/private/strongswanKey.pem # А здесь закрытый ключ CA сертификата 
cd /etc/ipsec.d mkdir newcerts touch index.txt echo “00” > serial 
Генерируем CA-сертификат.
openssl req -x509 -days 3650 -newkey rsa:2048 -keyout private/strongswanKey.pem -out cacerts/strongswanCert.pem 

Конвертируем CA сертификат в формае p.12, который понимает Windows и большинство клиентов, чтобы не было проблем с импортом

openssl pkcs12 -export -inkey private/strongswanKey.pem -in certs/strongswanCert.pem -name "host" -certfile cacerts/strongswanCert.pem -caname "strongSwan Root CA" -out CAcert.p12 
Генерируем сертификат для сервера.
openssl req -newkey rsa:1024 -keyout private/serverkey.pem -out reqs/serverreq.pem 
openssl ca -in reqs/serverreq.pem -days 730 -out certs/servercert.pem -notext 

При генерации сертификата обязательно нужно задать для серверного сертификата в openssl.cnf параметр subjectAltName=IP:

Настройка демона StrongSwan

Установка StrongSwan легко происходит из репазитория, либо из исходников.
Вот так должен выглядеть файл /etc/strongswan.conf:

Основные настройки должны быть выполнены в файле /etc/ipsec.conf
Секция config setup, которая определяет базовые параметры:

config setup strictpolicy=no charonstart=yes plutostart=no charondebug="ike 2, knl 3, cfg 0" 
conn %default / определяет базовые параметры всех IPSEC-соединений ikelifetime=60m keylife=20m rekeymargin=3m keyingtries=1 dpdaction=restart dpdelay=30s dpdtimeout=180s conn rw / название IPSEC-соединения left= / адрес внешнего интерфейса leftsubnet= / подсеть, к которой мы даем доступ leftid= leftcert=/etc/ipsec.d/certs/servercert.pem / говорим какой сертификат использовать для установки IKE SA leftauth=pubkey / говорим, что мы авторизуемся у клиента с помощью сертификата RSA right=%any / к нам можно подключиться с любого IP rightauth=eap-mschapv2 rightsendcert=never rightsourceip= / из этой подсети будет выдаваться IP-адрес для клиента auto=add / подключение будет инициироваться клиентом keyexhcnage=ikev2 type=tunnel 

Так же нам нужно указать в файле /etc/ipsec.secrets файл открытого ключа для сертификата шлюза и учетки для EAP-пользователей

: RSA /etc/ipsec.d/private/serverkey.pem "password" ivan : EAP "pass1" max : EAP "pass2" 

Приведенные выше настройки хранятся в файле /etc/ipsec.conf

Настройка клиента

Заключение

После того как настроили клиента и сервер можно перезапустить StrongSwan на сервере, делается это командой ipsec restart и пробовать подключиться клиентом. В случае успеха на шлюзе при выводе команды ipsec statusall состояние подключения будет в статусе established и будут весело бегать пинги между клиентом и сервером.
Чуть не забыл, чтобы у клиента был доступ к локальным ресурсам из подсети которая определяется в параметре leftsubnet нужно будет настроить маршрутизацию соответствующим образом и правила межсетевого экранирования (iptables).
Так же возможно использование StrongSwan для реализации L2TP over IPSEC (IKEv1), вероятно про это напишу позднее.

Источник

Читайте также:  Браузер chromium linux mint
Оцените статью
Adblock
detector