So richten Sie einen OpenVPN -Server auf Ubuntu 20 ein.04

So richten Sie einen OpenVPN -Server auf Ubuntu 20 ein.04

Ubuntu 20.04 fokale Fossa ist die letzte langfristige Unterstützung einer der am häufigsten verwendeten Linux -Verteilungen. In diesem Tutorial sehen wir, wie Sie dieses Betriebssystem verwenden, um einen OpenVPN -Server zu erstellen und ein Erstellen zu erstellen .ovpn Datei Wir werden von unserem Client -Computer eine Verbindung dazu herstellen.

In diesem Tutorial lernen Sie:

  • So generieren Sie eine Zertifikatbehörde
  • So generieren Sie Server- und Client -Zertifikat und Schlüssel
  • So unterschreiben Sie ein Zertifikat bei der Zertifikatbehörde
  • So erstellen Sie Diffie-Hellman-Parameter
  • So generieren Sie einen TLS-Auth-Schlüssel
  • So konfigurieren Sie den OpenVPN -Server
  • Wie man eine erzeugt .OVPN -Datei zur Verbindung zum VPN
So richten Sie einen OpenVPN -Server auf Ubuntu 20 ein.04

Softwareanforderungen und Konventionen verwendet

Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Ubuntu 20.04 FOSSA FOSSA
Software OpenVPN, UFW, Easy-RSA
Andere Root -Berechtigungen zur Ausführung von Verwaltungsaufgaben
Konventionen # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl
$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können

Szenario -Setup

Bevor wir mit der tatsächlichen VPN -Konfiguration fortfahren, sprechen wir über die Konventionen und die Einrichtung, die wir in diesem Tutorial annehmen werden.

