matomo

Sonderangebot: Spare $144 bei unserem Jahres-Abonnement
Getrennt

OpenVPN für IPFire installieren

Diese Anleitung ist auch verfügbar in English, Svenska und Norsk

Zuletzt aktualisiert: 10. Februar 2020

1. Melde dich bei der IPfires-Schnittstelle an

Klicke im Menü System auf Fernzugriff.

Aktiviere SSH sowie Kennwortbasierte Authentifizierung zulassen. Klicke dann auf Speichern

SSH für IPFire aktivieren

2. Via SSH einloggen

Melde dich über die SSH für deine IPFire-Installation an. Führe dann die folgenden Befehle aus:

cd /var/ipfire/ovpn
mkdir ovpn
cd ovpn

Gesamte Infrastruktur im Besitz von OVPN

Die gesamte für den Betrieb von OVPN verwendete Hardware befindet sich in unserem Besitz. Alle VPN-Server arbeiten ohne Festplatten, da sich das Betriebssystem nur im RAM-Speicher befindet.

Mehr erfahren

3. Konfigurationsdateien herunterladen

ovpn.conf bearbeiten und ändern:

up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

zu

#up /etc/openvpn/update-resolv-conf
#down /etc/openvpn/update-resolv-conf

Ändere den Parameter auth-user-pass zu:

auth-user-pass /var/ipfire/ovpn/ovpn_login

Ändere ovpn-ca.crt zu:

ca /var/ipfire/ovpn/ovpn-ca.crt

Ändere tls-auth ovpn-tls.key 1 zu:

tls-auth /var/ipfire/ovpn/ovpn-tls.key 1

Speichere die Datei.

Erstelle eine Datei mit dem Namen ovpn_login . Gib Folgendes in die Datei ein:

username
password

Ersetze Benutzername durch deinen Benutzernamen für OVPN und Kennwort durch dein OVPN-Kennwort.

Speichere die Datei.

4. Überprüfe die Verbindung

Jetzt sollten wir eine Datei erstellen, welche die Verbindung zum OVPN nachverfolgt. Erstelle eine Datei, nenne diese tunnelmonitor.sh und gib Folgendes ein:

#!/bin/bash
# this script tests a tunnel-connection and restarts the tunnel when down
T=10.140.0.1
config="/var/ipfire/ovpn/ovpn/ovpn.conf"
ifconfig | grep tun0 > /dev/null
t=$?
if [ "$t" != 0 ]; then
    echo "no tunnel-device available"
    logger -t TUNTEST "no tunnel-device available"
    modprobe tun
    openvpn --config $config --daemon
    logger -t TUNTEST "tunnel started"
    fi
echo "pinging now"
logger -t TUNTEST "pinging now"
ping -c 1 $T > /dev/null
if [ "$?" != 0 ]; then
    killall openvpn && sleep 10
    openvpn --config $config --daemon
    echo "tunnel restarted"
    logger -t TUNTEST "tunnel restarted"
    else
    echo "tunnel OK"
    logger -t TUNTEST "tunnel OK"
    fi
exit 0

Speichere die Datei und führe dann Folgendes aus:

chmod u+x tunnelmonitor.sh

5. Iptables bearbeiten

Bearbeite /etc/sysconfig/firewall.local und füge den folgenden Code hinzu unter ##add your 'start' rules here

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o tun0 -j MASQUERADE

Bearbeite die Netzwerkkonfiguration so, dass deine IP und dein Subnetz mit deinem LAN übereinstimmen.

Skript in IPFire bearbeiten

6. Job zur crontab hinzufügen

Führe den folgenden Befehl aus:

fcrontab -e

Drücke die Taste Einfügen, um Zeilen hinzuzufügen. Gib die folgende Zeile am Ende ein:

*/10 * * * * /var/ipfire/ovpn/ovpn/tunnelmonitor.sh >/dev/null 2>&1

Drücke ESC und gib :wq ein, um fcrontab zu speichern und zu schließen.

7. Fertig

Jetzt ist IPFire für die Arbeit mit OVPN konfiguriert. Du kannst dich mit OVPN verbinden, indem du Folgendes eingibst:

/var/ipfire/ovpn/ovpn/tunnelmonitor.sh