Dialup IPsec Openswan - Netscreen
Hier beschreibe ich wie man ein IPsec-VPN zwischen Linux und einer Netscreen mit Hilfe von OpenSwan aufbaut.
In diesem Beispiel wollen wir auf das Netz 192.168.22.0/24 hinter der Firewall zugreifen.
Folg. Schritte sind auf der Netscreen zu tun:
Netscreen
User anlegen:
- Objects -> Users -> local -> New
Username: vpn-user IKE Simple Identity aktivieren IKE Identity: vpn-user@example.de
Phase 1 konfigurieren:
- VPNs -> AutoKey Advanced -> Gateway -> New
Gateway Name: vpn-p1 Dialup User aktivieren und User "vpn-user" auswählen
- Advanced
Preshared Key eintragen: irgendeinlangespasswort Outgoing Interface: (das externe Interface) Phase 1 Proposal: pre-g2-3des-sha Mode (Initiator): Aggressive Enable NAT-Traversal
Phase 2 konfigurieren:
- VPNs -> AutoKey IKE -> New
VPN Name: vpn-p2 Remote Gateway: Predefined -> vpn-p1
- Advanced
Phase 2 Proposal: nopfs-esp-3des-sha
Nun müssen wir die Policy anlegen um den Zugriff zu gewährleisten. Wichtig ist hierbei, dass Netz wo wir hinwollen zu definieren:
- Policy -> Policies -> Untrust - Trust -> New
Source Address: Dial-Up VPN Destination Address: 192.168.22.0/24 Service: ANY Action: Tunnel Tunnel VPN: vpn-p2 Modify matching bidirectional VPN policy aktivieren
Das war es auf der Seite der Netscreen. Nun müssen wir noch unseren Road Warrior (Client) konfigurieren.
OpenSwan
In diesem Beispiel verwende ich mal wieder Debian Lenny.
Als erstes wird OpenSwan aus dem Reporitory installiert:
bash# apt-get install openswan
Nun bearbeiten wir unsere /etc/ipsec.conf die am Ende so aussehen sollte:
# basic configuration
config setup
interfaces=%defaultroute
nat_traversal=yes
nhelpers=0
conn vpn01
type=tunnel
auto=add
pfs=no
authby=secret
keyingtries=3
aggrmode=yes
ike=3des-sha1-modp1024
esp=3des-sha1
left=%defaultroute
leftid="vpn-user@example.de"
right=1.1.1.1 # IP-Adresse der Netscreen
rightsubnet=192.168.22.0/24
#Disable Opportunistic Encryption
include /etc/ipsec.d/examples/no_oe.conf
Nun noch unser Key in der /etc/ipsec.secrets:
vpn-user@example.de : PSK "irgendeinlangespasswort"
Jetzt müssen wir unser VPN nur noch starten:
bash# ipsec setup --start
oder
bash# /etc/init.d/ipsec start
Um den IPsec-Tunnel hoch zu nehmen:
bash# ipsec auto --up vpn01