經過N次痛苦的經歷,終于在優龍的板子上配置完成Freeswan。寫點心得。
我用的是優龍帶的uclinux,包名FS4510-VII-uClinux-20040408.tar.gz
一、板子調通,基礎中的基礎
二、虛擬機比較好用,我編譯uclinux都是在上面作的。如果板子不好用Skyeye可以幫大忙。
三、內核配的時候要小心,Freeswan相關的不是都加上就可以了。
Packet socket選上,以便支持tcpdump.可是下面的子項Packet socket:mmapped IO不要選,編譯有錯誤.
Unix domain sockets選上
TCP/IP.networking 選上,子項里只選IP: tunneling,其他都不要.
IP Security Protocol (FreeS/WAN IPSEC)選
下面的子項除了第一項IPSEC:IP-in-IP encapsulation (tunnel mode)之外都可以選
這個選上到pluto啟動的時候會有問題.會顯示no public interface //不是的,Ip壓縮那項不能選,這項可以。還是有懷疑。
freeswan中的應用程序最后一個fswcert需要open ssl的支持,編譯時要注意。
ipsec.conf:
config setup
interfaces="ipsec0=eth0"
klipsdebug=all
plutodebug=all
plutoload=%search
plutostart=%search
uniqueids=yes
conn %default
keyingtries=0
spi=0x200
esp=3des-md5-96
espenckey=0x1234567_89abcdef_02468ace_13579bdf_12345678_9abcdef0
espauthkey=0x12345678_9abcdef0_2468ace0_13579bdf
authby=secret
conn test
left=192.168.102.88
leftsubnet=192.168.104.1/24
right=192.168.102.1
rightsubnet=192.168.103.1/24
auto=start
keyingtries=0
spi=0x200
esp=3des-md5-96
espenckey=0x1234567_89abcdef_02468ace_13579bdf_12345678_9abcdef0
espauthkey=0x12345678_9abcdef0_2468ace0_13579bdf
ipsec.secrets:
192.168.102.88 192.168.102.1 : PSK "0sAQPCxsv3x625kpNVkaA1kiTb"
rc: //這個非常重要,在uclinux里沒有ipsec的高級工具,只能用基本工具配,而且有一定的順序。
hostname Tustleft
/bin/expand /etc/ramfs.img /dev/ram0
mount -t proc proc /proc
mount -t ext2 /dev/ram0 /var
mkdir /var/config
mkdir /var/tmp
mkdir /var/log
mkdir /var/run
mkdir /var/lock
mkdir /var/empty
cat /etc/motd
ifconfig eth0 192.168.102.88
ifconfig eth1 192.168.104.1
ifconfig lo 127.0.0.1
tncfg --attach --virtual ipsec0 --physical eth0
ifconfig ipsec0 192.168.102.88
route add default gw 192.168.102.3 netmask 255.255.255.0
pluto &
whack --listen
whack --name tust --host 192.168.102.88 --client 192.168.104.0/24 --to --host 192.168.102.1 --client 192.168.103.0/24 --psk
whack --status