L2TP: Unterschied zwischen den Versionen
Denis (Diskussion | Beiträge) |
Denis (Diskussion | Beiträge) |
||
| Zeile 100: | Zeile 100: | ||
/etc/init.d/ipsec restart | /etc/init.d/ipsec restart | ||
/etc/init.d/xl2tpd restart | /etc/init.d/xl2tpd restart | ||
| + | |||
| + | =NAT= | ||
| + | Um die IPs direkt ins Netz zu natten kann man wie folgt vorgehen: | ||
| + | Es werden IP Adressen an die interne Schnittstelle angebunden und dann einfach genattet. | ||
| + | |||
| + | Beispiel: | ||
| + | |||
| + | |||
| + | |||
| + | ##VORBEREITUNG FUER NAT | ||
| + | iptables -A OUTPUT -j ACCEPT -o ppp+ -m state --state NEW | ||
| + | #iptables -A INPUT -j ACCEPT -i ppp+ -m state --state NEW | ||
| + | for IP in $(seq 221 240); do #da die IP Range angeben | ||
| + | iptables -A INPUT -s 172.28.16.$IP -i ppp+ -m state --state NEW -j ACCEPT #Hier wird eine INPUT Regel für die l2tp IP erstellt | ||
| + | iptables -A FORWARD -s 172.28.16.$IP -i ppp+ -m state --state NEW -j ACCEPT #Hier wird eine FORWARD Regel für die l2tp IP erstellt | ||
| + | ip addr add 172.20.20.$IP dev $LANDEV > /dev/null 2>&1 #Hier werden IPs aus dem internen Netz reserviert | ||
| + | iptables -t nat -A POSTROUTING -j SNAT -o $LANDEV -s 172.20.20.$IP --to 172.28.16.$IP #NAT | ||
| + | iptables -t nat -A PREROUTING -j DNAT -i $LANDEV -d 172.28.16.$IP --to 172.20.20.$IP #NAT | ||
| + | done | ||
=Client= | =Client= | ||
Version vom 24. Oktober 2014, 07:13 Uhr
Server
Installation
apt-get install xl2tpd ppp openswan
Openswan
ipsec.conf-default
Man muss beachten, dass l2tp mit der verage eine leftsubnets in der %default-section nicht zurechtkommt! Diese Parameter müssen entfernt werden. Also falls ihr so etwas in eurer .conf drin habt:
conn %default
authby=secret
left=213.183.75.138
leftsubnet=172.20.20.0/24
ike=aes256-sha1-modp1024
esp=aes256-sha1
left=%defaultroute
auto=start
pfs=yes
bitte ändern in:
conn %default
authby=secret
ike=aes256-sha1-modp1024
esp=aes256-sha1
auto=start
pfs=yes
ipsec.conf complete
cat /etc/ipsec.conf
version 2.0
config setup
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
oe=off
protostack=netkey
conn l2tp
authby=secret
pfs=no
auto=add
type=transport
left=XXX.XXX.XXX.XXX
leftprotoport=17/1701
right=%any
rightprotoport=17/%any
cat /etc/ipsec.secrets XXX.XXX.XXX.XXX %any : PSK "1234"
XL2TP
cat /etc/xl2tpd/xl2tpd.conf
[global] #important when more then one ips on the nic #listen-addr = XXX.XXX.XXX.XXX ipsec saref = yes debug avp = yes debug network = yes debug state = yes debug tunnel = yes [lns default] ip range = 10.1.2.2-10.1.2.255 local ip = 10.1.2.1 refuse chap = yes refuse pap = yes require authentication = yes ppp debug = yes pppoptfile = /etc/ppp/options.xl2tpd length bit = yes
PPP
cat /etc/ppp/options.xl2tpd require-mschap-v2 ms-dns 192.168.240.21 ms-dns 192.168.240.22 asyncmap 0 auth crtscts lock hide-password modem #for ppp3 unit 3 debug name l2tpd proxyarp lcp-echo-interval 30 lcp-echo-failure 4
cat /etc/ppp/chap-secrets xinux l2tpd "geheimes-passwort" * #l2tpd xinux "geheimes-passwort" *
Starten
/etc/init.d/ipsec restart /etc/init.d/xl2tpd restart
NAT
Um die IPs direkt ins Netz zu natten kann man wie folgt vorgehen: Es werden IP Adressen an die interne Schnittstelle angebunden und dann einfach genattet.
Beispiel:
- VORBEREITUNG FUER NAT
iptables -A OUTPUT -j ACCEPT -o ppp+ -m state --state NEW
- iptables -A INPUT -j ACCEPT -i ppp+ -m state --state NEW
for IP in $(seq 221 240); do #da die IP Range angeben iptables -A INPUT -s 172.28.16.$IP -i ppp+ -m state --state NEW -j ACCEPT #Hier wird eine INPUT Regel für die l2tp IP erstellt iptables -A FORWARD -s 172.28.16.$IP -i ppp+ -m state --state NEW -j ACCEPT #Hier wird eine FORWARD Regel für die l2tp IP erstellt ip addr add 172.20.20.$IP dev $LANDEV > /dev/null 2>&1 #Hier werden IPs aus dem internen Netz reserviert iptables -t nat -A POSTROUTING -j SNAT -o $LANDEV -s 172.20.20.$IP --to 172.28.16.$IP #NAT iptables -t nat -A PREROUTING -j DNAT -i $LANDEV -d 172.28.16.$IP --to 172.20.20.$IP #NAT done
Client
Installation
apt-get install xl2tpd ppp openswan
ipsec
cat /etc/ipsec.conf
version 2.0 # conforms to second version of ipsec.conf specification
config setup
dumpdir=/var/run/pluto/
protostack=netkey
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:25.0.0.0/8,%v6:fd00::/8,%v6:fe80::/10
oe=off
conn yourconn
authby=secret
pfs=no
auto=add
keyingtries=3
dpddelay=30
dpdtimeout=120
dpdaction=clear
rekey=yes
ikelifetime=8h
keylife=1h
type=transport
left=%defaultroute
leftprotoport=17/1701
right=yourvpnserver.com
rightprotoport=17/1701
cat /etc/ipsec.secrets %any yourvpnserver.com : PSK "pissespisse"
xl2tp
cat /etc/xl2tpd/xl2tpd.conf [lac vpn-connection] lns = yourvpnserver.com ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd.client length bit = yes
ppp
cat /etc/ppp/options.l2tpd.client ipcp-accept-local ipcp-accept-remote refuse-eap require-mschap-v2 noccp noauth idle 1800 mtu 1410 mru 1410 defaultroute usepeerdns debug lock connect-delay 5000 name xinux password suxer
Start Script
#!/bin/bash case $1 in start) /etc/init.d/ipsec restart sleep 1 ipsec auto --up yourconn sleep 1 /etc/init.d/xl2tpd start sleep 1 echo "c vpn-connection" > /var/run/xl2tpd/l2tp-control sleep 5 ip route add 192.168.240.0/21 via 172.28.6.1 ;; stop) ip route del 192.168.240.0/21 echo "d vpn-connection" > /var/run/xl2tpd/l2tp-control /etc/init.d/xl2tpd stop ipsec auto --down yourconn /etc/init.d/ipsec stop ;; esac
Windows Client
- -> Startmenü
- -> Systemsteuerung
(Bei Anzeige: Kategorie)
- -> Netzwerk und Internet
- -> Netzwerkstatus- und Aufgaben anzeigen
- -> Neue Verbindung oder neues Netz einrichten
- -> Verbindung mit dem Arbeitsplatz herstellen
- -> (Nein, eine neue Verbindung erstellen)
- -> Die Internetverbindung (VPN) verwenden
- -> Internetadresse + Name eingeben
- -> "Jetzt nicht verbinden, nur für spätere Verwendung einrichten." auswählen
- -> "Weiter" klicken
- -> Benutzername + PW und
- -> "Dieses Kennwort speichern" auswählen
- -> Erstellen
- -> Fenster kann geschlossen werden
- -> Verbindung mit einem Netzwerk herstellen (die VPN müsste erscheinen)
- -> Rechtsklick auf die VPN
- -> Eigentschaften
- -> Reiter "Netzwerk" auswählen
- -> Alles abwählen bis auf "Client für Microsoft-Netzwerke" und "Internetprotokoll Version 4"
- -> Reiter "Sicherheit" VPN-Typ: Layer 2 Tunneling Protocol...
- -> erweiterte Einstellungen
- -> Vorinstallierten Schlüssel verwenden
- -> verbinden
VPN-Verbindung dauerhaft freischalten: Unter: (regedit) HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows NT\ CurrentVersion\ Winlogon dort ist dem Wert "KeepRasConnections" als Datentyp REG_SZ der Zahlenwert "1" zuzuweisen.
Bebilderte Anleitung:
- windows7
- windows xp
- iphone
- ipad
- android 2.3
Quellen:
- http://blog.riobard.com/2010/04/30/l2tp-over-ipsec-ubuntu
- http://pleasefeedthegeek.wordpress.com/2012/04/21/l2tp-ubuntu-server-setup-for-ios-clients/
- http://www.jacco2.dds.nl/networking/linux-l2tp.html
- https://wiki.archlinux.org/index.php/L2TP/IPsec_VPN_client_setup
- http://bailey.st/blog/2011/07/14/connecting-to-a-l2tpipsec-vpn-from-ubuntu-desktop/