Zjistěte, jak nainstalovat a nakonfigurovat OpenVPN Server na CentOS 8 pomocí níže uvedeného odkazu;
Nastavte OpenVPN Server na CentOS 8
Instalace a konfigurace klienta OpenVPN na CentOS 8/Ubuntu 18.04
Abychom demonstrovali komunikaci dvou serverů na různých intranetech, máme dva servery, Ubuntu 18.04 a CentOS 8, které nemohou komunikovat, protože jsou v různých sítích LAN, dosažitelných pouze přes OpenVPN Server. Tyto dva servery mají připojena pouze rozhraní NAT.
Nainstalujte klienta OpenVPN na Ubuntu 18.04
OpenVPN spravuje několik softwarových úložišť OpenVPN (OSS), ze kterých lze nainstalovat nejnovější a stabilní verzi klienta OpenVPN. Tento seznam zdrojů však musíte vytvořit ručně, jak je uvedeno níže;
Nainstalujte podpisový klíč úložiště OpenVPN.
wget -O - https://swupdate.openvpn.net/repos/repo-public.gpg| sudo apt-key add -
Dále nainstalujte seznam zdrojů pro Ubuntu 18.04.
echo "deb http://build.openvpn.net/debian/openvpn/stable $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/openvpn-aptrepo.list
Aktualizujte mezipaměť balíčku.
apt update
Nainstalujte klienta OpenVPN na Ubuntu 18.04
apt install openvpn
Verzi pak můžete ověřit spuštěním příkazu níže;
openvpn --version
Nainstalujte klienta OpenVPN na CentOS 8
Na CentOS 8 je nejnovější OpenVPN, verze 2.4.8 v době psaní tohoto článku, poskytována úložištěm EPEL.
dnf info openvpn
Name : openvpn Version : 2.4.8 Release : 1.el8 Arch : x86_64 Size : 540 k Source : openvpn-2.4.8-1.el8.src.rpm Repo : epel Summary : A full-featured SSL VPN solution URL : https://community.openvpn.net/ License : GPLv2 ...
Chcete-li nainstalovat klienta OpenVPN na CentOS 8, musíte nainstalovat úložiště EPEL, pokud nemáte;
dnf install epel-release
Poté můžete nainstalovat klienta OpenVPN spuštěním příkazu;
dnf install openvpn
Konfigurace klienta OpenVPN na CentOS 8/Ubuntu 18.04
Abyste se mohli připojit k serveru OpenVPN, musíte vytvořit konfiguraci klienta obsahující certifikát CA, certifikát klientského serveru a klíč.
Pokud jste postupovali podle našeho průvodce nastavením serveru OpenVPN na CentOS 8, popsali jsme, jak vygenerovat soubory certifikátů klientů a klíče.
Jakmile klíče vygenerujete, zkopírujte je do klienta a poznamenejte si cestu, kde jsou uloženy.
Musíte také zkopírovat klíč HMAC a certifikát CA do klienta.
Poté můžete vytvořit konfiguraci klienta OpenVPN.
Chcete-li například vytvořit konfigurační soubor OpenVPN pro klienta, koromicha , jehož certifikáty a klíče jsou koromicha.crt a koromicha.key;
vim koromicha.ovpn
client tls-client pull dev tun proto udp4 remote 192.168.2.132 1194 resolv-retry infinite nobind #user nobody #group nogroup persist-key persist-tun key-direction 1 remote-cert-tls server auth-nocache comp-lzo verb 3 auth SHA512 tls-auth ta.key 1 ca ca.crt cert koromicha.crt key koromicha.key
Všimněte si, že v tomto nastavení jsou klientský certifikát, klíč, certifikát CA a klíč HMAC umístěny na stejné cestě jako samotná konfigurace klienta OpenVPN, koromicha.ovpn.
ls
ca.crt koromicha.crt koromicha.key koromicha.ovpn ta.key
Abyste se vyhnuli problémům s cestami k certifikátům a klíčům, můžete je vložit do konfiguračního souboru;
client
tls-client
pull
dev tun
proto udp4
remote 192.168.2.132 1194
resolv-retry infinite
nobind
#user nobody
#group nogroup
persist-key
persist-tun
key-direction 1
remote-cert-tls server
auth-nocache
comp-lzo
verb 3
auth SHA512
<tls-auth>
-----BEGIN OpenVPN Static key V1-----
feb1af5407baa247d4e772c76aed6c75
...
-----END OpenVPN Static key V1-----
</tls-auth>
<ca>
-----BEGIN CERTIFICATE-----
MIIDTjCCAjagAwIBAgIUX0VQrHTgLDabUUIOAf7tD9cGp4YwDQYJKoZIhvcNAQEL
...
WA9BBk2shVWfR849Lmkep+GPyqHpU47dZAz37ARB2Gfu3w==
-----END CERTIFICATE-----
</ca>
<cert>
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
...
/7FvJaeLqmUHnvSs5eBlRZSgtOL19SCFkG0HXdnw3LtBaoHQXxgzOkDPW1+5
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC+DI7kg6MsRoCs
...
6WdLcNtWKAcU294xJEZoOA8/
-----END PRIVATE KEY-----
</key>
Proveďte totéž na všech klientských serverech pro každého uživatele, který se potřebuje připojit k vpn.
Pokud jste si všimli, řádky níže jsou komentovány, aby se předešlo chybě, CHYBA:Příkaz přidání trasy pro Linux se nezdařil:externí program byl ukončen s chybovým stavem:2 vyprázdněním vytvořených tras před jejich opětovným přidáním při opětovném připojení.
#user nobody #group nogroup
Konfigurační soubor klienta OpenVPN je nyní připraven.
Poté se můžete na požádání připojit k serveru OpenVPN nebo nakonfigurovat server tak, aby vytvořil konfigurační soubor VPN, kdykoli se systém restartuje.
Chcete-li se připojit na vyžádání, jednoduše použijte příkaz openvpn jako;
sudo openvpn client.ovpn
nebo
sudo openvpn --config client.ovpn
Pokud je připojení k serveru OpenVPN úspěšné, měli byste vidět Initialization Sequence Completed
.
... Wed Apr 14 15:23:19 2020 ROUTE_GATEWAY 10.0.2.2/255.255.255.0 IFACE=enp0s3 HWADDR=08:00:27:8d:b0:f8 Wed Apr 14 15:23:19 2020 TUN/TAP device tun0 opened Wed Apr 14 15:23:19 2020 TUN/TAP TX queue length set to 100 Wed Apr 14 15:23:19 2020 /sbin/ip link set dev tun0 up mtu 1500 Wed Apr 14 15:23:19 2020 /sbin/ip addr add dev tun0 10.8.0.3/24 broadcast 10.8.0.255 Wed Apr 14 15:23:19 2020 /sbin/ip route add 192.168.2.132/32 via 10.0.2.2 Wed Apr 14 15:23:19 2020 /sbin/ip route add 0.0.0.0/1 via 10.8.0.1 Wed Apr 14 15:23:19 2020 /sbin/ip route add 128.0.0.0/1 via 10.8.0.1 Wed Apr 14 15:23:19 2020 Initialization Sequence Completed
Chcete-li zkontrolovat adresy IP;
[[email protected] ~]$ ip add show tun0 6: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100 link/none inet 10.8.0.3/24 brd 10.8.0.255 scope global tun0 valid_lft forever preferred_lft forever inet6 fe80::8d65:4038:acb0:b954/64 scope link stable-privacy valid_lft forever preferred_lft forever
[email protected]:~$ ip add show tun0 10: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100 link/none inet 10.8.0.2/24 brd 10.8.0.255 scope global tun0 valid_lft forever preferred_lft forever inet6 fe80::bd3d:27ff:84d5:e587/64 scope link stable-privacy valid_lft forever preferred_lft forever
Otestujte konektivitu mezi dvěma vzdálenými servery;
[email protected]:~$ ping 10.8.0.3 -c 4
PING 10.8.0.3 (10.8.0.3) 56(84) bytes of data.
64 bytes from 10.8.0.3: icmp_seq=1 ttl=64 time=3.78 ms
64 bytes from 10.8.0.3: icmp_seq=2 ttl=64 time=3.59 ms
64 bytes from 10.8.0.3: icmp_seq=3 ttl=64 time=3.61 ms
64 bytes from 10.8.0.3: icmp_seq=4 ttl=64 time=3.30 ms
--- 10.8.0.3 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3007ms
rtt min/avg/max/mdev = 3.307/3.576/3.786/0.172 ms
[[email protected] ~]$ ping 10.8.0.2 -c 4
PING 10.8.0.2 (10.8.0.2) 56(84) bytes of data.
64 bytes from 10.8.0.2: icmp_seq=1 ttl=64 time=6.77 ms
64 bytes from 10.8.0.2: icmp_seq=2 ttl=64 time=1.57 ms
64 bytes from 10.8.0.2: icmp_seq=3 ttl=64 time=4.37 ms
64 bytes from 10.8.0.2: icmp_seq=4 ttl=64 time=13.6 ms
--- 10.8.0.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 15ms
rtt min/avg/max/mdev = 1.571/6.572/13.577/4.443 ms
Měli byste být také schopni získat přístup k internetu v závislosti na nastavení tras vašeho serveru.
Spuštění klienta OpenVPN jako systémové služby
Chcete-li automaticky navázat připojení, kdykoli se server restartuje, můžete povolit službu OpenVPN client systemd.
Než to budete moci udělat, změňte příponu konfiguračního souboru VPN z .ovpn
na .conf
. Názvy souborů nahraďte odpovídajícím způsobem.
cp koromicha.ovpn koromicha.conf
Zkopírujte soubor .conf
soubor do adresáře s konfiguracemi klienta OpenVPN, /etc/openvpn/client
.
cp koromicha.conf /etc/openvpn/client
Dále spusťte službu OpenVPN klienta systemd. Nahraďte název koromicha s názvem vašeho konfiguračního souboru .conf.
systemctl start [email protected]koromicha
Chcete-li zkontrolovat stav;
systemctl status [email protected]
● [email protected] - OpenVPN tunnel for koromicha
Loaded: loaded (/lib/systemd/system/[email protected]; disabled; vendor preset: enabled)
Active: active (running) since Wed 2020-04-14 16:00:35 EAT; 8s ago
Docs: man:openvpn(8)
https://community.openvpn.net/openvpn/wiki/Openvpn24ManPage
https://community.openvpn.net/openvpn/wiki/HOWTO
Main PID: 6877 (openvpn)
Status: "Initialization Sequence Completed"
Tasks: 1 (limit: 2300)
CGroup: /system.slice/system-openvpn\x2dclient.slice/[email protected]
└─6877 /usr/sbin/openvpn --suppress-timestamps --nobind --config koromicha.conf
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: Incoming Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: ROUTE_GATEWAY 10.0.2.2/255.255.255.0 IFACE=enp0s3 HWADDR=08:00:27:4b:ff:18
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: TUN/TAP device tun0 opened
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: TUN/TAP TX queue length set to 100
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: /sbin/ip link set dev tun0 up mtu 1500
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: /sbin/ip addr add dev tun0 10.8.0.2/24 broadcast 10.8.0.255
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: /sbin/ip route add 192.168.2.132/32 via 10.0.2.2
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: /sbin/ip route add 0.0.0.0/1 via 10.8.0.1
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: /sbin/ip route add 128.0.0.0/1 via 10.8.0.1
Elb 14 16:00:37 ubuntu1804.kifarunix-demo.com openvpn[6877]: Initialization Sequence Completed
Chcete-li povolit spuštění při spouštění systému;
systemctl enable [email protected]
Úspěšně jste nainstalovali a nastavili klienta OpenVPN na Ubuntu 18.04 a CentOS 8. Tím se dostáváme na konec našeho návodu, jak nainstalovat a nakonfigurovat klienta OpenVPN na CentOS 8/Ubuntu 18.04.
Související výukové programy
Přiřaďte klientům OpenVPN statické IP adresy
Nakonfigurujte klienta strongSwan VPN na Ubuntu 18.04/CentOS 8
Nakonfigurujte IPSEC VPN pomocí StrongSwan na Ubuntu 18.04
Nainstalujte a nakonfigurujte OpenVPN Server FreeBSD 12
Nainstalujte a nastavte OpenVPN Server na Fedora 29/CentOS 7