GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> OpenVPN

Weisen Sie OpenVPN-Clients statische IP-Adressen zu

In diesem Handbuch erfahren Sie, wie Sie statische IP-Adressen für OpenVPN-Clients zuweisen. In den meisten Fällen, sagen wir, wenn Sie einige Steuerelemente in Ihrer Umgebung haben, die erfordern, dass die Hosts statische IP-Adressen für die Verwaltung solcher Steuerelemente haben, müssen Sie höchstwahrscheinlich Ihren spezifischen Clients eine statische IP-Adresse zuweisen. OpenVPN unterstützt die Vergabe statischer IP-Adressen.

Statische IP-Adressen für OpenVPN-Clients zuweisen

OpenVPN hat die Möglichkeit, Clients bestimmte IP-Adressen aus dem definierten IP-Pool zuzuweisen. Um dies zu erreichen, verwendet es drei Arten von Algorithmen zur Auswahl von Client-IP-Adressen. Dazu gehören in der Reihenfolge ihrer Verwendung:

  1. Verwendung von --client-connect script . Dies beinhaltet die Ausführung des angegebenen Skripts, das eine Datei mit statischen IP-Adressen auf dem Server generiert, wenn ein Client eine Verbindung herstellt. Diese Methode ist normalerweise die erste Wahl in Betracht gezogen werden.
  2. Verwendung von --client-config-dir . Dabei wird eine Datei verwendet, die statische IP-Adressen für die Clients gemäß ihrem Client-Zertifikat-Common-Name (CN) enthält (zweite Wahl ).
  3. Verwendung von --ifconfig-pool für die Zuweisung für dynamische IP (letzte Wahl ).

Weitere Informationen finden Sie unter man openvpn .

In diesem Handbuch verwenden wir die zweite Option, bei der wir unseren OpenVPN-Server so konfigurieren, dass er eine bestimmte Datei liest, die die allgemeinen Namen der Clients und die zugeordneten IP-Adressen enthält. Dadurch wird sichergestellt, dass einem verbindenden Client eine statische IP-Adresse basierend auf dem allgemeinen Namen zugewiesen wird, der auf seinem Client-Zertifikat definiert ist.

In unserem vorherigen Leitfaden haben wir die Installation und Konfiguration eines OpenVPN-Servers auf einem CentOS 8-System behandelt.

Erstellen Sie eine Datei zum Speichern statischer IP-Adressen

Die Verwendung des client-config-dir Option, erfordert, dass die den sich verbindenden Clients zuzuweisenden statischen IP-Adressen in einer Datei gespeichert werden, die vom OpenVPN-Server gelesen werden kann.

Öffnen Sie daher die Konfigurationsdatei des OpenVPN-Servers /etc/openvpn/server/server.conf , und legen Sie Ihren Pfad zur statischen IP-Zuweisungsdatei als Wert für client-config-dir Parameter.

vim /etc/openvpn/server/server.conf
...
# EXAMPLE: Suppose you want to give
# Thelonious a fixed VPN IP address of 10.9.0.1.
# First uncomment out these lines:
client-config-dir /etc/openvpn/ccd
...

In dieser Demo legen wir den Pfad zum Speichern der Zuweisungsdatei für statische/feste IP-Adressen fest:/etc/openvpn/ccd . Nun, ich habe versucht, den Standardpfad /etc/openvpn/server/ccd zu verwenden, aber es führte zu folgendem Fehler:

Could not access file 'ccd/koromicha': Permission denied (errno=13)
Could not access file 'ccd/DEFAULT': Permission denied (errno=13)

Als Umgehung haben wir uns entschieden, einen anderen Pfad wie oben zu verwenden.

OpenVPN-Clients statische IP-Adressen zuweisen

Für jeden OpenVPN-Client, dem Sie eine statische IP-Adresse zuweisen möchten, müssen Sie den allgemeinen Namen aus diesem spezifischen Client-Zertifikat extrahieren.

In unserer Demo haben wir zwei OpenVPN-Clients erstellt, koromicha und johndoe . Um die allgemeinen Namen aus dem Clientzertifikat zu extrahieren, verwenden Sie openssl Befehl wie unten gezeigt. Achten Sie darauf, die Client-Zertifikate zu ersetzen .

openssl x509 -subject -noout -in /etc/openvpn/client/koromicha/koromicha.crt
subject=CN = koromicha
openssl x509 -subject -noout -in /etc/openvpn/client/johndoe/johndoe.crt
subject=CN = johndoe

