News
Serverspace Technologien in den VAE: Einführung von Falconcloud
WB
William Bell
21. Mai 2020
Aktualisiert Juni 7, 2023

Installieren und Konfigurieren OpenVPN on CentOS

CentOS Netzwerke

Verwenden Sie ein anderes Betriebssystem?

Wählen Sie die gewünschte Version oder Distribution aus.

OpenVPN ist eine offene Softwareimplementierung des VPN Protokoll. Eine Besonderheit dieses Produkts ist die Möglichkeit, verschlüsselte Tunnel zu erstellen. Es gibt Implementierungen für die gängigsten Betriebssysteme, darunter auch für mobile Plattformen.

Das CentOS Das ist die Repository-Funktion OpenVPN ist darin nicht enthalten. Dieses Paket kann jedoch über das EPEL-Repository (Enterprise) bezogen werden Linux), das vom Fedora-Projekt verwaltet wird. Aus diesem Repository können Sie übrigens auch andere Pakete beziehen, die nicht im Standard enthalten sind CentOS Repository. Installieren Sie mit dem Befehl:

yum install epel-release

Fahren Sie mit der Installation fort OpenVPN. Installieren Sie das Paket:

yum install openvpn easy-rsa -y

Fahren Sie mit der Konfiguration des Servers fort. Server.conf kopieren:

cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/

Es ist wichtig, auf das „*“ zu achten. Wenn nur ein Installationsversuch unternommen wurde, dann wurde das Program Die Version kann durch ein Sternchensymbol ersetzt werden. Bei mehreren Installationsversuchen kann es sein, dass Sie den Pfad zur Datei vollständig angeben müssen.

Nehmen Sie vor dem Generieren der Schlüssel einige Änderungen an der Serverkonfigurationsdatei vor

Öffnen Sie server.conf mit einem beliebigen Editor.

nano /etc/openvpn/server.conf

Suchen Sie die Zeile „Diffie hellman parameter.“ und suchen Sie nach:

dh dh2048.pem

Wenn es genau angegeben ist, müssen keine Änderungen vorgenommen werden. Die Nuance der neuen Version des Pakets besteht darin, dass die parameter hat bereits Werte. In älteren Versionen gibt es einfach „dh“. Wir lassen es wie unser eigenes aussehen.

Suchen Sie als Nächstes nach der Zeile „# Sicher Windows-spezifische Netzwerkeinstellungen“. Kommentieren Sie einen der PA ausrameter unten (löschen Sie das Symbol „Semikolon“ (;) am Anfang der Zeile). Es sollte ungefähr so ​​aussehen:

push "dhcp-option DNS 8.8.8.8"

Sie können Ihre angeben DNS Server, falls gewünscht. Außerdem können Sie die zweite Zeile auskommentieren, um eine Änderung zu übergebennatIVE DNS Server zu cliauch Enten.

Aus Gründen der Serversicherheit beginnen wir mit dem Benutzer „nobody“ und der Gruppe „nogroup“. Kommentieren Sie die Zeilen aus:

user nobody
group nobody

Wir beginnen mit der Erstellung von Zertifikaten

Erstellen Sie mit dem zuvor installierten easy-rsa-Paket den Server und cliHNO-Schlüssel.

Erstellen Sie ein Verzeichnis, in dem die Schlüssel liegen:

mkdir -p /etc/openvpn/easy-rsa/keys

Kopieren Sie im neu erstellten easy-rsa-Verzeichnis die Skripte:

