IPSec kasutamine FreeBSD'ga

Allikas: Kuutõrvaja
Redaktsioon seisuga 7. mai 2013, kell 13:19 kasutajalt Jj (arutelu | kaastöö)

Kõige esimesena on vaja konfigureerida FreeBSD kernelisse ipseci tugi

options IPSEC #IP security
options IPSEC_NAT_T
device crypto

Ipsec2.jpg

Mõlemal tulemüüril on välised ipv4 aadressid, millede vahel moodustatakse ühendus (gif0 seade). Selle ühenduse sisse moodustatakse omakorda tunnel, kus antakse selle sisemistele otspunkidele sisevõrgu aadressid, et nende vahel moodustuks tilluke LAN. Need peaksid olema suvalised aadressid, mis vaja omavahel kokkuleppida Nt 192.168.1.1 ja 192.168.2.1.

gif_interfaces="gif0"
gifconfig_gif0="<esimese masina aadress> <teise aadress>"
ifconfig_gif0="inet 192.168.1.1 192.168.2.1 netmask 255.255.255.0"

Hiljem tuleb seadistada paika ka võrguruutingud aga selleni veel jõuame.

Lugedes dokumentatsioon tundub, et teise otsa sisemist ip-d vajab ta tegevuseks, mida ta nimetab Encapsulation (ehk siis tekitab sisuliselt nende kahe sisemise aadressi vahele point-to-point ühenduse. Pakette suunatase sinna ühendusse aga ruuting tabeli abil.

Seejärel on vaja paika seadistada policyd

ipsec_enable="YES" 
ipsec_program="/usr/local/sbin/setkey"
ipsec_file="/usr/local/etc/racoon/setkey.conf"

Kontrollida saame laetud seadistust setkey käsuga

# setkey -DP

Seejärel on vaja keyring daemonit (racoon paketist ipsec-tools). Tegemist on KAME nimelise projektiga - algselt IPv6 protokolli jaoks tehtud ja IPv4 jaoks backporditud lahendus.

# cp /usr/local/share/examples/ipsec-tools/racoon.conf.sample /usr/local/etc/racoon/racoon.conf
# touch /usr/local/etc/racoon/psk.txt
# chown root:wheel /usr/local/etc/racoon/psk.txt
# chmod 600 /usr/local/etc/racoon/psk.txt

rc.conf seadistada

racoon_enable=”yes”
racoon_flags=”-l /var/log/racoon.log”

paroolifail /usr/local/etc/racoon/psk.txt

192.168.2.1 mingiparool

Käivitada käsuga

# /usr/local/sbin/racoon -F -f /usr/local/etc/racoon/racoon.conf

Ja teeme ruutingu kas siis käsuga

# route add 192.168.0.0/24 -iface gif0
static_routes="vpn" 
route_vpn="192.168.0.0/24 -iface gif0"