星期一, 12月 17, 2012

 

ClearOS 5.2 OpenSWAN+xl2tpd架設


雖然網上有很多教程,但還是自己做點 memo 讓以後有點參考。
首先,安裝好 dependencies:
# yum install libpcap-devel ppp make gcc gmp-devel bison flex wget
下載 xl2tpd 並解壓:
# wget -O - https://github.com/xelerance/xl2tpd/archive/v1.3.1.tar.gz|tar xzf -
編譯並安裝:
# cd xl2tpd-1.3.1
# make install
複製 service 控制程式:
# ln -s /usr/local/sbin/xl2tpd /usr/sbin/xl2tpd
# cp packaging/fedora/xl2tpd.init /etc/init.d/xl2tpd
# chmod 755 /etc/init.d/xl2tpd
# chkconfig --add xl2tpd
複製預設設定:
# mkdir /etc/xl2tpd
# cp examples/xl2tpd.conf /etc/xl2tpd
# cp examples/ppp-options.xl2tpd /etc/ppp/options.xl2tpd
打開 /etc/xl2tpd/xl2tpd.conf 和 /etc/ppp/options.xl2tpd 並按需求修改。如 xl2tpd.conf 中的 ip rangelocal ip,按伺服器情況關閉ipsec saref,和 options.xl2tpd 中的 ms-dns 要改為伺服器的 DNS server 紀錄。
打開 /etc/ppp/chap-secrets 加入一行(myvpn-user及myvpn-password請自己按實際情況修改):
myvpn-user    *         myvpn-password  *
啟動並設定自動啟動:
# chkconfig xl2tpd on
# service xl2tpd start
下載 openswan 並解壓:
# wget -O - http://ftp.openswan.org/openswan/openswan-2.6.38.tar.gz|tar xzf -
編譯並安裝:
# cd openswan-2.6.33
# make programs install
建立 /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,%v4:25.0.0.0/8,%v6:fd00::/8,%v6:fe80::/10
 oe=off
 protostack=netkey

conn L2TP-PSK-NAT
 rightsubnet=vhost:%priv
 also=L2TP-PSK-noNAT

conn L2TP-PSK-noNAT
 authby=secret
 pfs=no
 auto=add
 keyingtries=3
 rekey=no
 ikelifetime=8h
 keylife=1h
 type=transport
 left=%defaultroute
 leftprotoport=17/1701
 right=%any
 rightprotoport=17/%any

建立 /etc/ipsec.secrets(myvpn-presharekey請自己按實際情況修改):
%any %any: PSK "myvpn-presharekey"

修改 /etc/sysctl.conf,把 net.ipv4.ip_forward 的數值改為 1 ,並加入以下設定:
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.lo.send_redirects = 0
net.ipv4.conf.eth0.send_redirects = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.lo.accept_redirects = 0
net.ipv4.conf.eth0.accept_redirects = 0
並重新載入設定:
# sysctl -p
啟動並設定自動啟動:
# chkconfig --add ipsec
# chkconfig ipsec on
# service ipsec start
讓 ipsec 檢查系統設定:
# ipsec verify
留意有沒有[FAILED] 的項目﹐如 Two or more interfaces found, checking IP forwarding 是 FAILED 的話,請檢查 cat /proc/sys/net/ipv4/ip_forward 是否回傳 1

iptables設定: 打開 ClearOS webconfig 頁面 → Network → Firewall → Custom,加入以下幾項到最底:
iptables -A INPUT -i ppp+ -j ACCEPT
iptables -A FORWARD -i ppp+ -j ACCEPT
iptables -A OUTPUT -o ppp+ -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o eth0 -j MASQUERADE
其中192.168.30.0請按實際情況設定並與 /etc/xl2tpd/xl2tpd.conf 的設定一致。 最後按 [Restart Firewall] 重新載入 iptables 規則。

標籤:


留言


發佈回應

發佈留言

留不了言?試試在這裡留吧。
回首頁