cp -r /usr/share/easy-rsa/3.0/* /etc/openvpn/easy-rsa

Gehen Sie zu /etc/openvpn/easy-rsa/3/ Verzeichnis und erstellen Sie ein Vars-Skript

cd / etc /openvpn/easy-rsa/

nano vars

Wichtig! Die Easy-RSA-Version kann unterschiedlich sein und daher muss der Pfad angepasst werden.

Fügen Sie der geöffneten Datei die folgenden Zeilen hinzu:

set_var EASYRSA "$PWD"
set_var EASYRSA_PKI "$EASYRSA/pki"
set_var EASYRSA_DN "cn_only"
set_var EASYRSA_REQ_COUNTRY "RU"
set_var EASYRSA_REQ_PROVINCE "Moscow"
set_var EASYRSA_REQ_CITY "Moscow"
set_var EASYRSA_REQ_ORG "MyOrg"
set_var EASYRSA_REQ_EMAIL "openvpn@mydomain.net"
set_var EASYRSA_REQ_OU "CA"
set_var EASYRSA_KEY_SIZE 2048
set_var EASYRSA_ALGO rsa
set_var EASYRSA_CA_EXPIRE 7500
set_var EASYRSA_CERT_EXPIRE 365
set_var EASYRSA_NS_SUPPORT "no"
set_var EASYRSA_NS_COMMENT "CERTIFICATE AUTHORITY"
set_var EASYRSA_EXT_DIR "$EASYRSA/x509-types"
set_var EASYRSA_SSL_CONF "$EASYRSA/openssl-1.0.cnf"
set_var EASYRSA_DIGEST "sha256"

Dateiausführung zulassen:

chmod +x vars

Wir initialisieren das PKI-Verzeichnis und erstellen ein CA-Zertifikat:

./easyrsa init-pki
./easyrsa build-ca

Wichtig! Beim Erstellen eines CA-Zertifikats fragt das Skript nach einem Passwort mit mindestens 4 Zeichen. Das eingegebene Passwort sollte man sich merken.

The script will ask for a password of at least 4 characters

Erstellen Sie den Serverschlüssel.

./easyrsa gen-req server nopass

Wenn Sie das Attribut „nopass“ nicht angeben, fragt das Skript beim Erstellen des Schlüssels nach einem Passwort.

When creating the key, the script will ask for a password

Wir signieren das Serverzertifikat:

./easyrsa sign-req server server

Das Skript wird sich mit der ersten Aktion, der Antwort „Ja“, für unser Vertrauen interessieren. Anschließend wird nach dem Passwort gefragt, das beim Erstellen des CA-Zertifikats angegeben wurde.

The script will take an interest in our confidence with the first action

Überprüfen Sie, ob das Zertifikat signiert ist:

openssl verify -CAfile pki/ca.crt pki/issued/ server.crt

Check if the certificate is signed

Wir generieren einen zusätzlichen Serverschlüssel ta.key:

openvpn --genkey --secret /etc/openvpn/easy-rsa/keys/ta.key

Benutzerzertifikate

Der Vorgang zum Erstellen eines Benutzerzertifikats ist identisch mit dem Erstellen eines Serverzertifikats.

1. Wir erstellen ohne Passwortschutz:

./easyrsa gen-req client01 nopass

2. Unterzeichnung des Zertifikats:

./easyrsa sign-req client client01

Signing the certificate

3. Überprüfen Sie die Signaturnature:

openssl verify -CAfile pki/ca.crt pki/issued/client01.crt

Diffie Hellman.

Erstellen eines Zertifikats

./easyrsa gen-dh

Creating a certificate

Als Ergebnis wird die Datei dh.pem erstellt und in der Konfiguration dh2048.pem gespeichert. Benennen Sie es später beim Kopieren von Schlüsseln um.

Wir übertragen Zertifikate

Kopieren Sie die Serverschlüsseldateien. Dazu führen wir nacheinander Folgendes aus:

cp pki/ca.crt /etc/openvpn/
cp pki/issued/server.crt /etc/openvpn/
cp pki/private/server.key /etc/openvpn/
cp /etc/openvpn/easy-rsa/keys/ta.key /etc/openvpn/

Kopieren cliHNO-Schlüssel

cp pki/ca.crt /etc/openvpn/client/
cp pki/issued/client01.crt /etc/openvpn/client/
cp pki/private/client01.key /etc/openvpn/client/

Kopieren Sie die Diffie-Hellman-Schlüsseldatei

cp pki/dh.pem /etc/openvpn/dh2048.pem

Wichtig! Der Zieldateiname wird absichtlich in den Namen in der Konfiguration geändert.

Routing konfigurieren

Um die Konfiguration zu beschleunigen, wird mit iptables gearbeitet, nicht mit FirewallD. Führen Sie regelmäßig Folgendes aus:

yum install iptables-services -y
systemctl mask firewalld
systemctl enable iptables
systemctl stop firewalld
systemctl start iptables
iptables --flush

Vor der weiteren Konfiguration sollten Sie sich die Namen der Schnittstellen mit dem Befehl ansehen:

ifconfig -a

Fügen Sie eine Regel hinzu für NAT:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o <имя_интерфейса> -j MASQUERADE
iptables-save > /etc/sysconfig/iptables

Als Beispiel:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables-save > /etc/sysconfig/iptables

Paketweiterleitung zwischen Netzwerkschnittstellen zulassen. Bearbeiten Sie dazu die Systemdatei sysctl.conf:

nano /etc/sysctl.conf

Fügen Sie am Anfang der Datei die Zeile ein:

net.ipv4.ip_forward = 1

Wir speichern die Datei, schließen den Editor und starten den Netzwerkdienst neu mit dem Befehl:

systemctl restart network.service

Wir starten die OpenVPN Server

Fügen Sie zunächst den Dienst zum automatischen Upload hinzu:

systemctl -f enable openvpn@server.service

Einführung OpenVPN:

openvpn /etc/openvpn/server.conf

CliEnt-Einstellung.

Der Server ist konfiguriert, es bleibt noch die Konfiguration client, damit es eine Verbindung herstellen kann.

Unabhängig vom verwendeten Betriebssystem, ob Mobil-, Server- oder Home-Version, Linux or Windows, benötigen Sie immer 4 Dateien:

  • ca.crt;
  • client.crt;
  • client.key;
  • client.ovpn

Die ersten 3 Dateien befinden sich im Verzeichnis /etc/openvpn /client/directory und client.ovpn müssen erstellt werden. Gehen Sie dazu in das Verzeichnis, in dem sich alle befinden cliEnt-Schlüssel sind:

cd /etc/openvpn/client/

Erstellen Sie eine Datei:

nano client.ovpn

Füllen Sie den folgenden Inhalt aus:

client
dev tun
proto udp
remote <IP_ADDRESS> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3
ca ca.crt
cert client01.crt
key client01.key

Geben Sie anstelle von IP_ADDRESS die IP-Adresse des Servers oder seinen Domänennamen ein. Speichern Sie die Datei mit Strg + X und schließen Sie den Editor.

Wir übertragen Dateien an die client. Dies kann beispielsweise über SFTP erfolgen oder das Verzeichnis archivieren und über den Webserver „übermitteln“.

CliEnt-Verbindung

Je nach Betriebssystem laden wir die Installationsdatei herunter oder installieren aus dem Repository. Auch, OpenVPN kann erhalten werden von die offizielle Website.

Windows:

Für laufende Computer Windows, sollten Sie das Produktverteilungspaket von der offiziellen Website herunterladen, die „vier Dateien“ besorgen und sie im Ordner C: Prog ablegenram MappenOpenVPNKonfig.

Nach dem Start der OpenVPN GUI, das Program Das Symbol wird in der Taskleiste angezeigt. Wir cliKlicken Sie mit der rechten Maustaste darauf und wählen Sie „Verbinden“.

MacOS

OpenVPN für MacOS ist etwas komplizierter. Sie sollten das Open-Source-Tool Tunnelblick verwenden. Die Schlüssel und die Konfigurationsdatei sollten in ~ /Library/Application Support/Tunnelblick/Configurations abgelegt werden. Oder doppelt-click auf der Konfigurationsdatei.

Linux:

Sie sollten aus dem Repository installieren.

Debian/Ubuntu

apt-get install openvpn

CentOS/OpenSUSE/Fedora

yum install openvpn -y

Gehen Sie nach der Installation in den Ordner, in dem sich die Konfigurationsdatei mit den Schlüsseln befindet, und führen Sie den Befehl aus:

sudo openvpn --config client.ovpn

Um den Betrieb des Servers zu überprüfen, sollten Sie eine der Websites verwenden, auf denen Ihre IP-Adresse angezeigt wird.

Abstimmung:
5 aus 5
Durchschnittliche Bewertung: 5
Bewertet von: 3
1101 CT Amsterdam Niederlande, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300
Wir verwenden Cookies, um Ihr Erlebnis auf der Website zu verbessern Serverspace besser. Indem Sie weiterhin auf unserer Website surfen, stimmen Sie unseren zu
Cookies und Datenschutzbestimmungen.