IPSec Roadwarrior-VPN via racoon
Dieses Dokument beschreibt die Konfiguration und den Betrieb eines VPN mit Preshared-Keys und Racoon unter Fedora Core 4.
-
Falls nicht vorhanden, das Verzeichnis „/etc/racoon“ anlegen, hier werden alle Configfiles abgelegt
/etc/racoon/setkey.conf
#!/sbin/setkey -f # Flush the SAD and SPD flush; spdflush; ############################################################ # Roadwarrior <-> Gateway # 123.123.123.123 = externe IP des Gateways # 192.168.1.0/24 = internes Netz auf Gateway-Seite # HOST to HOST spdadd 123.123.123.123 0.0.0.0 any -P out ipsec esp/tunnel/123.123.123.123-0.0.0.0/require; spdadd 0.0.0.0 123.123.123.123 any -P in ipsec esp/tunnel/0.0.0.0-123.123.123.123/require; # HOST to LAN spdadd 192.168.1.0/24 0.0.0.0 any -P out ipsec esp/tunnel/123.123.123.123-0.0.0.0/require; spdadd 0.0.0.0 192.168.1.0/24 any -P in ipsec esp/tunnel/0.0.0.0-123.123.123.123/require; ############################################################
-
mit „chmod 0700 /etc/racoon/setkey.conf“ lesen/schreiben/ausführen für root setzen.
/etc/racoon/racoon.conf
path include "/etc/racoon"; path pre_shared_key "/etc/racoon/psk.txt"; path certificate "/etc/racoon/certs"; # Preshared Keys remote anonymous { exchange_mode aggressive, main, base; #doi ipsec_doi; nat_traversal on; generate_policy on; passive on; #my_identifier address 212.34.164.18; peers_identifier user_fqdn; proposal { encryption_algorithm 3des; hash_algorithm md5; authentication_method pre_shared_key; dh_group modp1024; } } sainfo anonymous { pfs_group modp1024; encryption_algorithm 3des; authentication_algorithm hmac_md5; compression_algorithm deflate; }
-
mit „chmod 0600 /etc/racoon/racoon.conf“ lesen/schreiben für root setzen.
/etc/racoon/psk.txt enthält die PresharedKeys in folgendem Format:
roadwarrior001@gateway.de MpfeEuwPEkov7ScUtKtmAa4FGWVda9jjtruesrkJKUx8sWC4u9
-
mit „chmod 0600 /etc/racoon/psk.txt“ lesen/schreiben für root setzen.
/etc/sysconfig/racoon
OPTS="-f /etc/racoon/racoon.conf -l /var/log/racoon -v"
-
mit „chmod 0644 /etc/sysconfig/racoon“ die Berechtigungen setzen
/etc/init.d/racoon
#!/bin/bash # # racoon Start/Stop the racoon IKE daemon. # # chkconfig: 2345 90 60 # description: racoon is the IKE daemon of the KAME tools. Use it with \ # the native Linux 2.6 IPsec-Stack # processname: racoon # config: /etc/racoon/racoon.conf # pidfile: /var/run/racoon.pid # Source function library. . /etc/init.d/functions OPTS="" [ -f /etc/sysconfig/racoon ] && . /etc/sysconfig/racoon RETVAL=0 prog="racoon" start() { /etc/racoon/setkey.conf echo -n $"Starting $prog: " daemon racoon $OPTS RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/racoon return $RETVAL } stop() { echo -n $"Stopping $prog: " killproc racoon RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/racoon return $RETVAL } rhstatus () { status racoon } restart () { stop start } reload () { echo -n $"Reloading racoon daemon configuration: " killproc racoon -HUP RETVAL=$? echo return $RETVAL } case "$1" in start) start ;; stop) stop ;; restart) restart ;; reload) reload ;; status) rhstatus ;; condrestart) [ -f /var/lock/subsys/crond ] && restart || : ;; *) echo $"Usage: $0 {start|stop|status|reload|restart|condrestart}" exit 1 esac exit $?
-
mit „chmod 0744 /etc/init.d/racoon“ die Berechtigungen setzen.
-
ein „chkconfig –add racoon“ aktiviert das Script beim Booten
-
mit „service racoon start“ die Security Policy Database (SPD) laden (setkey.conf) und den Racoon-Dämon starten
-
geloggt wird nach /var/log/racoon
-
Um den Debuglevel zu erhöhen ggf. in /etc/sysconfig/racoon die -v Option um weitere v ergänzen, z.B.
OPTS="-f /etc/racoon/racoon.conf -l /var/log/racoon -vvv"