IRB VPN: Unterschied zwischen den Versionen
(→Zugang mit Linux) |
K (Historischer Artikel) |
||
(46 dazwischenliegende Versionen von 29 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
+ | {{Vorlage:Historisch}} | ||
+ | |||
+ | <h3 style="color:red"><center>"Der Dienst IRB-VPN (@home, @prima.cs.tu-berlin.de) für | ||
+ | Zugänge aus fremden Netzen wird zum '''1.7.2012''' eingestellt." --Wilhelm Köhler, IRB </center></h3> | ||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
Mit Zugang zum IRB VPN kann man | Mit Zugang zum IRB VPN kann man | ||
− | * Den Newsserver von zu Hause nutzen | + | * Den [[IRB]]-[[Newsserver]] von zu Hause nutzen |
− | * Den Funkzugang im FR nutzen | + | * Den Funkzugang im [[FR]] nutzen |
− | * eine statische IP bekommen. | + | * eine statische IP-Adresse bekommen. |
+ | |||
+ | Für den Zugang braucht man einen IRB Zugang (beantragen mit dem gelben Zettel in der Einführungswoche). Hat man diesen, beantragt man online | ||
+ | * eine [https://irb.cs.tu-berlin.de:81/auth/?action=d_ip.pike Persönliche IP-Adresse] (<strike>optional</strike> muss man machen) | ||
+ | * ein [https://irb.cs.tu-berlin.de:81/auth/?action=d_vpn.pike MS-Chap Kennwort] | ||
+ | |||
+ | Nun könnt ihr euch mit einem VPN-Client bei ''prima.cs.tu-berlin.de'' anmelden. Nach aussen habt ihr dann eure persönliche IP-Adresse, die im Adressraum der TU liegt und könnt so Kontakt zu vielen Uni-Servern aufnehmen, die nur mit Uni-IPs sprechen. Täusche ich mich nicht, werden alle Ports von aussen durchgeleitet, was z.B. Internettelefonie, eingehende FTP-Verbindungen etc ermöglicht. | ||
− | + | Anleitungen für die Konfiguration des VPN-Zugangs für verschiedene Betriebssysteme, <b> sowie das Formular zum Freischalten des IRB VPNs </b> findet ihr ''unten'' auf der [http://irb.cs.tu-berlin.de/dienste/dialup/inhouse/ Seite des IRB für Funk- und Festnetzverbindungen]. Dort gibt es auch eine ausführlichere Form dieses Textes. | |
− | |||
− | |||
− | + | == Zugang unter Mac OS X == | |
− | + | Im Programm '''Internet-Verbindung''' im Menü '''Ablage>Neue VPN-Verbindung''' auswählen. Danach in Server-Adresse: '''prima.cs.tu-berlin.de''' und bei Benutzername und dem MS-Chap-Kennwort das was ihr beim IRB Beantragt habt (siehe oben). | |
+ | |||
+ | Viel spaß, das wars! | ||
+ | |||
+ | |||
+ | == Zugang unter WindowsXP == | ||
+ | |||
+ | Ähnlich wie beim Mac unter '''Netzwerkverbindungen''' eine neue Verbindung estellen und im Dialog die VPN Verbindung auswählen. | ||
+ | Server-Adresse: '''prima.cs.tu-berlin.de''' | ||
+ | Benutzername und MS-Chap-Kennwort das was ihr beim IRB Beantragt habt (siehe oben). | ||
== Zugang mit Linux == | == Zugang mit Linux == | ||
+ | Falls jemand speziell für Fedora Core 3-5 Hilfe sucht, bitte eine Mail an kenhru<aatt>cs.tu-berlin.de | ||
+ | Sollte es viele davon geben, wird eine Anleitung dafür erstellt und alle die nachgefragt haben, werden benachrichtigt. | ||
+ | |||
+ | Auf [[IRB-vpn mit kvpnc]] ist die Einrichtung von kvpnc auf einem SuSE Linux 10 beschrieben. | ||
+ | |||
+ | Besondere Hürde waren die routen... | ||
+ | |||
+ | <h3>halb-automatisch für Distributionen</h3> | ||
Erster Anlaufpunkt ist die sehr gut dokumentierte Seite des [http://pptpclient.sourceforge.net PPTP Clients] für Linux, auf der sowohl allgemeine, wie auch distributionsspezifische Anleitungen zu finden sind. Ich fasse nochmal die wichtigsten Punkte für den Zugang zum IRB zusammen. | Erster Anlaufpunkt ist die sehr gut dokumentierte Seite des [http://pptpclient.sourceforge.net PPTP Clients] für Linux, auf der sowohl allgemeine, wie auch distributionsspezifische Anleitungen zu finden sind. Ich fasse nochmal die wichtigsten Punkte für den Zugang zum IRB zusammen. | ||
+ | |||
+ | Neuerdings gibt es für KDE auch einen allgemeinen VPN client (besser Verbindungsmanager) - [http://home.gna.org/kvpnc/en/index.html KVpnc]. Damit kann man die Verbindung selbst einfacher einrichten. | ||
+ | |||
+ | <h3>Gentoo</h3> | ||
+ | |||
+ | Am einfachsten verwendet man kvpnc: | ||
+ | |||
+ | Beim kernel kompilieren mppe aktivieren: | ||
+ | Device drivers ---> | ||
+ | Network device support ----> | ||
+ | <M> ppp support | ||
+ | ... | ||
+ | <M> PPP MPPE compression | ||
+ | make modules_install | ||
+ | |||
+ | Den pptp-client emergen | ||
+ | emerge -av pptpclient | ||
+ | |||
+ | kvpnc emergen | ||
+ | emerge -av kvpnc | ||
+ | |||
+ | und starten als su: | ||
+ | sudo kvpnc | ||
+ | |||
+ | wenn man es lieber etwas mehr manuell macht oder kvpnc nicht funktioniert, kann man mit gentoo auch den normalen net dev support mit pppd ueber pptp verwenden. Mit einem neueren 2.6 kernel geht das alles recht einfach. Bei einem aelteren kernel muss man noch den mppe-patch applizieren und den pptp-client evtl mit mppc-mppe USE flag emergen. Ein neuerer kernel ist also empfehlenswert, im folgenden ist username und passwort IRBUSERNAME/IRBUSERPWD, und fuer prima.cs.tu-berlin.de verwende ich die IP adresse direkt, falls man vorher keinen nameserver zur verfuegung hat: | ||
+ | |||
+ | beim kernel kompilieren mppe aktivieren: | ||
+ | Device drivers ---> | ||
+ | Network device support ----> | ||
+ | <M> ppp support | ||
+ | ... | ||
+ | <M> PPP MPPE compression | ||
+ | |||
+ | Den pptp-client emergen | ||
+ | |||
+ | emerge -av pptpclient | ||
+ | |||
+ | das ppp device in /etc/conf.d/net eintragen: | ||
+ | config_ppp0=( "ppp" ) | ||
+ | pppd_ppp0=( | ||
+ | "persist" | ||
+ | "call irb" | ||
+ | "holdoff 10" | ||
+ | "mru 1460" | ||
+ | "mtu 1460" | ||
+ | "idle 600" | ||
+ | ) | ||
+ | link_ppp0="pty \"pptp 130.149.145.10 --nolaunchpppd\"" | ||
+ | |||
+ | /etc/ppp/peers/irb anlegen | ||
+ | pty "pptp 130.149.145.10 --nolaunchpppd" | ||
+ | name IRBUSERNAME | ||
+ | require-mschap-v2 | ||
+ | remotename irb | ||
+ | file /etc/ppp/options.irb | ||
+ | ipparam irb | ||
+ | |||
+ | /etc/ppp/options.irb anlegen: | ||
+ | # | ||
+ | # Lock the port | ||
+ | # | ||
+ | lock | ||
+ | # | ||
+ | # We don't need the tunnel server to authenticate itself | ||
+ | # | ||
+ | noauth | ||
+ | # | ||
+ | # Turn off transmission protocols we know won't be used | ||
+ | # | ||
+ | nobsdcomp | ||
+ | nodeflate | ||
+ | # | ||
+ | # We want MPPE | ||
+ | # | ||
+ | require-mppe-128 # <- use this one for kernel 2.6.15+ | ||
+ | #mppe required,stateless #<- use this one for patched kernel <2.6.15 | ||
+ | #mppe stateless #<- may solve unsupported protocol error | ||
+ | # | ||
+ | # We want a sane mtu/mru | ||
+ | # | ||
+ | mtu 1000 | ||
+ | mru 1000 | ||
+ | # | ||
+ | # Time this thing out or it goes poof | ||
+ | # | ||
+ | lcp-echo-failure 10 | ||
+ | lcp-echo-interval 10 | ||
+ | |||
+ | in /etc/ppp/chap-secrets zwei zeilen eintragen: | ||
+ | IRBUSERNAME irb IRBPASSWD * | ||
+ | irb IRBUSERNAME IRBPASSWD * | ||
+ | |||
+ | das ganze testen mit | ||
+ | pon irb debug dump logfd 2 nodetach | ||
+ | |||
+ | evtl /etc/init.d/net.ppp0 anlegen (aus z.b. net.eth0): | ||
+ | cp /etc/init.d/net.eth0 /etc/init.d/net.ppp0 | ||
+ | |||
+ | /usr/local/sbin/irbroute anlegen | ||
+ | #!/bin/sh | ||
+ | route add -host 130.149.145.10 dev $(route -n | awk '/^0.0.0.0/ {print $8}') gw $(route -n | awk '/^0.0.0.0/ {print $2}') | ||
+ | route del default && route add default dev ppp0 | ||
+ | und ausfuehrbar machen | ||
+ | chmod uga+x /usr/local/sbin/irbroute | ||
+ | |||
+ | VPN starten mit | ||
+ | /etc/init.d/net.ppp0 start | ||
+ | |||
+ | default route umsetzen mit | ||
+ | /usr/local/sbin/irbroute | ||
+ | |||
+ | wenn ping 130.149.17.8 tut aber nicht nslookup www.google.de, dann nameserver eintragen in /etc/resolv.conf: | ||
+ | nameserver 130.149.17.8 | ||
+ | |||
+ | <h3>GNOME und network-manager</h3> | ||
+ | Außerdem gibt es für GNOME den network-manager-gnome(NMG). Zusammen mit dem network-manager-pptp ist es ein Kinderspiel, den Zugang einzurichten. Ich habe es unter Ubuntu 6.10 (Edgy) ausprobiert. Folgende Pakete müssen dafür installiert werden: | ||
+ | |||
+ | network-manager-gnome | ||
+ | network-manager-pptp | ||
+ | |||
+ | Damit wird dann auch pptp-client, etc. installiert. | ||
+ | |||
+ | Danach hat man ein Applet im Gnome-Panel. Dort klickt man auf den NMG und legt eine neue VPN-Verbindung an. Die Einstellungen in aller Kürze: | ||
+ | |||
+ | <h4>Connection</h4> | ||
+ | Name: Irgendwas | ||
+ | Type: Windows VPN (PPTP) | ||
+ | Gateway: prima.cs.tu-berlin.de | ||
+ | |||
+ | <h4>Authentification</h4> | ||
+ | Nichts anwählen | ||
+ | |||
+ | <h4>Compression & Encryption</h4> | ||
+ | Compression alles aus | ||
+ | Encryption alles an | ||
+ | |||
+ | <h4>PPP Options</h4> | ||
+ | Use Peer DNS: an | ||
+ | Exclusive device access: an | ||
+ | MTU: 1496 (nach Hinweis in kvpnc Anleitung hier) | ||
+ | MRU: 1416 | ||
+ | |||
+ | <h4>Routing</h4> | ||
+ | Peer DNS trough tunnel: an | ||
+ | |||
+ | Mit den Einstellungen ging bei mir alles sofort und blitzschnell. Der Verbindungsaufbau dauert nicht mal eine Sekunde. Schneller als unter Windows... :) | ||
+ | |||
+ | <h3>Ubuntu 9.04 mit network-manager</h3> | ||
+ | Da das oben bei mir so nicht ganz funktioniert hat, noch ein paar Ergänzungen für den neuen Networkmanager ab Ubuntu 9.04: | ||
+ | Bei Synaptic müssen folgende Pakete installiert sein: | ||
+ | network-manager | ||
+ | network-manager-pptp | ||
+ | pptp-linux | ||
+ | |||
+ | |||
+ | Dann beim '''Network-Manager''' unter '''VPN''' eine neue Verbindung hinzufügen und '''PPTP''' auswählen und auf '''Erzeugen''' klicken. | ||
+ | Verbindungsname: egal | ||
+ | Gateway: prima.cs.tu-berlin.de | ||
+ | Benutzername: MEIN_IRB_ACC_NAME //womit ihr euch auch ins cs-netz einloggt | ||
+ | Passwort: leer lassen | ||
+ | NT-Domäne: leer lassen | ||
+ | |||
+ | Auf '''Erweitert...''' klicken: | ||
+ | Authentifizierung alle an | ||
+ | Point-to-Point Verschlüsselung verwenden(MPPE) an | ||
+ | Sicherheit: Alle verfügbaren | ||
+ | Erlaube stateful Verschüsselung an | ||
+ | Alle Komprimierung aus (BSD,Deflate,TCP-Header) | ||
+ | Sende PPP-Echo Pakete aus | ||
+ | Bei IPv4-Einstellung: | ||
+ | Automatisch(VPN) | ||
+ | |||
+ | Alles schließen und über linksklick und dann '''VPN-Verbindungen''' und eure eben erstellte VPN-Verbindung auswählen | ||
+ | Es müsste noch eine Passwort anfrage kommen wo ihr euer MC-Chap Passwort eingebt. | ||
+ | Wenn man das bei den Einstellungen eingibt funktioniert die Verbindung nicht. | ||
+ | Wenn ein kleines Schloss erscheint seid ihr im IRB-VPN | ||
+ | |||
+ | |||
+ | |||
+ | <h3>manuell</h3> | ||
+ | Die anschließenden Anweisungen sind in Pseudecode geschrieben und nicht mehr aktuell. Für moderne Linuxdistributionen sollten diese Schritte nicht mehr nötig sein. | ||
if (kernel.version > 2.6.0) { | if (kernel.version > 2.6.0) { | ||
− | + | if (kernel.version < 2.6.15){ | |
+ | download(http://www.polbox.com/h/hs001/linux-2.6.9-mppe-mppc-1.1.patch.gz ); /* ... oder passend*/ | ||
+ | exec(patch linux_src); /* wer das nicht weiß, .... google :) */ | ||
+ | } | ||
download(http://www.polbox.com/h/hs001/ppp-2.4.2-mppe-mppc-1.1.patch.gz ) /* ... oder passend */ | download(http://www.polbox.com/h/hs001/ppp-2.4.2-mppe-mppc-1.1.patch.gz ) /* ... oder passend */ | ||
− | |||
exec(patch pppd); | exec(patch pppd); | ||
rebuild(kernel, with_PPP, with_MPPE); | rebuild(kernel, with_PPP, with_MPPE); | ||
Zeile 25: | Zeile 237: | ||
} | } | ||
− | install_pptpclient; | + | install_pptpclient; |
− | install_pppd(with_mppe_mppc); | + | install_pppd(with_mppe_mppc); |
− | Erstelle /etc/ppp/peers/ | + | Erstelle /etc/ppp/peers/irbvpn mit folgendem Inhalt: |
pty "pptp prima.cs.tu-berlin.de --nolaunchpppd" | pty "pptp prima.cs.tu-berlin.de --nolaunchpppd" | ||
name MEIN_MSCHAP_BENUTZERNAME | name MEIN_MSCHAP_BENUTZERNAME | ||
remotename irbvpn | remotename irbvpn | ||
mppe required,stateless | mppe required,stateless | ||
+ | # möglich, dass die vorangeganene Zeile versionsabhängig (>=pppd 2.4.2) | ||
+ | # ersetzt werden muss durch: | ||
+ | # require-mppe | ||
+ | # nomppe-stateful | ||
require-mschap-v2 | require-mschap-v2 | ||
file /etc/ppp/options.pptp | file /etc/ppp/options.pptp | ||
ipparam irbvpn | ipparam irbvpn | ||
+ | |||
+ | Änderung 04.11.05: mtu angepasst, sonst Probleme. Falls es trotzdem Probleme gibt (z.B. Pings zu einer Site kommen an, aber der Seitenaufbau im Web von dieser ist unvollständig; oder andere nicht rational erklärbare Dinge :P ), dann mit der MTU schrittweise runter gehen. 1300 funktioniert ganz gut; auch von zu Hause (DSL). | ||
+ | |||
+ | '''Als Regel gilt:''' | ||
+ | :Die MTU der VPN-Verbindung muss kleiner als die kleinste MTU auf dem Weg von deinem Rechner zu <code>prima.cs.tu-berlin.de</code> sein, was bei einem ADSL Anschluss höchstens 1492 Bytes/Paket (Ethernet 1500 Bytes/Paket) sein kann. Der Rest ist ein Optimierungsproblem :/ . | ||
+ | |||
+ | Siehe auch [http://de.wikipedia.org/wiki/Maximum_Transmission_Unit Typische MTU-Größen]. | ||
Erstelle /etc/ppp/options.pptp: | Erstelle /etc/ppp/options.pptp: | ||
Zeile 41: | Zeile 264: | ||
noauth | noauth | ||
nobsdcomp | nobsdcomp | ||
+ | mtu 1492 | ||
nodeflate | nodeflate | ||
− | |||
− | |||
lcp-echo-failure 10 | lcp-echo-failure 10 | ||
lcp-echo-interval 10 | lcp-echo-interval 10 | ||
Erstelle /etc/ppp/chap-secrets: | Erstelle /etc/ppp/chap-secrets: | ||
− | MSCHAP_BENUTZERNAME irbvpn | + | MSCHAP_BENUTZERNAME irbvpn MEIN_PASSWORT * |
− | irbvpn | + | irbvpn MSCHAP_BENUTZERNAME MEIN_PASSWORT * |
Erstelle /usr/local/bin/irbroute: | Erstelle /usr/local/bin/irbroute: | ||
#!/bin/sh | #!/bin/sh | ||
− | route add -host prima.cs.tu-berlin.de dev ${ | + | route add -host prima.cs.tu-berlin.de dev $(route | awk '/default/ {print $8}') |
route add default dev ppp0 | route add default dev ppp0 | ||
− | |||
Verbindung aufbauen über (als root) | Verbindung aufbauen über (als root) | ||
pppd call irbvpn | pppd call irbvpn | ||
irbroute | irbroute | ||
+ | |||
+ | == Zugang mit FreeBSD == | ||
+ | |||
+ | Um mit FreeBSD einen Zugang zum VPN des IRB herstellen zu können, benötigt man das Programm ''pptpclient''. Das muss zuerst außerhalb des IRB-Netzes installiert werden, da man einen Internet-Zugang benötigt. | ||
+ | pkg_add -r pptpclient | ||
+ | |||
+ | Als nächstes muss die Konfigurationsdatei ''/etc/ppp/ppp.conf'' bearbeitet werden. Man fügt folgende Zeilen hinzu: | ||
+ | irbvpn: | ||
+ | nat enable yes | ||
+ | set mppe * stateless | ||
+ | set authname ''Benutzername'' | ||
+ | set authkey ''Kennwort'' | ||
+ | add! prima 192.168.16.1 | ||
+ | add! default HISADDR | ||
+ | |||
+ | Um die Verbindung zum VPN herzustellen, bezieht man zunächst eine IP mittels DHCP und leitet den Verbindungsaufbau ein: | ||
+ | dhclient ''Netzwerkschnittstelle'' | ||
+ | pptp prima irbvpn | ||
+ | |||
+ | Das war's auch schon. Bei Fragen und Problemen zum Verbindungsaufbau unter FreeBSD stehe ich gern per E-Mail mit Rat zur Seite. In der Domäne ''cs.tu-berlin.de'' lautet meine Nutzerkennung ''bkoenig''. ;-) | ||
+ | |||
+ | ''Ergänzung:'' Zum Verbindungsaufbau via WLAN eignet sich das Programm ''openvpn''. Eine Anleitung wird hier noch nachgetragen. Bis dahin rücke ich die auch auf Anfrage raus. | ||
+ | |||
+ | == Zugang mit FreeBSD (WLAN) == | ||
+ | |||
+ | Ich konnte das bei mir efolgreich wie folgt mit einem Tubit Account einrichten: | ||
+ | Da OpenVPN benoetigt wird, sollte dieses vorher installiert werden. | ||
+ | |||
+ | pkg_add -r openvpn | ||
+ | |||
+ | Bei FreeBSD >=8 muss ein virtuelles WLan Geraet (wlan0) aus dem bestehendem erzeugt werden. Ich habe folgendes Geraet ''bwi0'' | ||
+ | |||
+ | ifconfig wlan0 create wlandev bwi0 | ||
+ | |||
+ | Dann verbindet man sich mit dem IRB | ||
+ | |||
+ | ifconfig wlan0 ssid IRB channel 11 up | ||
+ | |||
+ | Als naechstes holt man sich eine IP via: | ||
+ | |||
+ | dhclient wlan0 | ||
+ | |||
+ | Da es beim openvpn Client Probleme gibt ein tap0 device anzulegen, muss dieses per Hand erfolgen | ||
+ | |||
+ | ifconfig tap0 create | ||
+ | |||
+ | Jetzt kann man den OpenVPN Client starten | ||
+ | |||
+ | openvpn --config /root/scripts/tubit.conf --float --auth-user-pass tubit_pass | ||
+ | |||
+ | Die tubit.conf sieht wie folgt aus: | ||
+ | remote openvpn1.tubit.tu-berlin.de 1194 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1195 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1196 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1197 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1198 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1199 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1200 | ||
+ | remote openvpn1.tubit.tu-berlin.de 1201 | ||
+ | tls-client | ||
+ | ca tubITChain.crt | ||
+ | client | ||
+ | comp-lzo | ||
+ | auth-user-pass | ||
+ | verb 3 | ||
+ | remote-random | ||
+ | |||
+ | Die Passwortdatei tubit_pass ist wie folgt aufgebaut: | ||
+ | <tubit_username> # ohne @mailbox.bla | ||
+ | <password> | ||
+ | Beides jeweils ohne die <> | ||
+ | |||
+ | |||
+ | Sollte es diesbezueglich Probleme geben stehe ich auch gerne fuer Fragen zur Verfuegung: patrick.plocke@mailbox.tu-berlin.de |
Aktuelle Version vom 2. April 2012, 22:32 Uhr
Dieser Artikel spiegelt sehr wahrscheinlich nicht mehr den aktuellen Stand wider, könnte aber trotzdem von Interesse sein.
Inhaltsverzeichnis
"Der Dienst IRB-VPN (@home, @prima.cs.tu-berlin.de) für
Zugänge aus fremden Netzen wird zum 1.7.2012 eingestellt." --Wilhelm Köhler, IRB
Mit Zugang zum IRB VPN kann man
- Den IRB-Newsserver von zu Hause nutzen
- Den Funkzugang im FR nutzen
- eine statische IP-Adresse bekommen.
Für den Zugang braucht man einen IRB Zugang (beantragen mit dem gelben Zettel in der Einführungswoche). Hat man diesen, beantragt man online
- eine Persönliche IP-Adresse (
optionalmuss man machen) - ein MS-Chap Kennwort
Nun könnt ihr euch mit einem VPN-Client bei prima.cs.tu-berlin.de anmelden. Nach aussen habt ihr dann eure persönliche IP-Adresse, die im Adressraum der TU liegt und könnt so Kontakt zu vielen Uni-Servern aufnehmen, die nur mit Uni-IPs sprechen. Täusche ich mich nicht, werden alle Ports von aussen durchgeleitet, was z.B. Internettelefonie, eingehende FTP-Verbindungen etc ermöglicht.
Anleitungen für die Konfiguration des VPN-Zugangs für verschiedene Betriebssysteme, sowie das Formular zum Freischalten des IRB VPNs findet ihr unten auf der Seite des IRB für Funk- und Festnetzverbindungen. Dort gibt es auch eine ausführlichere Form dieses Textes.
Zugang unter Mac OS X
Im Programm Internet-Verbindung im Menü Ablage>Neue VPN-Verbindung auswählen. Danach in Server-Adresse: prima.cs.tu-berlin.de und bei Benutzername und dem MS-Chap-Kennwort das was ihr beim IRB Beantragt habt (siehe oben).
Viel spaß, das wars!
Zugang unter WindowsXP
Ähnlich wie beim Mac unter Netzwerkverbindungen eine neue Verbindung estellen und im Dialog die VPN Verbindung auswählen. Server-Adresse: prima.cs.tu-berlin.de Benutzername und MS-Chap-Kennwort das was ihr beim IRB Beantragt habt (siehe oben).
Zugang mit Linux
Falls jemand speziell für Fedora Core 3-5 Hilfe sucht, bitte eine Mail an kenhru<aatt>cs.tu-berlin.de Sollte es viele davon geben, wird eine Anleitung dafür erstellt und alle die nachgefragt haben, werden benachrichtigt.
Auf IRB-vpn mit kvpnc ist die Einrichtung von kvpnc auf einem SuSE Linux 10 beschrieben.
Besondere Hürde waren die routen...
halb-automatisch für Distributionen
Erster Anlaufpunkt ist die sehr gut dokumentierte Seite des PPTP Clients für Linux, auf der sowohl allgemeine, wie auch distributionsspezifische Anleitungen zu finden sind. Ich fasse nochmal die wichtigsten Punkte für den Zugang zum IRB zusammen.
Neuerdings gibt es für KDE auch einen allgemeinen VPN client (besser Verbindungsmanager) - KVpnc. Damit kann man die Verbindung selbst einfacher einrichten.
Gentoo
Am einfachsten verwendet man kvpnc:
Beim kernel kompilieren mppe aktivieren:
Device drivers ---> Network device support ----> <M> ppp support ... <M> PPP MPPE compression make modules_install
Den pptp-client emergen
emerge -av pptpclient
kvpnc emergen
emerge -av kvpnc
und starten als su:
sudo kvpnc
wenn man es lieber etwas mehr manuell macht oder kvpnc nicht funktioniert, kann man mit gentoo auch den normalen net dev support mit pppd ueber pptp verwenden. Mit einem neueren 2.6 kernel geht das alles recht einfach. Bei einem aelteren kernel muss man noch den mppe-patch applizieren und den pptp-client evtl mit mppc-mppe USE flag emergen. Ein neuerer kernel ist also empfehlenswert, im folgenden ist username und passwort IRBUSERNAME/IRBUSERPWD, und fuer prima.cs.tu-berlin.de verwende ich die IP adresse direkt, falls man vorher keinen nameserver zur verfuegung hat:
beim kernel kompilieren mppe aktivieren:
Device drivers ---> Network device support ----> <M> ppp support ... <M> PPP MPPE compression
Den pptp-client emergen
emerge -av pptpclient
das ppp device in /etc/conf.d/net eintragen:
config_ppp0=( "ppp" ) pppd_ppp0=( "persist" "call irb" "holdoff 10" "mru 1460" "mtu 1460" "idle 600" ) link_ppp0="pty \"pptp 130.149.145.10 --nolaunchpppd\""
/etc/ppp/peers/irb anlegen
pty "pptp 130.149.145.10 --nolaunchpppd" name IRBUSERNAME require-mschap-v2 remotename irb file /etc/ppp/options.irb ipparam irb
/etc/ppp/options.irb anlegen:
# # Lock the port # lock # # We don't need the tunnel server to authenticate itself # noauth # # Turn off transmission protocols we know won't be used # nobsdcomp nodeflate # # We want MPPE # require-mppe-128 # <- use this one for kernel 2.6.15+ #mppe required,stateless #<- use this one for patched kernel <2.6.15 #mppe stateless #<- may solve unsupported protocol error # # We want a sane mtu/mru # mtu 1000 mru 1000 # # Time this thing out or it goes poof # lcp-echo-failure 10 lcp-echo-interval 10
in /etc/ppp/chap-secrets zwei zeilen eintragen:
IRBUSERNAME irb IRBPASSWD * irb IRBUSERNAME IRBPASSWD *
das ganze testen mit
pon irb debug dump logfd 2 nodetach
evtl /etc/init.d/net.ppp0 anlegen (aus z.b. net.eth0):
cp /etc/init.d/net.eth0 /etc/init.d/net.ppp0
/usr/local/sbin/irbroute anlegen
#!/bin/sh route add -host 130.149.145.10 dev $(route -n | awk '/^0.0.0.0/ {print $8}') gw $(route -n | awk '/^0.0.0.0/ {print $2}') route del default && route add default dev ppp0
und ausfuehrbar machen
chmod uga+x /usr/local/sbin/irbroute
VPN starten mit
/etc/init.d/net.ppp0 start
default route umsetzen mit
/usr/local/sbin/irbroute
wenn ping 130.149.17.8 tut aber nicht nslookup www.google.de, dann nameserver eintragen in /etc/resolv.conf:
nameserver 130.149.17.8
GNOME und network-manager
Außerdem gibt es für GNOME den network-manager-gnome(NMG). Zusammen mit dem network-manager-pptp ist es ein Kinderspiel, den Zugang einzurichten. Ich habe es unter Ubuntu 6.10 (Edgy) ausprobiert. Folgende Pakete müssen dafür installiert werden:
network-manager-gnome network-manager-pptp
Damit wird dann auch pptp-client, etc. installiert.
Danach hat man ein Applet im Gnome-Panel. Dort klickt man auf den NMG und legt eine neue VPN-Verbindung an. Die Einstellungen in aller Kürze:
Connection
Name: Irgendwas Type: Windows VPN (PPTP) Gateway: prima.cs.tu-berlin.de
Authentification
Nichts anwählen
Compression & Encryption
Compression alles aus Encryption alles an
PPP Options
Use Peer DNS: an Exclusive device access: an MTU: 1496 (nach Hinweis in kvpnc Anleitung hier) MRU: 1416
Routing
Peer DNS trough tunnel: an
Mit den Einstellungen ging bei mir alles sofort und blitzschnell. Der Verbindungsaufbau dauert nicht mal eine Sekunde. Schneller als unter Windows... :)
Ubuntu 9.04 mit network-manager
Da das oben bei mir so nicht ganz funktioniert hat, noch ein paar Ergänzungen für den neuen Networkmanager ab Ubuntu 9.04: Bei Synaptic müssen folgende Pakete installiert sein:
network-manager network-manager-pptp pptp-linux
Dann beim Network-Manager unter VPN eine neue Verbindung hinzufügen und PPTP auswählen und auf Erzeugen klicken.
Verbindungsname: egal Gateway: prima.cs.tu-berlin.de Benutzername: MEIN_IRB_ACC_NAME //womit ihr euch auch ins cs-netz einloggt Passwort: leer lassen NT-Domäne: leer lassen
Auf Erweitert... klicken:
Authentifizierung alle an Point-to-Point Verschlüsselung verwenden(MPPE) an Sicherheit: Alle verfügbaren Erlaube stateful Verschüsselung an Alle Komprimierung aus (BSD,Deflate,TCP-Header) Sende PPP-Echo Pakete aus
Bei IPv4-Einstellung:
Automatisch(VPN)
Alles schließen und über linksklick und dann VPN-Verbindungen und eure eben erstellte VPN-Verbindung auswählen Es müsste noch eine Passwort anfrage kommen wo ihr euer MC-Chap Passwort eingebt. Wenn man das bei den Einstellungen eingibt funktioniert die Verbindung nicht. Wenn ein kleines Schloss erscheint seid ihr im IRB-VPN
manuell
Die anschließenden Anweisungen sind in Pseudecode geschrieben und nicht mehr aktuell. Für moderne Linuxdistributionen sollten diese Schritte nicht mehr nötig sein.
if (kernel.version > 2.6.0) { if (kernel.version < 2.6.15){ download(http://www.polbox.com/h/hs001/linux-2.6.9-mppe-mppc-1.1.patch.gz ); /* ... oder passend*/ exec(patch linux_src); /* wer das nicht weiß, .... google :) */ } download(http://www.polbox.com/h/hs001/ppp-2.4.2-mppe-mppc-1.1.patch.gz ) /* ... oder passend */ exec(patch pppd); rebuild(kernel, with_PPP, with_MPPE); rebuild(pppd); }
install_pptpclient; install_pppd(with_mppe_mppc);
Erstelle /etc/ppp/peers/irbvpn mit folgendem Inhalt:
pty "pptp prima.cs.tu-berlin.de --nolaunchpppd" name MEIN_MSCHAP_BENUTZERNAME remotename irbvpn mppe required,stateless # möglich, dass die vorangeganene Zeile versionsabhängig (>=pppd 2.4.2) # ersetzt werden muss durch: # require-mppe # nomppe-stateful require-mschap-v2 file /etc/ppp/options.pptp ipparam irbvpn
Änderung 04.11.05: mtu angepasst, sonst Probleme. Falls es trotzdem Probleme gibt (z.B. Pings zu einer Site kommen an, aber der Seitenaufbau im Web von dieser ist unvollständig; oder andere nicht rational erklärbare Dinge :P ), dann mit der MTU schrittweise runter gehen. 1300 funktioniert ganz gut; auch von zu Hause (DSL).
Als Regel gilt:
- Die MTU der VPN-Verbindung muss kleiner als die kleinste MTU auf dem Weg von deinem Rechner zu
prima.cs.tu-berlin.de
sein, was bei einem ADSL Anschluss höchstens 1492 Bytes/Paket (Ethernet 1500 Bytes/Paket) sein kann. Der Rest ist ein Optimierungsproblem :/ .
Siehe auch Typische MTU-Größen.
Erstelle /etc/ppp/options.pptp:
lock noauth nobsdcomp mtu 1492 nodeflate lcp-echo-failure 10 lcp-echo-interval 10
Erstelle /etc/ppp/chap-secrets:
MSCHAP_BENUTZERNAME irbvpn MEIN_PASSWORT * irbvpn MSCHAP_BENUTZERNAME MEIN_PASSWORT *
Erstelle /usr/local/bin/irbroute:
#!/bin/sh route add -host prima.cs.tu-berlin.de dev $(route | awk '/default/ {print $8}') route add default dev ppp0
Verbindung aufbauen über (als root)
pppd call irbvpn irbroute
Zugang mit FreeBSD
Um mit FreeBSD einen Zugang zum VPN des IRB herstellen zu können, benötigt man das Programm pptpclient. Das muss zuerst außerhalb des IRB-Netzes installiert werden, da man einen Internet-Zugang benötigt.
pkg_add -r pptpclient
Als nächstes muss die Konfigurationsdatei /etc/ppp/ppp.conf bearbeitet werden. Man fügt folgende Zeilen hinzu:
irbvpn: nat enable yes set mppe * stateless set authname Benutzername set authkey Kennwort add! prima 192.168.16.1 add! default HISADDR
Um die Verbindung zum VPN herzustellen, bezieht man zunächst eine IP mittels DHCP und leitet den Verbindungsaufbau ein:
dhclient Netzwerkschnittstelle pptp prima irbvpn
Das war's auch schon. Bei Fragen und Problemen zum Verbindungsaufbau unter FreeBSD stehe ich gern per E-Mail mit Rat zur Seite. In der Domäne cs.tu-berlin.de lautet meine Nutzerkennung bkoenig. ;-)
Ergänzung: Zum Verbindungsaufbau via WLAN eignet sich das Programm openvpn. Eine Anleitung wird hier noch nachgetragen. Bis dahin rücke ich die auch auf Anfrage raus.
Zugang mit FreeBSD (WLAN)
Ich konnte das bei mir efolgreich wie folgt mit einem Tubit Account einrichten: Da OpenVPN benoetigt wird, sollte dieses vorher installiert werden.
pkg_add -r openvpn
Bei FreeBSD >=8 muss ein virtuelles WLan Geraet (wlan0) aus dem bestehendem erzeugt werden. Ich habe folgendes Geraet bwi0
ifconfig wlan0 create wlandev bwi0
Dann verbindet man sich mit dem IRB
ifconfig wlan0 ssid IRB channel 11 up
Als naechstes holt man sich eine IP via:
dhclient wlan0
Da es beim openvpn Client Probleme gibt ein tap0 device anzulegen, muss dieses per Hand erfolgen
ifconfig tap0 create
Jetzt kann man den OpenVPN Client starten
openvpn --config /root/scripts/tubit.conf --float --auth-user-pass tubit_pass
Die tubit.conf sieht wie folgt aus:
remote openvpn1.tubit.tu-berlin.de 1194 remote openvpn1.tubit.tu-berlin.de 1195 remote openvpn1.tubit.tu-berlin.de 1196 remote openvpn1.tubit.tu-berlin.de 1197 remote openvpn1.tubit.tu-berlin.de 1198 remote openvpn1.tubit.tu-berlin.de 1199 remote openvpn1.tubit.tu-berlin.de 1200 remote openvpn1.tubit.tu-berlin.de 1201 tls-client ca tubITChain.crt client comp-lzo auth-user-pass verb 3 remote-random
Die Passwortdatei tubit_pass ist wie folgt aufgebaut:
<tubit_username> # ohne @mailbox.bla <password>
Beides jeweils ohne die <>
Sollte es diesbezueglich Probleme geben stehe ich auch gerne fuer Fragen zur Verfuegung: patrick.plocke@mailbox.tu-berlin.de