Dokumentation
OpenVPN
Wertverknüpfungen:
- TKL OpenVPN Appliance Seite oder über GitHub)
- TurnKey Linux OpenVPN Appliance spezifische Dokumente:
- README
- Site-to-Site (Büro bei Amazon VPC)
- Gateway (sicherer Internetzugang)
Überlegungen zur Containerkonfiguration
Wenn Ihr OpenVPN-Server oder Client mit Fehlern wie:
ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory
Sie vermissen wahrscheinlich die tun0-Schnittstelle, die die Netzwerkschnittstelle für Ihren verschlüsselten Tunnel ist.
service openvpn stop mkdir /dev/net mknod /dev/net/tun c 10 200 chmod 666 /dev/net/tun service openvpn start
Wenn Ihr OpenVPN-Server erfolgreich startet, können Sie ein Startskript hinzufügen, um die tun0-Schnittstelle zum Startzeitpunkt zu erstellen:
#! /bin/sh
# Script originally developed by Wolfgang
### BEGIN INIT INFO
# Provides: tun
# Required-Start: $network
# Required-Stop: $openvpn
# Default-Start: S 1 2
# Default-Stop: 0 6
# Short-Description: Make a tun device.
# Description: Create a tundev for openvpn
### END INIT INFO
# Aktionen
case "$1" in
start)
mkdir /dev/net
mknod /dev/net/tun c 10 200
chmod 666 /dev/net/tun
;;
stop)Aktivieren Sie dann das Skript zum Booten:
chmod 755 /etc/init.d/tun update-rc.d tun defaults
Achten Sie darauf, Ihren Container neu zu starten, um sicherzustellen, dass Ihr VPN-Dienst ordnungsgemäß startet.
OpenVPN Client als Router
Möglicherweise möchten Sie, dass sich Ihr Turnkey Linux OpenVPN Appliance mit einem OpenVPN-Server oder Gateway verbindet, um den Netzwerkverkehr zu leiten. Beispielhafte Anwendungen können ein Site-to-Site VPN sein, bei dem sich der entfernte Standort (Client) mit dem Zentralbüro (Server) verbindet, oder wenn der Datenverkehr eines anderen Hosts gesichert wird, z. B. Turnkey Linux Torrent Server.
In beiden Fällen müssen Sie zuerst Ihre client.ovpn-Datei als OpenVPN-Standardkonfigurationsdatei einrichten. Sie tun dies, indem Sie die client.ovpn-Datei in eine .conf-Datei in /etc/openvpn: kopieren
cp /root/client.ovpn /etc/openvpn/client.confDann möchten Sie sicherstellen, dass der OpenVPN-Server erfolgreich startet, indem Sie:
openvpn --config /etc/openvpn/client.confJetzt müssen Sie sicherstellen, dass OpenVPN Ihre Clientverbindung beim Booten des Servers startet, indem Sie die OpenVPN-Konfigurationsdatei bearbeiten und den Autostart-Eintrag "Client" dekommentieren:
nano /etc/default/openvpn
AUTOSTART="client"Beachten Sie, dass der Wert "AUTOSTART" mit dem Namen der /etc/openvpn.conf-Datei übereinstimmen muss, ohne die ".conf" am Ende. Wenn Ihre .ovpn-Datei einen anderen Namen hatte, wie "user1.conf" müssen Sie den Wert von AUTOSTART="user1" ändern.
Schließlich müssen Sie das Routing zwischen der eth0- und der tun0-Schnittstelle mithilfe von IPTables aktivieren:
iptables -A FORWARD -o tun0 -i eth0 -s 192.168.1.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADEBeachten Sie, dass Sie "192.168.1.0/24" durch die IP und das Subnetz Ihres lokalen Netzwerks ersetzen müssen.
An dieser Stelle sollten Sie in der Lage sein, Ihr Routing mit einem anderen Computer zu testen. Sie müssen eine IP-Adresse mit einem Standard-Gateway festlegen, das die statische IP-Adresse Ihres Turnkey Linux OpenVPN-Servers ist. Sie können dann auf eine Website zugreifen, auf der Ihre IP angezeigt wird, um sicherzustellen, dass Ihre IP mit der Ihres VPN-Servers und nicht mit der Ihres ISP übereinstimmt.
Sobald Ihre IPTables-Regeln funktionieren und Ihr Datenverkehr Routing ist, müssen Sie die Regeln in einer bestimmten Datei speichern:
iptables-save | tee /etc/iptables.up.rulesDer Dateiname und der Pfad sind wichtig, da die IPTables-Regeln-Datei bereits vorhanden ist und beim Start des Netzwerks in /etc/network/interfaces, aufgerufen wird, ändern Sie den Namen also nicht.
Andere Orte, an die Sie (nicht TKL-spezifisch) OpenVPN-Informationen erhalten können:
- Debian Wiki (TKL v14 basiert auf Debian Jessie)
- Offizieller Beamter OpenVPN-Dokumente (Anmerkung: die Jessie Version ist 2.3.4)