Sobald Sie die gemeinsamen Namen für die Clients haben, können Sie ihnen mit ifconfig-push Möglichkeit. Zum Beispiel, um den Client mithilfe des Zertifikats mit koromicha als allgemeiner Name eine IP-Adresse, 10.8.0.50 und Client, der das Zertifikat mit johndoe als CN eine IP-Adresse von 10.8.0.60 , so erfolgt die Zuweisung;

echo "ifconfig-push 10.8.0.50 255.255.255.0" > /etc/openvpn/ccd/koromicha
echo "ifconfig-push 10.8.0.60 255.255.255.0" > /etc/openvpn/ccd/johndoe

Beachten Sie, dass die Zuweisung der statischen IP-Adressen von der Topologie abhängt, die Sie für Ihren OpenVPN-Server konfiguriert haben. In unserem Fall setzen wir die Topologie auf subnet;

# Network topology
...
topology subnet

Lesen Sie mehr über OpenVPN-Adressierungskonzepte.

Starten Sie OpenVPN Server neu;

systemctl restart [email protected]

Überprüfen Sie immer die Protokolle;

tail -f /var/log/openvpn/openvpn.log

Überprüfen Sie die statische IP-Adresszuweisung auf OpenVPN-Clients

Angenommen, Sie haben bereits die entsprechende Client-OpenVPN-Konfigurationsdatei auf Ihren Clients, initiieren Sie die Verbindung und überprüfen Sie die IP-Adresszuweisung.

sudo openvpn johndoe.ovpn

Überprüfung der zugewiesenen IP-Adresse;

ip add show tun0
8: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100
    link/none 
    inet 10.8.0.60/24 brd 10.8.0.255 scope global tun0
       valid_lft forever preferred_lft forever
    inet6 fe80::ea62:fbae:5b45:2d78/64 scope link stable-privacy 
       valid_lft forever preferred_lft forever

Auf dem anderen Client:

ip add show tun0
12: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100
    link/none 
    inet 10.8.0.50/24 brd 10.8.0.255 scope global tun0
       valid_lft forever preferred_lft forever
    inet6 fe80::c928:c76d:fbd4:6c6a/64 scope link stable-privacy 
       valid_lft forever preferred_lft forever

Überprüfen der Konnektivität zwischen den beiden Clients;

ping 10.8.0.60 -c 3
PING 10.8.0.60 (10.8.0.60) 56(84) bytes of data.
64 bytes from 10.8.0.60: icmp_seq=1 ttl=64 time=4.67 ms
64 bytes from 10.8.0.60: icmp_seq=2 ttl=64 time=3.86 ms
64 bytes from 10.8.0.60: icmp_seq=3 ttl=64 time=4.05 ms

--- 10.8.0.60 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 3.864/4.196/4.670/0.351 ms

Das ist es. Wir sind am Ende unserer Anleitung zum Zuweisen statischer IP-Adressen für OpenVPN-Clients angelangt.

Verwandte Tutorials

Verbinden Sie sich mit OpenVPN mit Network Manager unter CentOS 8/Ubuntu 18.04

Installieren und konfigurieren Sie den OpenVPN-Client unter CentOS 8/Ubuntu 18.04

Konfigurieren Sie den strongSwan VPN-Client auf Ubuntu 18.04/CentOS 8

OpenVPN
  1. Konfigurieren Sie OpenVPN-Clients für die Verwendung eines bestimmten DNS-Servers

  2. Konfigurieren Sie OpenVPN so, dass es bei der Anmeldung auf Windows-Systemen zur Eingabe von Anmeldeinformationen auffordert

  3. Die Top 5 Google Drive-Clients für Linux

  4. Die 7 besten BitTorrent-Clients für Linux im Jahr 2021

  5. Wie vergebe ich einen Namen für einen Bildschirm?

PiVPN – Einfachste OpenVPN-Einrichtung und -Konfiguration, entwickelt für Raspberry Pi

Statische und dynamische IP-Adresskonfigurationen für DHCP

So weisen Sie unter Ubuntu Linux eine statische IP-Adresse zu

Erstellen von Zertifikaten und Schlüsseln für Ihren OpenVPN-Server

Wie weist man einer Website in Plesk eine dedizierte IP-Adresse zu?

Statische IP-Adresse mit NetworkManager für Fedora