FBIVPN: Unterschied zwischen den Versionen
(18 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Im Informatik-Netz gibt es leider viele Port-Beschränkungen. Daher ist die Verwendung einer [[VPN|VPN-Verbindung]] zu empfehlen. Eine VPN-Verbindung ist auch dann sinnvoll, wenn man von außerhalb des Informatik-Netzes auf Seiten zugreifen möchte, die nur aus dem Informatik-Netz abgerufen werden können. | Im Informatik-Netz gibt es leider viele Port-Beschränkungen. Daher ist die Verwendung einer [[VPN|VPN-Verbindung]] zu empfehlen. Eine VPN-Verbindung ist auch dann sinnvoll, wenn man von außerhalb des Informatik-Netzes auf Seiten zugreifen möchte, die nur aus dem Informatik-Netz abgerufen werden können. | ||
Vom | Vom IRZ gibt es [https://www.inf.uni-hamburg.de/inst/irz/it-services/private-devices/vpn-clients.html Anleitungen für MacOS, Windows und Ubuntu]. Hier gibt es weitere Anleitungen, wie man die Verbindung unter verschiedenen Linux-Distributionen realisieren kann: | ||
== Kurzanleitungen == | == Kurzanleitungen == | ||
Hier sind Kurzanleitungen für Ubuntu, Windows XP & 7, Mac OS X und iOS, längere Anleitungen gibt es unten | Hier sind Kurzanleitungen für Ubuntu, Windows XP & 7, Mac OS X und iOS, längere Anleitungen gibt es unten. | ||
Besonders empfehlenswert sind die [[https://www.inf.uni-hamburg.de/inst/irz/it-services/private-devices/vpn-clients/ubuntu.html|offiziellen Anleitungen des IRZ]]. | |||
=== Debian-Testing === | === Debian-Testing === | ||
Zeile 10: | Zeile 11: | ||
Unter neueren Debian System kann es vorkommen, dass erst network-manager-pptp-gnome oder pptp-linux installiert werden muss. Danach funktioniert die Anleitung von Ubuntu. | Unter neueren Debian System kann es vorkommen, dass erst network-manager-pptp-gnome oder pptp-linux installiert werden muss. Danach funktioniert die Anleitung von Ubuntu. | ||
=== Ubuntu (getestet unter 12.04 | |||
Anmerkung Debian 12 - l2tp | |||
Einrichtung wie unter Ubuntu, bitte Anmerkung 4 beachten. | |||
=== Ubuntu (getestet unter 12.04 bis 23.04 [Mai 2023])=== | |||
(über GUI [nm-applet]): | (über GUI [nm-applet]): | ||
Zeile 33: | Zeile 39: | ||
*** Anmerkung5: MSCHAP ausschalten und nur MSCHAPv2 aktiv lassen hat hier geholfen. | *** Anmerkung5: MSCHAP ausschalten und nur MSCHAPv2 aktiv lassen hat hier geholfen. | ||
*** Anmerkung6: Auf Ubuntu 18.04.4, Juni 2020, galt bei mir: "Allow stateful encryption" nicht angekreuzen sowie MSCHAP ausschalten und nur MSCHAPv2 aktiv lassen. | *** Anmerkung6: Auf Ubuntu 18.04.4, Juni 2020, galt bei mir: "Allow stateful encryption" nicht angekreuzen sowie MSCHAP ausschalten und nur MSCHAPv2 aktiv lassen. | ||
***Anmerkung7: Auf Ubuntu 21.10 ( April 2022) gilt: "Allow stateful encryption" ankreuzen, MSCHAP aus und MSCHAPv2 aktiv lassen. (Hat bei Ubuntu 23.04 auch funktioniert.) | |||
** <OK> | ** <OK> | ||
* IPv4-Einstellungen | * IPv4-Einstellungen | ||
Zeile 38: | Zeile 45: | ||
** DNS-Server: 134.100.9.61 | ** DNS-Server: 134.100.9.61 | ||
** Suchdomänen: informatik.uni-hamburg.de | ** Suchdomänen: informatik.uni-hamburg.de | ||
*** Anmerkung: Bei mir waren die IPv4-Einstellungen nicht nötig (Ubuntu 18.04.4, Juni 2020) | *** Anmerkung: Bei mir waren die IPv4-Einstellungen nicht nötig (Ubuntu 18.04.4, Juni 2020 und 23.04, Mai 2023) | ||
* <Speichern> | * <Speichern> | ||
* <Schließen> | * <Schließen> | ||
Zeile 47: | Zeile 54: | ||
* VPN-Verbindungen --> FBI-VPN | * VPN-Verbindungen --> FBI-VPN | ||
Du hast jetzt Internet!!! | Du hast jetzt Internet!!! | ||
==== Troubleshooting ==== | |||
Es kann sein dass etwaige lokale Firewalls, wie Opensnitch (https://github.com/evilsocket/opensnitch) oder UFW (fancy iptables) Probleme bereiten könnten. | |||
Um herauszufinden ob eine Firewall dazwischenfunkt, könnte man sie entweder temporär ausschalten und danach probieren (nur in geschützten Netzwerken empfohlen) oder in den Logs nach verdächtigen Einträgen suchen. | |||
So könnten bei UFW Einträge wie <code>kernel: [UFW BLOCK] IN=<interface> OUT= MAC=<mac> SRC=134.100.5.65 DST=192.168.x.x</code> auftauchen. | |||
Bei Opensnitch schlägt der Aufbau meist durch Timeouts fehl, was auch geloggt wird. | |||
In der CLI könnte folgender Befehl zum verfolgen der Logs des Netzwerkmanagers hilfreich sein: <code>journalctl -e -f -u NetworkManager</code>. | |||
Falls pppd in dem Networkmanager Plugin für pptp genutzt wird, kann der Debug Output aktiviert werden, indem "debug" in der Datei /etc/ppp/options auskommentiert/hinzugefügt wird. | |||
===== Opensnitch ===== | |||
Damit PPTP bei einer aktiven Opensnitch-Instanz funktioniert, muss in der Datei /etc/opensnitchd/system-fw.json eine Regel hinzugefügt werden, sodass es danach so aussehen könnte: | |||
<pre> | |||
{ | |||
"SystemRules": [ | |||
{ | |||
"Rule": { | |||
"Description": "Allow pptp VPN", | |||
"Table": "mangle", | |||
"Chain": "OUTPUT", | |||
"Parameters": "-p gre", | |||
"Target": "ACCEPT", | |||
"TargetParameters": "" | |||
} | |||
} | |||
} | |||
</pre> | |||
Siehe https://github.com/evilsocket/opensnitch/issues/219 | |||
===== UFW ===== | |||
Wenn standardmäßig alle eingehenden Verbindungen geblockt werden, sollte die IP vom Gateway freigeschaltet werden, z.B. Src: 134.100.5.65, Protocol both und alles andere beim default. | |||
Man könnte es mit einer Iptables Regel noch weiter einschränken, indem Packete vom Protocol "GRE" (oder 47) erlaubt sind: https://askubuntu.com/questions/757228/adding-vpn-exception-allow-protocol-to-ufw-firewall-rules | |||
=== Ubuntu 18.04 === | === Ubuntu 18.04 === | ||
Zeile 63: | Zeile 106: | ||
** Haken setzen bei "Enable IPsec tunnel to L2TP host" | ** Haken setzen bei "Enable IPsec tunnel to L2TP host" | ||
** Gateway ID: <frei lassen> | ** Gateway ID: <frei lassen> | ||
** Pre-shared key: | ** Pre-shared key: [[file:irz-vpnpw.png]] | ||
*** advanced: | *** advanced: | ||
*** Phase1 Algorithms: 3des-sha1-modp1024 | *** Phase1 Algorithms: 3des-sha1-modp1024 | ||
Zeile 111: | Zeile 154: | ||
** firewall-cmd --reload | ** firewall-cmd --reload | ||
** Quelle: https://ask.fedoraproject.org/en/question/63759/pptp-connection-fails-after-last-update/ | ** Quelle: https://ask.fedoraproject.org/en/question/63759/pptp-connection-fails-after-last-update/ | ||
=== Fedora 35 bis 36 === | |||
* Die voherigen Befehle alleine haben nicht ausgereicht. | |||
* Folgender Befehl hat zum Erfolg geführt: | |||
** sudo sysctl net.netfilter.nf_conntrack_helper=1 | |||
* Die Einstellung persistent machen: | |||
** echo net.netfilter.nf_conntrack_helper=1 | sudo tee /etc/sysctl.d/98-nf_conntrack.conf | |||
* Quelle: https://ask.fedoraproject.org/t/pptp-vpn-blocked-by-firewall/8097 | |||
* Seit Kernel-Version 6.0 gibt es net.netfilter.nf_conntrack_helper nicht mehr. Stattdessen kann in der Firewall gre freigeschaltet werden. | |||
** Quelle: https://ask.fedoraproject.org/t/nf-conntrack-helper-is-missing-from-kernel-6-0-5/28210/2 | |||
=== Qubes OS (getestet unter Qubes 4.2.1, April 2024) === | |||
Es werden neben einer Network-VM (standardmäßig gibt es sys-net und sys-firewall, Anleitung nutzt sys-firewall) zwei weitere VMs (ein Template, ein Proxy) benötigt, damit gezielt nur eine Auswahl an Qubes und auch nur auf Wunsch das VPN verwenden, und nicht zwangsläufig das gesamte System. | |||
==== sys-net ==== | |||
In sys-net muss eingestellt werden, dass eingehender pptp Traffic erlaubt wird und überhaupt verarbeitet werden kann: | |||
* sudo vim /rw/config/rc.local | |||
* modprobe ip_conntrack_pptp | |||
* modprobe ip_nat_pptp | |||
* iptables -I FORWARD -p 47 -s fbivpn.informatik.uni-hamburg.de -j ACCEPT | |||
* iptables -Z | |||
==== Proxy Template ==== | |||
Qube Manager -> New Qube | |||
* Label: sys-vpn-template (Beispiel) | |||
* Type: TemplateVM | |||
* Template: Default (im Folgenden von fedora-39-xfce ausgehend) | |||
* Network: None | |||
Anschließend den Template-Qube starten und ein Terminal öffnen | |||
* sudo dnf remove libreswan | |||
* sudo dnf install strongswan (sofern nicht bereits installiert) | |||
* Begründung: libreswan enthält den notwendigen Phase 1 Encryption Algorithmus 3des-sha1-modp1024 nicht mehr | |||
==== VPN Proxy-VM ==== | |||
Qube Manager -> New Qube | |||
* Label: sys-vpn (Beispiel) | |||
* Type: AppVM | |||
* Template: sys-vpn-template | |||
* Networking: "sys-firewall" (oder "sys-net", discouraged) | |||
* Advanced: Provides network access to other qubes | |||
Qube Einstellungen (Qube Manger -> sys-vpn -> Settings) | |||
* Zum Services-Reiter wechseln | |||
* network-manager Service auswählen | |||
Terminal in sys-vpn öffnen | |||
* sudo vim /rw/config/rc.local | |||
* iptables -I INPUT -p 47 -s fbivpn.informatik.uni-hamburg.de -j ACCEPT | |||
* modprobe l2tp_ppp | |||
==== VPN einrichten ==== | |||
* Zunächst alle obigen Qubes (neu)starten | |||
* Netzwork Manager Icon der Proxy-VM im Tray anklicken | |||
* VPN Connections -> Configure VPN... -> + | |||
* Point-to-Point Tunneling Protocol (PPTP) | |||
** Gateway: fbivpn.informatik.uni-hamburg.de | |||
** User-name: FBI Kennung | |||
** Password: FBI Password | |||
** IPsec Settings... | |||
*** Enable IPsec tunnel to L2TP host | |||
*** Pre-shared key: fbivpn | |||
*** (Advanced) Phase1 Algorithms: 3des-sha1-modp1024 | |||
*** (Advanced) Phase2 Algorithms: 3des-sha1 | |||
** PPP Settings... | |||
*** Alles unter "Security and Compression" auswählen | |||
*** Security: 128-bit (most secure) | |||
*** Unter "Authentication" nur "MSCHAP" und "MSCHAPv2" | |||
Fertig! Jetzt müsste eine Verbindung über das gleiche Tray-Icon funktionieren! Soll ein Qube das FBI VPN verwenden, kannst du einfach dessen Network-VM auf "sys-vpn" stellen und das VPN aktivieren. Möchtest du, dass die Qubes bei deaktiviertem VPN trotzdem Internet haben, kannst du im gleichen Menü einfach den "VM uplink eth0" anstelle des VPNs aktivieren. Dann wird stattdessen einfach die Verbindung von sys-firewall direkt verwendet. | |||
=== Windows XP === | === Windows XP === | ||
Zeile 183: | Zeile 302: | ||
* Servername oder IP-Adresse: fbivpn.informatik.uni-hamburg.de | * Servername oder IP-Adresse: fbivpn.informatik.uni-hamburg.de | ||
* VPN-Typ: L2TP/IPsec mit vorinstalliertem Schlüssel (Anmerkung 14.1.19: Statt L2TP klappt bei mir PPTP) | * VPN-Typ: L2TP/IPsec mit vorinstalliertem Schlüssel (Anmerkung 14.1.19: Statt L2TP klappt bei mir PPTP) | ||
* Vorinstallierter Schlüssel: | * Vorinstallierter Schlüssel: [[file:irz-vpnpw.png]] | ||
* Anmeldeinformationstyp: Benutzername und Kennwort | * Anmeldeinformationstyp: Benutzername und Kennwort | ||
* Benutzername: dein Informatik Nutzername z.B. 0mustermann | * Benutzername: dein Informatik Nutzername z.B. 0mustermann | ||
Zeile 205: | Zeile 324: | ||
** Passwort: Dein Passwort zur Kennung | ** Passwort: Dein Passwort zur Kennung | ||
** Rechner-Authentifizierung: | ** Rechner-Authentifizierung: | ||
*** Schlüssel ("Shared Secret"): | *** Schlüssel ("Shared Secret"): [[file:irz-vpnpw.png]] | ||
* Weitere Optionen: | * Weitere Optionen: | ||
Zeile 212: | Zeile 331: | ||
*** [X] Beim Abmelden des Benutzers die Verbindung trennen | *** [X] Beim Abmelden des Benutzers die Verbindung trennen | ||
*** [X] Gesamten Verkehr über die VPN-Verbindung senden | *** [X] Gesamten Verkehr über die VPN-Verbindung senden | ||
*** Bei Verbindungsproblemen: [X] Ausführliches Protokoll | |||
** TCP/IP | ** TCP/IP | ||
*** IPv4 Konfigurieren: PPP | *** IPv4 Konfigurieren: PPP | ||
*** IPv6 Konfigurieren: Automatically | *** IPv6 Konfigurieren: Automatically | ||
** DNS | ** DNS: "informatik.uni-hamburg.de" als Such-Domain hinzufügen | ||
** Proxies: nichts vornehmen | |||
* <Verbinden> | * <Verbinden> | ||
* Du hast Internet! | * Du hast Internet! | ||
=== iOS === | === iOS === | ||
Zeile 241: | Zeile 353: | ||
** RSA-SecurID: Aus | ** RSA-SecurID: Aus | ||
** Kennwort: dein Kennwort zur Kennung | ** Kennwort: dein Kennwort zur Kennung | ||
** Shared Secret: | ** Shared Secret: [[file:irz-vpnpw.png]] | ||
** Gesamten Verkehr senden: An | ** Gesamten Verkehr senden: An | ||
** Proxy: Aus (sofern du keinen benutzt) | ** Proxy: Aus (sofern du keinen benutzt) | ||
Zeile 443: | Zeile 555: | ||
== Weblinks == | == Weblinks == | ||
* [ | * [https://www.inf.uni-hamburg.de/inst/irz/it-services/private-devices/vpn-clients.html Offizielle Anleitung des IRZ] | ||
** [https://www.inf.uni-hamburg.de/inst/irz/it-services/private-devices/vpn-clients/macos.html Für macOS] | |||
** [https://www.inf.uni-hamburg.de/inst/irz/it-services/private-devices/vpn-clients/ubuntu.html Für Ubuntu] | |||
** [https://www.inf.uni-hamburg.de/inst/irz/it-services/private-devices/vpn-clients/win10.html Für Windows] | |||
* [http://pptpclient.sourceforge.net/howto-diagnosis.phtml#conventions Nützliches Howto zum Debuggen von PPTP Client Syslog-Infos] | * [http://pptpclient.sourceforge.net/howto-diagnosis.phtml#conventions Nützliches Howto zum Debuggen von PPTP Client Syslog-Infos] | ||
* [http://www.cyberciti.biz/tips/howto-configure-ubuntu-fedora-linux-pptp-client.html Howto VPN on Fedora] | * [http://www.cyberciti.biz/tips/howto-configure-ubuntu-fedora-linux-pptp-client.html Howto VPN on Fedora] | ||
== Siehe Auch == | == Siehe Auch == | ||
Aktuelle Version vom 10. September 2024, 18:09 Uhr
Im Informatik-Netz gibt es leider viele Port-Beschränkungen. Daher ist die Verwendung einer VPN-Verbindung zu empfehlen. Eine VPN-Verbindung ist auch dann sinnvoll, wenn man von außerhalb des Informatik-Netzes auf Seiten zugreifen möchte, die nur aus dem Informatik-Netz abgerufen werden können.
Vom IRZ gibt es Anleitungen für MacOS, Windows und Ubuntu. Hier gibt es weitere Anleitungen, wie man die Verbindung unter verschiedenen Linux-Distributionen realisieren kann:
Kurzanleitungen[Bearbeiten]
Hier sind Kurzanleitungen für Ubuntu, Windows XP & 7, Mac OS X und iOS, längere Anleitungen gibt es unten. Besonders empfehlenswert sind die [Anleitungen des IRZ].
Debian-Testing[Bearbeiten]
Unter neueren Debian System kann es vorkommen, dass erst network-manager-pptp-gnome oder pptp-linux installiert werden muss. Danach funktioniert die Anleitung von Ubuntu.
Anmerkung Debian 12 - l2tp
Einrichtung wie unter Ubuntu, bitte Anmerkung 4 beachten.
Ubuntu (getestet unter 12.04 bis 23.04 [Mai 2023])[Bearbeiten]
(über GUI [nm-applet]):
- VPN-Verbindungen->VPN-Konfigurieren
- Hinzufügen
- Erzeugen (PPTP)
- Daten eingeben:
- Verbindungsname: FBI-VPN (ist beliebig)
- Gateway: fbivpn.informatik.uni-hamburg.de
- User name: <Deine Kennung (0musterm)>
- Passwort: <Dein Passwort>
- NT Domain: informatik
- Advanced:
- Use Point-to-Point encryption (MPPE)
- Sicherheit: 128-bit (most secure)
- die nächsten 4 Optionen ankreuzen
- Anmerkung: Bei mir (Ubuntu 13.10) funktioniert das VPN nur, wenn "Allow stateful encryption" nicht angekreuzt ist. Mach ich was falsch?
- Anmerkung2: Bei mir (Ubuntu 14.04 neu installiert) gehts auch nur ohne. Also vermutlich bei allen Ubuntus ab 13.10 den einen Haken weglassen.
- Bei mir (Ubuntu 14.04) gehts wieder nur mit. Einfach beides ausprobieren.
- Anmerkung3: Bei mir (Ubuntu 15.04 neu installiert) gehts weder mit noch ohne. Funktioniert diese Methode noch bei den alten Ubuntu Versionen?
- Anmerkung4: Unter (X)Ubuntu 16.04) gehts ohne "Allow stateful encryption". PS: In einer VM (das war das Problem bei mir) müsst ihr in den Settings eine "Netzwekbrücke" einstellen. "NAT" funktioniert nicht.
- Anmerkung5: MSCHAP ausschalten und nur MSCHAPv2 aktiv lassen hat hier geholfen.
- Anmerkung6: Auf Ubuntu 18.04.4, Juni 2020, galt bei mir: "Allow stateful encryption" nicht angekreuzen sowie MSCHAP ausschalten und nur MSCHAPv2 aktiv lassen.
- Anmerkung7: Auf Ubuntu 21.10 ( April 2022) gilt: "Allow stateful encryption" ankreuzen, MSCHAP aus und MSCHAPv2 aktiv lassen. (Hat bei Ubuntu 23.04 auch funktioniert.)
- <OK>
- IPv4-Einstellungen
- Methode: Automatisch (VPN), nur Adressen
- DNS-Server: 134.100.9.61
- Suchdomänen: informatik.uni-hamburg.de
- Anmerkung: Bei mir waren die IPv4-Einstellungen nicht nötig (Ubuntu 18.04.4, Juni 2020 und 23.04, Mai 2023)
- <Speichern>
- <Schließen>
- Zum W-LAN UHH verbinden.
- Fertig
Zum verbinden jetzt:
- VPN-Verbindungen --> FBI-VPN
Du hast jetzt Internet!!!
Troubleshooting[Bearbeiten]
Es kann sein dass etwaige lokale Firewalls, wie Opensnitch (https://github.com/evilsocket/opensnitch) oder UFW (fancy iptables) Probleme bereiten könnten.
Um herauszufinden ob eine Firewall dazwischenfunkt, könnte man sie entweder temporär ausschalten und danach probieren (nur in geschützten Netzwerken empfohlen) oder in den Logs nach verdächtigen Einträgen suchen.
So könnten bei UFW Einträge wie kernel: [UFW BLOCK] IN=<interface> OUT= MAC=<mac> SRC=134.100.5.65 DST=192.168.x.x
auftauchen.
Bei Opensnitch schlägt der Aufbau meist durch Timeouts fehl, was auch geloggt wird.
In der CLI könnte folgender Befehl zum verfolgen der Logs des Netzwerkmanagers hilfreich sein: journalctl -e -f -u NetworkManager
.
Falls pppd in dem Networkmanager Plugin für pptp genutzt wird, kann der Debug Output aktiviert werden, indem "debug" in der Datei /etc/ppp/options auskommentiert/hinzugefügt wird.
Opensnitch[Bearbeiten]
Damit PPTP bei einer aktiven Opensnitch-Instanz funktioniert, muss in der Datei /etc/opensnitchd/system-fw.json eine Regel hinzugefügt werden, sodass es danach so aussehen könnte:
{ "SystemRules": [ { "Rule": { "Description": "Allow pptp VPN", "Table": "mangle", "Chain": "OUTPUT", "Parameters": "-p gre", "Target": "ACCEPT", "TargetParameters": "" } } }
Siehe https://github.com/evilsocket/opensnitch/issues/219
UFW[Bearbeiten]
Wenn standardmäßig alle eingehenden Verbindungen geblockt werden, sollte die IP vom Gateway freigeschaltet werden, z.B. Src: 134.100.5.65, Protocol both und alles andere beim default. Man könnte es mit einer Iptables Regel noch weiter einschränken, indem Packete vom Protocol "GRE" (oder 47) erlaubt sind: https://askubuntu.com/questions/757228/adding-vpn-exception-allow-protocol-to-ufw-firewall-rules
Ubuntu 18.04[Bearbeiten]
Verbindungsart: L2TP
- sudo apt-get update
- sudo apt-get install network-manager-l2tp
- sudo apt-get install network-manager-l2tp-gnome
VPN Hinzufügen und "Layer 2 Tunneling Protocol (L2TP)" auswählen
- Daten eingeben:
- Verbindungsname: FBI-VPN (ist beliebig)
- Gateway: fbivpn.informatik.uni-hamburg.de
- User name: <Deine Kennung (0musterm)>
- Passwort: <Dein Passwort>
- NT Domain: <nicht nötig>
- IPsec:
- PPP Settings:
- Use Point-to-Point encryption (MPPE)
- Sicherheit: 128-bit (most secure)
- allow stateful encryption
- die nächsten Optionen zu compression ankreuzen
Debugging mit "tail -f /var/log/syslog"
- Fehler: "Failed to request VPN secrets #3: No agents were available for this request."
- Lösung: Rechts vom Passwortfeld aufs Fragezeichen klicken und "Passwort für alle Nutzer speichern".
Kubuntu 13.04 per KDE Controle Module & Arch Linux (Manjaro), Januar 2016[Bearbeiten]
Verbindungsart: PPTP
- Daten eingeben
- Verbindungsname: FBI-VPN (ist beliebig)
- Gateway: fbivpn.informatik.uni-hamburg.de
- Username: <Deine iRZ-Kennung (0musterm)>
- Passwort: <Dein Passwort>
- NT Domain: informatik
- Advanced
- Authentication Methods: MSCHAP und MSCHAPv2 (alle anderen deaktivieren)
- Use Point-to-Point encryption (MPPE)
- Sicherheit: 128-bit (most secure)
- stateful encryption
- Compression: BSD, Deflate, TCP header
- DNS Server und Suchdomäne sollten nicht mehr nötig sein.
Fedora 21[Bearbeiten]
- Den VPN über die GUI mit den gleichen daten wie bei Ubuntu konfigurieren.
- Da die Firewall ab kernel 3.18 per default mehr block ist es noch nicht möglich eine verbindung aufzubauen.
- Folgende Befehle helfen:
- echo nf_conntrack_pptp | sudo tee /etc/modules-load.d/pptp-firewall.conf
- sudo modprobe nf_conntrack_pptp
- Quelle: https://blog.wedrop.it/fedora-vpn-problems.html
Fedora 23 bis 30[Bearbeiten]
- Auch hier scheint es ein firewall Problem zu geben.
- Folgende Befehle haben mir geholfen:
- firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT
- firewall-cmd --permanent --direct --add-rule ipv6 filter INPUT 0 -p gre -j ACCEPT
- firewall-cmd --reload
- Quelle: https://ask.fedoraproject.org/en/question/63759/pptp-connection-fails-after-last-update/
Fedora 35 bis 36[Bearbeiten]
- Die voherigen Befehle alleine haben nicht ausgereicht.
- Folgender Befehl hat zum Erfolg geführt:
- sudo sysctl net.netfilter.nf_conntrack_helper=1
- Die Einstellung persistent machen:
- echo net.netfilter.nf_conntrack_helper=1 | sudo tee /etc/sysctl.d/98-nf_conntrack.conf
- Quelle: https://ask.fedoraproject.org/t/pptp-vpn-blocked-by-firewall/8097
- Seit Kernel-Version 6.0 gibt es net.netfilter.nf_conntrack_helper nicht mehr. Stattdessen kann in der Firewall gre freigeschaltet werden.
Qubes OS (getestet unter Qubes 4.2.1, April 2024)[Bearbeiten]
Es werden neben einer Network-VM (standardmäßig gibt es sys-net und sys-firewall, Anleitung nutzt sys-firewall) zwei weitere VMs (ein Template, ein Proxy) benötigt, damit gezielt nur eine Auswahl an Qubes und auch nur auf Wunsch das VPN verwenden, und nicht zwangsläufig das gesamte System.
sys-net[Bearbeiten]
In sys-net muss eingestellt werden, dass eingehender pptp Traffic erlaubt wird und überhaupt verarbeitet werden kann:
- sudo vim /rw/config/rc.local
- modprobe ip_conntrack_pptp
- modprobe ip_nat_pptp
- iptables -I FORWARD -p 47 -s fbivpn.informatik.uni-hamburg.de -j ACCEPT
- iptables -Z
Proxy Template[Bearbeiten]
Qube Manager -> New Qube
- Label: sys-vpn-template (Beispiel)
- Type: TemplateVM
- Template: Default (im Folgenden von fedora-39-xfce ausgehend)
- Network: None
Anschließend den Template-Qube starten und ein Terminal öffnen
- sudo dnf remove libreswan
- sudo dnf install strongswan (sofern nicht bereits installiert)
- Begründung: libreswan enthält den notwendigen Phase 1 Encryption Algorithmus 3des-sha1-modp1024 nicht mehr
VPN Proxy-VM[Bearbeiten]
Qube Manager -> New Qube
- Label: sys-vpn (Beispiel)
- Type: AppVM
- Template: sys-vpn-template
- Networking: "sys-firewall" (oder "sys-net", discouraged)
- Advanced: Provides network access to other qubes
Qube Einstellungen (Qube Manger -> sys-vpn -> Settings)
- Zum Services-Reiter wechseln
- network-manager Service auswählen
Terminal in sys-vpn öffnen
- sudo vim /rw/config/rc.local
- iptables -I INPUT -p 47 -s fbivpn.informatik.uni-hamburg.de -j ACCEPT
- modprobe l2tp_ppp
VPN einrichten[Bearbeiten]
- Zunächst alle obigen Qubes (neu)starten
- Netzwork Manager Icon der Proxy-VM im Tray anklicken
- VPN Connections -> Configure VPN... -> +
- Point-to-Point Tunneling Protocol (PPTP)
- Gateway: fbivpn.informatik.uni-hamburg.de
- User-name: FBI Kennung
- Password: FBI Password
- IPsec Settings...
- Enable IPsec tunnel to L2TP host
- Pre-shared key: fbivpn
- (Advanced) Phase1 Algorithms: 3des-sha1-modp1024
- (Advanced) Phase2 Algorithms: 3des-sha1
- PPP Settings...
- Alles unter "Security and Compression" auswählen
- Security: 128-bit (most secure)
- Unter "Authentication" nur "MSCHAP" und "MSCHAPv2"
Fertig! Jetzt müsste eine Verbindung über das gleiche Tray-Icon funktionieren! Soll ein Qube das FBI VPN verwenden, kannst du einfach dessen Network-VM auf "sys-vpn" stellen und das VPN aktivieren. Möchtest du, dass die Qubes bei deaktiviertem VPN trotzdem Internet haben, kannst du im gleichen Menü einfach den "VM uplink eth0" anstelle des VPNs aktivieren. Dann wird stattdessen einfach die Verbindung von sys-firewall direkt verwendet.
Windows XP[Bearbeiten]
- Mit dem W-Lan UHH verbinden
- Systemsteuerung --> Netzwerkverbindung
- Neue Verbindung erstellen
- Verbindung mit dem Netzwerk am Arbeitsplatz herstellen
- <Weiter>
- VPN-Verbindung
- <Weiter>
- Daten Eingeben:
- FBI-VPN (beliebig)
- <weiter>
- Hostname: fbivpn.informatik.uni-hamburg.de
- <weiter>
- <weiter>
- <Fertig Stellen>
- Der Verbinden Dialog erscheint, Daten eingeben:
- Benutzername: <Deine Kennung (0musterm)>
- Kennwort: <Dein Passwort>
- <Verbinden>
- Du hast Internet!
Windows 7[Bearbeiten]
- Mit dem W-Lan UHH verbinden (an der Uni) oder mit Internet verbinden (bspw. zuhause)
- Systemsteuerung --> Netzwerk- und Freigabecenter
- Neue Verbindung oder Netzwerk einrichten
- Verbindung mit dem Arbeitsplatz herstellen
- <weiter>
- Nein, neue Verbindung erstellen
- <weiter>
- Die Internetverbindung (VPN) verwenden
- Daten Eingeben:
- Internetadresse: fbivpn.informatik.uni-hamburg.de
- Zielname: FBI-VPN (beliebig)
- <Weiter>
- Benutzername: <deine Kennung (0musterm)>
- Kennwort: <Dein Passwort>
- <verbinden>
- Fertig!
Wenn Ihr ein Antivirenprogramm mit Firewall verwendet, dann achtet darauf, dass GRE-Pakete beidseitig durchgelassen werden. Das müsstet ihr bei der jeweiligen Firewall konfigurieren können.
Am Beispiel von Avira AntiVir InternetSecurity hier ein Beispiel:
- Avira AntiVir öffnen (Adminrechte erforderlich)
- Auf den Punkt Firewall klicken
- Auf Konfigurieren klicken
- Unter Adapterregeln eure Internetverbindung auswählen
- Unter eingehende Regeln eine "Eingehende IP-Protokollregel" erstellen
- Als Protokoll GRE auswählen (Nummer 47)
- Unter ausgehende Regeln eine "Ausgehende IP-Protokollregel" erstellen
- Als Protokoll GRE auswählen (Nummer 47)
- Die Änderungen abspeichern.
- Vorsorglich neustarten.
- Fertig.
Diese Schritte waren bei mir nötig, um das Einwählen zu ermöglichen. Bei anderen Betriebssystemen (vornehmlich Windows/Mac) und/oder anderen Antivirenprogrammem mit integrierter Firewall können die Einstellungen anders heißen und andere Schritte nötig sein. Wenn es bei euch ohne diese Schritte klappt, dann müsst ihr auch nichts ändern.
Win 8[Bearbeiten]
Die Firewall von Win 8 blockiert den Zugang, sodass nach dem Einrichten (wie bei Win 7) keine Verbindung hergestellt werden kann (ging bei mir auch mit dem Cisco-Client des RRZ nicht).
Wenn man dann aber über Systemsteuerung -> Windows Firewall -> Erweiterte Einstellungen -> Eingehende/Ausgehende Regeln die "Routing und Remotezugriff"-Regeln (sind 3 Stück) mittels Rechtsklick aktiviert, wird die Verbindung erfolgreich aufgebaut. (vgl. http://www.heise.de/ct/hotline/Firewall-Regeln-fuers-VPN-unter-Windows-8-2056705.html)
Win 10[Bearbeiten]
In der Programmsuche nach VPN suchen. Dann öffnet sich ein Fenster, in welchem du auf VPN hinzufügen klickst. Die Einstellungen trägst du wie folgt ein:
- Verbindungsname (optional): FBI-VPN
- Servername oder IP-Adresse: fbivpn.informatik.uni-hamburg.de
- VPN-Typ: L2TP/IPsec mit vorinstalliertem Schlüssel (Anmerkung 14.1.19: Statt L2TP klappt bei mir PPTP)
- Vorinstallierter Schlüssel:
- Anmeldeinformationstyp: Benutzername und Kennwort
- Benutzername: dein Informatik Nutzername z.B. 0mustermann
- Kennwort: dein Kennwort zum zugehörigen Informatikaccount
Speichern, verbinden und fertig!!
Mac OS X[Bearbeiten]
Mit dem W-Lan UHH verbinden
System Preferences -> Network
- Neue Verbindung einrichten ("+" Button)
- VPN Auswählen
- VPN Typ: L2TP über IPSec
- Service Name: FBI-VPN
- Konfiguration: Standard
- Sever Address: fbivpn.informatik.uni-hamburg.de
- Account Name: Deine Kennung (0musterm)
- Authentifizierungseinstellungen
- Weitere Optionen:
- Optionen:
- [X] Bei Benutzerwechsel abmelden
- [X] Beim Abmelden des Benutzers die Verbindung trennen
- [X] Gesamten Verkehr über die VPN-Verbindung senden
- Bei Verbindungsproblemen: [X] Ausführliches Protokoll
- TCP/IP
- IPv4 Konfigurieren: PPP
- IPv6 Konfigurieren: Automatically
- DNS: "informatik.uni-hamburg.de" als Such-Domain hinzufügen
- Proxies: nichts vornehmen
- Optionen:
- <Verbinden>
- Du hast Internet!
iOS[Bearbeiten]
- Unter den W-Lan-Netzen bei "UHH" auf den Pfeil nach Rechts tippen
- "Automatisch Anmelden" deaktivieren
- Mit dem W-Lan UHH verbinden
- Unter Einstellungen -> Allgemein -> VPN kannst du eine eigene VPN-Verbindung einrichten.
- Daten eingeben:
- Unter Einstellungen dann VPN einschalten (natürlich sofern du im UHH Netz bist)
- Du hast Internet!
Fehlerbehebung Solltet ihr euch nicht mit UHH verbinden können, tut folgendes:
- Unter den W-Lan-Netzen bei "UHH" auf den Pfeil nach Rechts tippen
- "Automatisch Anmelden" deaktivieren (nicht in iOS Version 6.0.1 verfügbar).
Chrome OS[Bearbeiten]
Das PPTP-VPN lässt sich auf einem chromebook nicht einrichten, weil PPTP wegen angeblich mangelnder Sicherheit nicht unterstützt wird. Stattdessen funktioniert aber die Methode "L2TP/IPSec + vorinstallierter Schlüssel". Hierfür wird der vorinstallierte Schlüssel (aka Shared Secret) vom iRZ erfragt. Der Name des Servers ist die URL fbivpn.inf..., der Benutzername und das Passwort wie gewohnt eure Anmeldedaten, das Feld "Gruppenname" bleibt einfach leer.
GUI[Bearbeiten]
Diese Sektion beschreibt die Einrichtung des VPNs mittels dem NetworkManager. Wenn du keine grafische Oberflaeche benutzt, schaue weiter unten für eine Beschreibung mit nur Commandline-Tools.
Benötigtes Paket[Bearbeiten]
networkmanager-pptp (PPTP-Backend für Network-Manager)
Nach dem installieren des Pakets musste bei mir (Kubunty Hardy) der knetworkmanager neugestartet werden. Vorher waren die VPN-Optionen nicht sichtbar.
Einstellungen[Bearbeiten]
Network-Manager -> VPN-Verbindungen -> VPN konfigurieren -> Hinzufügen
Im Verbindungsassistent dann folgende Einstellungen vornehmen:
Hardy Heron und früher[Bearbeiten]
- Verbinden mit: PPTP Tunnel
- Name: FBI VPN (oder nach Gusto)
- Typ: Windows VPN (PPTP)
- Gateway: fbivpn.informatik.uni-hamburg.de
Tipp: Wenn du das VPN nur nutzen möchtest, um von zu Hause bestimmte Seiten aus dem Uni-Netz abzurufen, auf die du normalerweise nicht von außen zugreifen dürftest, solltest du die VPN-Verbindung so konfigurieren, dass nur Verbindungen mit dem Uni-Netz über das VPN aufgebaut werden. Das hat den Vorteil, dass andere Dinge, die du im Internet noch so tust, evt. schneller sind, da sie nicht getunnelt werden. Dazu bearbeitest du die bestehende Verbindung über Network-Manager -> VPN-Verbindungen -> VPN konfigurieren -> Bearbeiten (dazu muss natürlich deine Verbindung ausgewählt sein). Auf der Karteikarte Routing markierst du dann VPN-Verbindungen nur für diese Adressen verwenden und trägst das Subnetz der Uni (134.100.0.0/16) als IP-Adressbereich ein.
Der Knetworkmanager hat unter Hardy einen Bug, so dass keine VPN-Verbindung konfiguriert werden kann. Eine gefixte Version findet sich unter https://launchpad.net/~nytmyn/+archive (siehe auch https://bugs.launchpad.net/ubuntu/+source/knetworkmanager/+bug/151867 )
Intrepid Ibex und später[Bearbeiten]
- Verbindungstyp: Point-to-Point Tunneling Protocol (PPTP)
- Name: FBI VPN (oder nach Gusto)
- Gateway: fbivpn.informatik.uni-hamburg.de
- User name: Informatik\RZ-Benutzerkennung (RZ-Benutzerkennung ist dabei natürlich deine Kennung!)
- NT Domain: Unbedingt leer lassen, hier nicht Informatik eintragen. Die Domäne muss dem Benutzernamen wie oben beschrieben vorangestellt werden.
- Auf Advanced klicken:
- Haken vor Use Point-To-Point encryption (MPEE) aktivieren
- Security auf 128bit (most secure) setzen
Neustarten[Bearbeiten]
Nach Einrichtung der Verbindung ist evt. ein Neustart des Network-Manager notwendig, damit die Verbindung dort angezeigt wird. Unter Ubuntu geht das durch Aufrufen folgender Befehle:
- sudo /etc/dbus-1/event.d/25NetworkManager restart
- sudo /etc/dbus-1/event.d/26NetworkManagerDispatcher restart
Verbinden[Bearbeiten]
Zunächst muss eine Internetverbindung oder eine Verbindung zu einem UHH-Netz (z.B. FBI-WLAN) aufgebaut werden. Eine Gateway-Authentifizierung ist nicht notwendig.
Networkmanager -> VPN-Verbindungen -> FBI VPN
Wichtig: Bei der Authentifizierung am VPN-Gateway muss dem Benutzernamen die Windows-Domäne vorangestellt werden. Der korrekte Benutzername lautet also: Informatik\RZ-Benutzerkennung.
CLI[Bearbeiten]
Dieser Abschnitt beschreibt, wie mensch eine VPN Verbindung ins FBI mit Commandline-Tools erstellt.
Pakete[Bearbeiten]
Installiere pptp-linux (Ubuntu) bzw pptpclient (Arch Linux) oder ein ähnlich benanntes Paket, das dir einen Client für das Microsoft Point-to-Point Tunneling Protocol (PPTP) bietet.
Konfiguration[Bearbeiten]
Credentials:
echo $FBIUSER PPTP $FBIPASS 134.100.5.65 | sudo tee -a /etc/ppp/chap-secrets
Wobei $FBIUSER und $FBIPASS dein Benutzername (e.g. 0bock) und dein Passwort sind.
Dialup:
echo <<EOF pty "pptp fbivpn.informatik.uni-hamburg.de --nolaunchpppd" name $FBIUSER remotename PPTP require-mppe-128 file /etc/ppp/options.pptp ipparam stellingen EOF | sudo tee /etc/ppp/peers/stellingen
Routing:
echo <<EOF #!/bin/sh [ "$6" != "stellingen" ] && exit 0 ip route add 0.0.0.0/1 dev "$1" ip route add 128.0.0.0/1 dev "$1" EOF | sudo tee /etc/ppp/ip-up.d/route-traffic.sh sudo chmod +x /etc/ppp/ip-up.d/route-traffic.sh
Network config:
echo <<EOF iface stellingen inet ppp provider stellingen EOF | sudo tee -a /etc/network/interfaces
Starten/Stoppen[Bearbeiten]
sudo ifup stellingen
oder
sudo pon stellingen
bzw.
sudo ifdown stellingen
oder
sudo poff stellingen
VPN automatisch bei Verbindung mit $WLAN[Bearbeiten]
Das ganze Verbinden kann man auch automatisch machen, indem man das Netzwerk identifiziert, in dem man sich befindet. Aus der oberen Anleitung braucht man dann nicht mehr den Punkt "Network config"
/etc/wpa_supplicant/wpa_supplicant.conf
network={ ssid="UHH-WPA" key_mgmt=WPA-EAP eap=TTLS group=TKIP CCMP pairwise=TKIP CCMP ca_cert="/etc/ssl/certs/Deutsche_Telekom_Root_CA_2.pem" identity="RRZ_Kennung@uni-hamburg.de" password="very_secret_password" anonymous_identity="anonymous@uni-hamburg.de" phase2="auth=PAP" id_str="uni" # wichtig, weil das der interfacename ist } ODER network={ ssid="UHH" key_mgmt=NONE id_str="uni" }
/etc/network/interfaces
iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface uni inet dhcp #vpn up and down up /usr/bin/pon stellingen down /usr/bin/poff stellingen
Manuell lässt sich immer noch VPN mit sudo pon stellingen starten. Beendet tut man dies dann mit sudo poff stellingen
Testen[Bearbeiten]
Zum Testen der Verbindung (bei Nutzung von außerhalb des Informatik-Netzes) kann zum Beispiel die Seite [1] abgerufen werden. Kann eine Gedaechnissprotokoll geladen werden arbeitet die Verbindung
Autoconnect Script[Bearbeiten]
Es gibt unter Linux Möglichkeiten sich bei bestehendem (UHH-) Netz direkt mit dem VPN zu befinden. Dazu sind folgende Änderungen am System notwendig.
(Im folgenden stehen (sofern nicht anders vermekt) $VPN$ für den VPN-namen und $WIFI$ für den WLAN-Namen)
/etc/NetworkManager/system-connections/$VPN$
Die Zeile password-flags muss von 1 auf 0 gesetzt werden. Falls die nicht existiert, muss sie unter dem Reiter vpn angelegt werden. In der selben Datei muss ein weiterer Reiter nämlich vpn-secrets angelegt werden. Unter vpn-secrets wird folgender eintrag angelegt.
password=Your_Password
Beachte, dass das Passwort hier im Klartext gespeichert wird. Deswegen ist darauf zu achten, dass die Zugriffsrechte für diese Datei auf 0600 zu setzen sind! (Es sei denn, man möchte es der Welt mitteilen)
Dann kommt als nächstes das eigentliche Skript. Dies ist anzulegen unter
/etc/NetworkManager/dispatcher.d
Hier muss man eine Datei anlegen nach dem Schema wie sie in dem Ordner vorliegt (\d\d-NAME). Die Zugriffsrechte sind auf 0755 zu setzen.
#! /bin/bash REQUIRED_CONNECTION_NAME="$WIFI$" # namen beachten! Case-sensitive VPN_CONNECTION_NAME="$VPN$" sleep 1 #sleep ist nötig, warum? Keine Ahnung ;) activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}") activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}") if [ "${activ_con}" -a ! "${activ_vpn}" -a "$2" = "up" ]; then nmcli con up id "${VPN_CONNECTION_NAME}" fi
Beim nächsten Verbinden der Netzwerkverbindung sollte sich der PC automatisch mit dem VPN verbinden.
Weblinks[Bearbeiten]
- Offizielle Anleitung des IRZ
- Nützliches Howto zum Debuggen von PPTP Client Syslog-Infos
- Howto VPN on Fedora