Wir werden zwei Maschinen verwenden, die beide von angetrieben werden von Ubuntu 20.04 FOSSA FOSSA. Der erste, Camachine wird verwendet, um unsere zu hosten Zertifizierungsstelle; der Zweite, openvpnmachine wird der der sein, den wir als tatsächlich einrichten werden VPN Server. Es ist möglich, dieselbe Maschine für beide Zwecke zu verwenden, aber es wäre weniger sicher, da eine Person, die gegen den Server verstößt, die Zertifikatbehörde „implizieren“ und unerwünschte Zertifikate unterzeichnen könnte (das Problem ist besonders relevant, wenn Sie nur dann relevant sind, wenn Sie Planen Sie mehr als einen Server oder wenn Sie planen, dieselbe CA für andere Zwecke zu verwenden. Um Dateien zwischen einem und dem anderen zu verschieben, verwenden wir die scp (Secure Copy) Befehl. Die 10 Hauptschritte, die wir ausführen, sind die folgenden:

  1. Generierung der Zertifikatbehörde;
  2. Generierung der Serverschlüssel- und Zertifikatanforderung;
  3. Unterzeichnung der Serverzertifikatanforderung bei der CA;
  4. Generierung der Diffie-Hellman-Parameter auf dem Server;
  5. Generierung von TLS-AUTH-Schlüssel auf dem Server;
  6. OpenVPN -Konfiguration;
  7. Konfiguration von Networking and Firewall (UFW) auf dem Server;
  8. Generierung eines Kundenschlüssels und einer Zertifikatanfrage;
  9. Unterzeichnung des Kundenzertifikats bei der CA;
  10. Schaffung des Kunden .OVPN -Datei zur Verbindung zum VPN.

Schritt 1 - Erzeugung der Zertifikatbehörde (CA)

Der erste Schritt auf unserer Reise besteht in der Erschaffung der Zertifizierungsstelle auf der speziellen Maschine. Wir werden als nicht privilegierter Benutzer arbeiten, um die erforderlichen Dateien zu generieren. Bevor wir beginnen, müssen wir die installieren Easy-RSA Paket:

$ sudo APT-Get-Update && sudo apt-Get -y Installieren Sie Easy-RSA 

Mit dem installierten Paket können wir die verwenden Make-Cadir Befehl zum Generieren eines Verzeichnisses mit den erforderlichen Tools und Konfigurationsdateien, in diesem Fall werden wir es aufrufen Zertifizierungsstelle. Nach der Erstellung werden wir uns darin bewegen:

$ MAKE-CADIR CERTIFICATE_AUTHORITY && CD Zertifikat_Authority 


Im Verzeichnis finden wir eine Datei mit dem Titel " vars. In der Datei können wir einige Variablen definieren, die für die Zertifikaterzeugung verwendet werden. Ein kommentierter Satz dieser Variablen finden Sie in der Linie 91 Zu 96. Entfernen Sie einfach den Kommentar und weisen Sie die entsprechenden Werte zu:

set_var easyrsa_req_country "us" set_var easyrsa_req_province "California" set_var easyrsa_req_city "san Francisco" set_var easyrsa_req_org "copyleft certificate co" set_var easyrsa_email_email "me@@@@@@@@@@@@@@@@@@@@@@@@@.net "set_var easyrsa_req_ou" Meine Organisationseinheit " 

Sobald die Änderungen gespeichert sind, können wir fortfahren und die generieren Pki (Öffentliche Schlüsselinfrastruktur) mit dem folgenden Befehl, der ein Verzeichnis nennt pki:

$ ./easyrsa init-pki 

Mit der vorhandenen Infrastruktur können wir unseren CA -Schlüssel und unser Zertifikat erstellen. Nachdem wir den folgenden Befehl gestartet haben, werden wir gebeten, a einzugeben Passphrase für die CA -Schlüssel. Wir müssen jedes Mal, wenn wir mit der Autorität interagieren, das gleiche Passwort geben. A Gemeinsamen Namen Für das Zertifikat sollte auch bereitgestellt werden. Dies kann ein willkürlicher Wert sein; Wenn wir einfach in der Eingabeaufforderung Eingabetaste drücken, wird in diesem Fall die Standardeinstellung verwendet Easy-RSA CA:

$ ./Easyrsa Build-Ca 

Hier ist die Ausgabe des Befehls:

HINWEIS: Verwenden der Easy-RSA-Konfiguration von: ./vars mit SSL: OpenSSL OpenSSL 1.1.1d 10 Sep 2019 Eingeben Sie eine neue CA-Schlüsselpassphrase: Nehmen Sie die neue CA-Schlüsselpassphrase erneut ein: Generierung von RSA-Privatschlüssel, 2048-Bit-Long-Modul (2 Primes)… ++++… +++++ E IS 65537 (0x010001) Can Can 't last/home/egdoc/certificate_authority/pki/.RND in RNG 140296362980608: Fehler: 2406f079: Zufallszahlengenerator: Rand_load_file: Datei kann nicht geöffnet werden:…/Crypto/Rand/RandFile.C: 98: Dateiname =/home/egdoc/Certificate_authority/pki/.RND Sie werden aufgefordert, Informationen einzugeben, die in Ihre Zertifikatanfrage aufgenommen werden. Was Sie eingeben möchten, ist der als als angesehene Name oder ein DN bezeichnet. Es gibt einige Felder, aber Sie können einige Felder leer lassen, es gibt einen Standardwert, wenn Sie eingeben. '.', Das Feld wird leer gelassen. ----- Gebräuchlicher Name (z. Ihre neue CA -Zertifikatdatei für Veröffentlichungen finden Sie unter:/home/egdoc/certificate_authority/pki/ca.crt 

Der Build-Ca Befehl generierte zwei Dateien; Ihr Weg im Verhältnis zu unserem Arbeitsverzeichnis ist:

  • pki/ca.crt
  • pki/privat/ca.Taste

Das erste ist das öffentliche Zertifikat, der zweite ist der Schlüssel, mit dem die Server- und Client -Zertifikate unter Vertrag genommen werden. Daher sollte so sicher wie möglich gehalten werden.

Ein kleiner Hinweis, bevor wir uns weiterentwickeln: In der Ausgabe des Befehls haben Sie möglicherweise eine Fehlermeldung bemerkt. Obwohl der Fehler nicht arm ist, besteht eine Problemumgehung, um es zu vermeiden, die dritte Zeile der OpenSSL-EASYRSA.CNF Datei, die sich im generierten Arbeitsverzeichnis befindet. Das Problem wird im OpenSSL Github -Repository erörtert. Nach der Änderung sollte die Datei so aussehen:

# Zur Verwendung mit Easy-RSA 3.1 und OpenSSL oder Libressl Randfile = $ env :: easyrsa_pki/.RND 

Lassen Sie uns auf dem Computer den Maschine bewegen, den wir als OpenVPN -Server verwenden und den Serverschlüssel und das Zertifikat generieren.

Schritt 2 - Erzeugung der Serverschlüssel- und Zertifikatanforderung

In diesem Schritt generieren wir den Serverschlüssel und die Zertifikatanforderung, die von der Zertifikatbehörde als unterzeichnet wird. Auf dem Computer verwenden wir als OpenVPN -Server, wir müssen die installieren OpenVPN, Easy-RSA Und UFW Pakete:

$ sudo APT-Get-Update && sudo apt-Get -y Installieren Sie OpenVPN Easy-RSA UFW 

Um den Serverschlüssel- und Zertifikatanforderung zu generieren, führen wir das gleiche Verfahren durch, das wir auf dem Maschinen -Hosting der Zertifikatbehörde verwendet haben:

  1. Wir generieren ein Arbeitsverzeichnis mit dem Make-Cadir Befehl und in sich bewegen.
  2. Richten Sie die in der enthaltenen Variablen ein vars Datei, die für das Zertifikat verwendet wird.
  3. Generieren Sie die öffentliche Schlüsselinfrastruktur mit dem ./easyrsa init-pki Befehl.

Nach diesen vorläufigen Schritten können wir den Befehl ausgeben, um das Serverzertifikat und die Schlüsseldatei zu generieren:

$ ./EasyRSA Gen-Req Server Nopass 

Diesmal, da wir die benutzt haben kein Pass Option werden wir nicht aufgefordert, während der Erzeugung der Erzeugung ein Passwort einzulegen Serverschlüssel. Wir werden immer noch gebeten, eine zu betreten Gemeinsamen Namen für die Serverzertifikat. In diesem Fall ist der verwendete Standardwert Server. Das werden wir in diesem Tutorial verwenden:

HINWEIS: Verwenden der Easy-RSA-Konfiguration von: ./vars mit SSL: OpenSSL OpenSSL 1.1.1D 10 Sep 2019 Generieren eines RSA -privaten Schlüssels… +++++… +++++ Neue private Schlüssel zu '/home/eGDOC/openVPNServer/PKI/privat/server.Taste.9RU3WFZMBW '-----. Was Sie eingeben möchten, ist der als als angesehene Name oder ein DN bezeichnet. Es gibt einige Felder, aber Sie können einige Felder leer lassen, es gibt einen Standardwert, wenn Sie eingeben. '.', Das Feld wird leer gelassen. ----- Common Name (z. Ihre Dateien sind: req:/home/egdoc/openvpnserver/pki/reqs/server.REQ KEY:/HOME/EGDOC/OpenVPNServer/PKI/Private/Server.Taste 

A Zertifikatzeichenanfrage und ein Privat Schlüssel wird generiert:

  • /Home/EGDOC/OpenVPNServer/PKI/REQS/Server.Req
  • /Home/EGDOC/OpenVPNServer/PKI/Private/Server.Taste.

Die Schlüsseldatei muss in die verschoben werden /etc/openVPN Verzeichnis:

$ sudo mv pki/privat/server.Schlüssel /etc /openVPN 

Die Zertifikatanfrage muss stattdessen an die Zertifikatberechtigungsmaschine gesendet werden, um unterzeichnet zu werden. Wir können benutzen scp Befehl zum Übertragen der Datei:

$ scp pki/reqs/server.req egdoc@camachine:/home/egdoc/ 

Kommen wir zurück zu Camachine und das Zertifikat autorisieren.

Schritt 3 - Unterschreiben Sie das Serverzertifikat bei der CA

Auf der Zertifikatberechtigungsmaschine sollten wir die Datei finden, die wir im vorherigen Schritt in der Kopie kopiert haben $ Home Verzeichnis unseres Benutzers:

$ ls ~ Certificate_authority Server.Req 

Das erste, was wir tun, ist, die Zertifikatanfrage zu importieren. Um die Aufgabe zu erfüllen, verwenden wir die Import-Req Aktion der easyrsa Skript. Es ist die Syntax, es ist Folgendes:

Import-Req   

In unserem Fall bedeutet dies:

$ ./easyrsa import-req ~/server.REQ Server 


Der Befehl erzeugt die folgende Ausgabe:

HINWEIS: Verwenden der Easy-RSA-Konfiguration von: ./vars mit SSL: OpenSSL OpenSSL 1.1.1d 10. September 2019 Die Anfrage wurde erfolgreich mit einem kurzen Namen von: Server importiert. Sie können diesen Namen jetzt verwenden, um Unterzeichnungsvorgänge in dieser Anfrage durchzuführen. 

Um die Anfrage zu unterzeichnen, verwenden wir die singreq Aktion, die den Typ der Anfrage als erstes Argument (in diesem Fall Server) und der Anforderung nimmt und die Short_basename Wir haben im vorherigen Befehl (Server) verwendet. Wir rennen:

$ ./EasyRSA Sign-Req Server Server Server 

Wir werden gebeten, zu bestätigen, dass wir das Zertifikat unterschreiben und das Kennwort bereitstellen möchten, das wir für die Zertifikatberechnung verwendet haben. Wenn alles wie erwartet läuft, wird das Zertifikat erstellt:

HINWEIS: Verwenden der Easy-RSA-Konfiguration von: ./vars mit SSL: OpenSSL OpenSSL 1.1.1d 10. September 2019 Sie sind kurz davor, das folgende Zertifikat zu unterschreiben. Bitte überprüfen Sie die unten angegebenen Details nach Genauigkeit. Beachten Sie, dass diese Anfrage kryptografisch nicht verifiziert wurde. Bitte stellen Sie sicher. Anfrage anfordern, die für 1080 Tage als Serverzertifikat signiert werden soll: Betreff = CommonName = Server Geben. Anforderungsdetails bestätigen: Ja Verwenden Sie die Konfiguration von/home/egdoc/Certificate_authority/pki/safessl-easyrsa.CNF Geben Sie die Pass -Phrase für/home/egdoc/certificate_authority/pki/privat/ca.Schlüssel: Überprüfen Sie, ob die Anforderung mit der Signatursignatur übereinstimmt.1 12: 'Server' -Zertifikat ist bis zum 20. März 02:12:08 2023 GMT (1080 Tage) Zertifiziert. Schreiben Sie Datenbank mit 1 neuen Einträgen Data Base Aktualisiertes Zertifikat in:/home/eGDOC/Certificate_Authority/PKI/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgegeben/ausgestellt Server.crt 

Wir können jetzt die Anforderungsdatei löschen, die wir zuvor von der übertragen haben openvpnmachine. Und kopieren Sie das generierte Zertifikat zurück zu unserem OpenVPN Server zusammen mit dem öffentlichen CA -Zertifikat:

$ rm ~/server.Req $ scp pki/ca.CRT, ausgestellt/Server.crt egdoc@openvpnmaachine:/home/egdoc 

Zurück auf der openvpnmachine Wir sollten die Dateien in unserem Heimverzeichnis finden. Wir können sie jetzt zu ihnen bewegen /etc/openVPN:

$ sudo mv ~/ca.CRT, Server.crt /etc /openvpn 

Schritt 4 - Erzeugung von Diffie -Hellman -Parametern

Der nächste Schritt besteht aus der Generation von a Diffie-Hellman Parameter. Der Diffie-Hellman Der Schlüsselaustausch ist die Methode, mit der Kryptoschlüsseln über einen öffentlichen, unsicheren Kanal übertragen werden können. Der Befehl zur Erzeugung des Schlüssels lautet wie folgt (es könnte eine Weile dauern, bis er fertig ist):

$ ./easyrsa gen-dh 

Der Schlüssel wird im Inneren der erzeugt pki Verzeichnis als dh.Pem. Lassen Sie es uns zu verschieben /etc/openVPN als Dh2048.Pem:

$ sudo mv pki/dh.pem/etc/openvpn/dh2048.Pem 

Schritt 5 - Erzeugung des TLS -Auth Key (ta.Taste)

Sicherheit zu verbessern, OpenVPN Geräte tls-auth. Zitat der offiziellen Dokumentation:

Die TLS-Auth-Direktive fügt allen SSL/TLS-Handshake-Paketen eine zusätzliche HMAC-Signatur zur Integritätsprüfung hinzu. Jedes UDP -Paket, der nicht die richtige HMAC -Signatur trägt. Die TLS-Auth HMAC-Signatur bietet ein zusätzliches Sicherheitsniveau über die von SSL/TLS bereitgestellte Sicherheitsniveau. Es kann sich vor:
- DOS -Angriffe oder Hafenfluten am OpenVPN UDP -Anschluss.
- Port -Scan, um festzustellen, welche UDP -Ports Server in einem Hörzustand befinden.
- Schwachstellen des Pufferüberlaufs in der SSL/TLS -Implementierung.
- SSL/TLS-Handshake-Initiationen von nicht autorisierten Maschinen (während solche Handshakes letztendlich nicht authentifiziert würden, kann TLS-AUTH sie zu einem viel früheren Punkt abschneiden).

Um den TLS_AUTH -Schlüssel zu generieren, können wir den folgenden Befehl ausführen:

$ openVPN -Agenkey -Sekret TA.Taste 

Einmal erzeugt, bewegen wir die ta.Taste Datei an /etc/openVPN:

$ sudo mv ta.Schlüssel /etc /openVPN 

Unser Serverschlüssel -Setup ist jetzt abgeschlossen. Wir können mit der tatsächlichen Serverkonfiguration fortfahren.

Schritt 6 - OpenVPN -Konfiguration

Die OpenVPN -Konfigurationsdatei gibt es nicht standardmäßig in der Inneren /etc/openVPN. Um es zu generieren, verwenden wir eine Vorlage, die mit dem versendet wird OpenVPN Paket. Lassen Sie uns diesen Befehl ausführen:

$ zcat \/usr/share/doc/openVPN/Beispiele/Beispiel-Config-Files/Server.Conf.gz \ | sudo tee/etc/openvpn/server.conf> /dev /null 

Wir können jetzt die bearbeiten /etc/openVPN/Server.Conf Datei. Die relevanten Teile werden unten gezeigt. Das erste, was wir tun möchten, ist zu überprüfen. Wenn Sie dieses Tutorial befolgt haben, sollte es auf jeden Fall der Fall sein (Zeilen 78-80 Und 85):

ca ca.CRT -Zertifikatserver.CRT -Schlüsselserver.Schlüssel # Diese Datei sollte geheim gehalten werden DH DH2048.Pem 

Wir möchten den OpenVPN -Daemon mit niedrigen Privilegien laufen lassen, die niemand Benutzer und Nogroup Gruppe. Der relevante Teil der Konfigurationsdatei befindet sich in den Zeilen 274 Und 275. Wir müssen nur die Führung entfernen ;:

Benutzer Niemand Gruppennogroup 

Eine weitere Zeile, aus der wir den Kommentar entfernen möchten, ist IS 192. Dies führt dazu, dass alle Kunden ihr Standard -Gateway durch das VPN umleiten:

Drücken Sie "Redirect-Gateway Def1 Bypass-DHCP" 

Linien 200 Und 201 kann auch verwendet werden, um dem Server bestimmte DNS -Server auf Clients zu bringen. Die in der Konfigurationsdatei sind die von den bereitgestellten von OpenNS.com:

Drücken Sie "DHCP-Option DNS 208".67.222.222 "Push" DHCP-Option DNS 208.67.220.220 " 

Zu diesem Zeitpunkt die /etc/openVPN Das Verzeichnis sollte diese von uns generierten Dateien enthalten:

/etc/openvpn ├── CA.CRT ├── DH2048.PEM ├── Server.conf ├inger Server.CRT ├── Server.Schlüssel └── Ta.Taste 

Stellen wir sicher, dass sie alle von Root gehören:

$ sudo chown -r root: root /etc /openvpn 

Wir können mit dem nächsten Schritt fortfahren: Konfigurieren der Netzwerkoptionen.

Schritt 7 - Setup Networking und UFW

Damit unser VPN funktioniert, müssen wir aktivieren IP -Weiterleitung Auf unserem Server. Um es zu tun, wir haben nur die Linie 28 von dem /etc/sysctl.Conf Datei:

# Überzeugen Sie die nächste Zeile, um die Paketweiterleitung für IPv4 -Netz zu aktivieren.IPv4.ip_forward = 1 

So laden Sie die Einstellungen neu:

$ sudo sysctl -p 


Wir müssen auch die Paketweiterleitung in der UFW -Firewall ermöglichen, die die verändert /etc/Standard/UFW Datei und Ändern der Default_forward_policy aus TROPFEN Zu AKZEPTIEREN (Linie 19):

# Legen Sie die Standard -Weiterleitungsrichtlinie fest, um zu akzeptieren, fallen zu lassen oder abzulehnen. Bitte beachten Sie, dass # Wenn Sie dies ändern, möchten Sie höchstwahrscheinlich Ihre Regeln für default_forward_policy = "Akzeptieren" anpassen 

Wir müssen jetzt die folgenden Regeln zum Beginn der hinzufügen /etc/ufw/vor.Regeln Datei. Hier gehen wir davon aus, dass die für die Verbindung verwendete Schnittstelle ist Eth0:

*nat: poTrouting akzeptieren [0: 0] -a poTrouting -s 10.8.0.0/8 -O ETH0 -J Masquerade Commit 

Schließlich müssen wir eingehenden Verkehr für die zulassen OpenVPN Service im UFW Firewall Manager:

$ sudo ufw erlauben openvpn 

Zu diesem Zeitpunkt können wir UFW neu starten, damit die Änderungen angewendet werden sollen. Wenn Ihre Firewall zu diesem Zeitpunkt nicht aktiviert wurde, stellen Sie sicher, dass die ssh Der Service ist immer erlaubt, sonst können Sie ausgeschnitten werden, wenn Sie aus der Ferne arbeiten.

$ sudo ufw disable && sudo ufw aktivieren 

Wir können jetzt starten und das OpenVPN aktivieren.Service bei Boot:

$ sudo systemctl starten Sie OpenVPN && sudo systemCTL aktivieren OpenVPN 

Schritt 8 - Generierung eines Kundenschlüssels und einer Zertifikatanforderung

Unser Server -Setup ist jetzt fertig. Der nächste Schritt besteht in der Erzeugung des Kundenschlüssels und der Zertifikatanforderung. Die Prozedur ist derselbe, das wir für den Server verwendet haben.

$ ./Easyrsa Gen-Req Client Nopass 

Wie zuvor werden wir gebeten, einen gebräuchlichen Namen einzugeben. Die folgenden Dateien werden generiert:

  • /home/egdoc/openvpnserver/pki/reqs/client.Req
  • /Home/EGDOC/OpenVPNServer/PKI/Private/Client.Taste

Kopieren wir die Klient.Req zur CA -Maschine:

$ scp pki/reqs/client.req egdoc@camachine:/home/egdoc 

Sobald die Datei kopiert ist, auf Camachine, Wir importieren die Anfrage:

$ ./easyrsa import-req ~/client.REQ -Client 

Dann unterschreiben wir das Zertifikat:

$ ./EasyRSA Sign-Req Client Client Client 

Nach Eingabe des CA -Passworts wird das Zertifikat als erstellt als pki/ausgestellt/Client.crt. Entfernen wir die Anforderungsdatei und kopieren Sie das signierte Zertifikat zurück an den VPN -Server:

$ rm ~/client.Req $ scp pki/ausgestellt/Client.crt egdoc@openvpnmaachine:/home/egdoc 

Lassen Sie uns ausgiebig ein Verzeichnis erstellen, um alle kundenbezogenen Dinge zu halten und den Kundenschlüssel und das Zertifikat in diese zu verschieben:

$ mkdir ~/client $ mv ~/client.CRT PKI/Privat/Kunde.Schlüssel ~/Client 

Gut, wir fast da. Jetzt müssen wir die Client -Konfigurationsvorlage kopieren, /usr/share/doc/openVPN/Beispiele/Proben-Config-Files/Client.Conf in der ~/Client Verzeichnis und ändern Sie es, um unsere Bedürfnisse zu erfüllen:

$ cp/usr/share/doc/openVPN/Beispiele/Beispiel-Config-Files/Client.Conf ~/Client 

Hier sind die Zeilen, die wir in der Datei ändern müssen. In der Linie 42 Legen Sie den tatsächlichen Server -IP oder den Hostnamen anstelle von My-Server-1:

Remote my-server-1 1194 

Auf Zeilen 61 Und 62 Entfernen Sie die Führung ; Charakter zur Herabstufung von Berechtigungen nach Initialisierung:

Benutzer Niemand Gruppennogroup 

Auf Zeilen 88 Zu 90 Und 108 Wir sehen. Wir möchten diese Zeilen kommentieren, da wir den tatsächlichen Inhalt der Dateien zwischen einem Paar von „Tags“ einstellen:

  • Für das CA -Zertifikat
  • Für das Client -Zertifikat
  • Für den Kundenschlüssel
  • Für den TLS-Auth-Schlüssel

Sobald die Zeilen kommentiert wurden, fügen wir den folgenden Inhalt unten in der Datei an:

 # Hier geht der Inhalt der CA.CRT -Datei # Hier geht der Inhalt des Clients.CRT -Datei # Hier geht der Inhalt des Clients.Schlüsseldateischlüsselanleitung 1 # Hier geht der Inhalt des TA.Schlüsseldatei  


Sobald wir die Datei bearbeitet haben, benennen wir sie mit dem um die .ovpn Suffix:

$ mv ~/client/client.Conf ~/Client/Client.ovpn 

Alles, was noch zu tun bleibt, ist, die Datei in unserer Client -Anwendung zu importieren, um eine Verbindung zu unserem VPN herzustellen. Wenn wir beispielsweise die Gnome -Desktop -Umgebung verwenden, können wir die Datei aus importieren Netzwerk Abschnitt des Bedienfelds. Klicken Sie im Abschnitt VPN einfach auf die + Schaltfläche, dann auf "aus der Datei importieren", um das auszuwählen und importieren ".OVPN ”Datei, die Sie zuvor in Ihren Client -Computer übertragen haben.



Gnome -Schnittstelle zum Importieren .OVPN -Datei

Schlussfolgerungen

In diesem Tutorial haben wir gesehen, wie man ein funktionierendes OpenVPN -Setup erstellt. Wir haben eine Zertifikatautorität generiert und verwendet, um Server- und Client -Zertifikate zusammen mit den entsprechenden Schlüsseln zu signieren. Wir haben gesehen. Schließlich haben wir gesehen, wie man einen Kunden generiert .ovpn Datei, die aus einer Clientanwendung importiert werden kann, um einfach eine Verbindung zu unserem VPN herzustellen. Genießen!

Verwandte Linux -Tutorials:

  • Dinge zu installieren auf Ubuntu 20.04
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • Ubuntu 20.04 Tricks und Dinge, die Sie vielleicht nicht wissen
  • Basic Ubuntu 22.04 OpenVPN -Client/Server -Verbindungsanschluss -Setup
  • Ubuntu 20.04 Leitfaden
  • Dinge zu wissen über Ubuntu 20.04 FOSSA FOSSA
  • Ubuntu 20.04 Hadoop
  • FTP -Clientliste und -installation auf Ubuntu 20.04 Linux…
  • Die 8 besten Ubuntu -Desktop -Umgebungen (20.04 fokale Fossa…
  • Testen von HTTPS -Clients mithilfe von OpenSSL, um einen Server zu simulieren