OpenVPN Site to Site: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Kategorie:OpenVPN * '''apt install openvpn''' * Dummy interface für den Routing Modus erstellen * '''vim /etc/network/interfaces''' ... auto dummy0 if…“)
 
(kein Unterschied)

Aktuelle Version vom 18. September 2024, 19:39 Uhr

  • apt install openvpn
  • Dummy interface für den Routing Modus erstellen
  • vim /etc/network/interfaces
...
auto dummy0
iface dummy0 inet static
 address 172.24.24.1xx/24
 pre-up ip link add dummy0 type dummy
  • ifdown -va ; ifup -va

OpenVPN Site-to-Site mit PSK aufbauen

  • Die Konfigurationsdateien für OpenVPN sind unter /etc/openvpn
  • cd /etc/openvpn

Partner 1

  • OpenVPN hat einen eigenen Befehl, um einen PSK zu erzeugen
  • openvpn --genkey secret /etc/openvpn/ps.key
  • Diesen Schlüssel Partner 2 zukommen lassen

Partner 2

  • Schlüssel unter /etc/openvpn/ speichern

Verbindungskonfiguration

  • Die Konfiguration der beiden Stellen ist symmetrisch, d.h. xx ist die eigene Nummer und yy ist die des Partners
  • vim /etc/openvpn/psk-server.conf
remote 192.168.3.1yy
dev tun
ifconfig 172.24.24.1xx 172.24.24.1yy
secret ps.key
route 172.16.1yy.0 255.255.255.0
keepalive 10 120
  • systemd erstellt automatisch die richtige Service-Datei, wenn es neugeladen wird
  • systemctl daemon-reload
  • systemctl start openvpn@psk-server
  • Die Regeln der Firewall sollten um den UDP Port 1194 in der INPUT/OUTPUT-Kette erweitert werden
  • Außerdem muss in der FORWARD-Kette das LAN des Partners freigeschaltet werden
  • vim /usr/local/sbin/firewall
...
iptables -A INPUT -m multiport -p udp --dport 500,4500,1194 -i $WANDEV -j ACCEPT
...
iptables -A OUTPUT -m multiport -p udp --dport 500,4500,1194 -o $WANDEV -j ACCEPT
...
iptables -A FORWARD -i $LANDEV -d $RIGHTNET -j ACCEPT
iptables -A FORWARD -o $LANDEV -s $RIGHTNET -j ACCEPT
  • Nun sollte man das LAN des Partners erreichbar sein

OpenVPN Site-to-Site mit Zertifikat aufbauen

  • Wir können die Zertifikate für Strongswan hier weiter nutzen
  • Dafür erstellen wir einen speziellen Ordner unter /etc/openvpn
  • mkdir /etc/openvpn/ssl
  • cp /etc/ipsec.d/private/fw1xx.key /etc/ipsec.d/certs/fw1xx.crt /etc/ipsec.d/cacerts/ca.crt /etc/openvpn/ssl

Partner 1

  • Partner 1 generiert zusätzlich einen Diffie-Hellman Parameter in diesen Ordner
  • openssl dhparam -out /etc/openvpn/ssl/dh2048.pem 2048
  • Die Verbindungskonfiguration muss diese Dateien finden
  • vim /etc/openvpn/cert-server.conf
remote 192.168.3.1yy
dev tun
tls-server
ifconfig 172.24.24.1xx 172.24.24.1yy
route 172.16.1yy.0 255.255.255.0
keepalive 10 120
dh ssl/dh2048.pem
ca ssl/ca.crt
cert ssl/fw1xx.crt
key ssl/fw1xx.key
  • systemctl daemon-reload
  • systemctl start openvpn@cert-server

Partner 2

  • vim /etc/openvpn/cert-client.conf
remote 192.168.3.1yy
dev tun
tls-client
ifconfig 172.24.24.1xx 172.24.24.1yy
route 172.16.1yy.0 255.255.255.0
keepalive 10 120
ca ssl/ca.crt
cert ssl/fw1xx.crt
key ssl/fw1xx.key
  • systemctl daemon-reload
  • systemctl start openvpn@cert-client