strongswan部署ipsec ×××

2016-11-17 11:32:32

标签:*** mac os

版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。

  公司领导的苹果电脑想用自带的×××客户端连接公司内网网络,查看了下最新版本的MAC OS有l2tp,ipsec,IKEV2的×××连接方式。

  一开始打算搭建strongswan来提供IKEV2的***服务,供mac os使用,但是由于客户端的证书以及认证方式没搞明白,一直没连接成功,后来尝试用ipsec的方式,以psk方式认证,***连接成功了。

  故这里把搭建的过程记录下来。方便以后参考。


部署:

 1:下载,解压strongswan包:

1
2
3
# wget http://download.strongswan.org/strongswan.tar.gz 
# tar -zxvf strongswan.tar.gz
# cd strongswan-5.5.1

 


 2:编译,安装strongswan:

1
2
# ./configure --prefix=/opt/apps/strongswan --sysconfdir=/opt/apps/strongswan/etc  --enable-openssl --enable-nat-transport --disable-mysql --disable-ldap  --disable-static --enable-shared --enable-md4 --enable-eap-mschapv2 --enable-eap-aka --enable-eap-aka-3gpp2  --enable-eap-gtc --enable-eap-identity --enable-eap-md5 --enable-eap-peap --enable-eap-radius --enable-eap-sim --enable-eap-sim-file --enable-eap-simaka-pseudonym --enable-eap-simaka-reauth --enable-eap-simaka-sql --enable-eap-tls --enable-eap-tnc --enable-eap-ttls
# make && make install

 


 3:跟正常的IKEV2需要制作证书不一样,ipsec psk认证方式是用密码方式认证的,所以可以省略制作证书的步骤,如果需要制作证书,可以按如下步骤:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
制作ca证书
# /opt/apps/strongswan/bin/pki --gen --outform pem > ca.pem  
# /opt/apps/strongswan/bin/pki --self --in ca.pem --dn "C=com, O=my***, CN=SZSH CA" --ca --outform pem >ca.cert.pem
 
制作服务端证书
# /opt/apps/strongswan/bin/pki --gen --outform pem > server.pem
# /opt/apps/strongswan/bin/pki --pub --in server.pem | /opt/apps/strongswan/bin/pki --issue --cacert ca.cert.pem --cakey ca.pem --dn "C=com, O=my***, CN=SZSH" --san="你的外网地址" --flag serverAuth --flag ikeIntermediate --outform pem > server.cert.pem    
 
制作客户端证书
# /opt/apps/strongswan/bin/pki --gen --outform pem > client.pem  
# /opt/apps/strongswan/bin/pki --pub --in client.pem |  /opt/apps/strongswan/bin/pki --issue --cacert ca.cert.pem --cakey ca.pem --dn "C=com, O=my***, CN=SZSH Client" --outform pem > client.cert.pem
# openssl pkcs12 -export -inkey client.pem -in client.cert.pem -name "client" -certfile ca.cert.pem -caname "SZSH CA"  -out client.cert.p12  
 
把证书安装到相关的目录下
# cp -rf ca.cert.pem /opt/apps/strongswan/etc/ipsec.d/cacerts/
# cp -rf server.cert.pem /opt/apps/strongswan/etc/ipsec.d/certs/
# cp -rf server.pem /opt/apps/strongswan/etc/ipsec.d/private/
# cp -rf client.cert.pem /opt/apps/strongswan/etc/ipsec.d/certs/
# cp -rf client.pem /opt/apps/strongswan/etc/ipsec.d/private/
# cp -rf client.pem /opt/apps/strongswan/etc/ipsec.d/certs/

 本例子由于搭建的是ipsec psk认证方式,上述制作和安装证书的步骤可以省略!!!

 


 4:strongswan相关配置:

  配置×××服务连接方式,这里只配置一种连接方式,即XAUTH_PSK认证方式。

1
2
3
4
5
6
7
8
9
10
11
12
13
# vim /opt/apps/strongswan/etc/ipsec.conf
config setup
     uniqueids=never 
conn xauth_psk
     keyexchange=ikev1
     left=%defaultroute
     leftauth=psk
     leftsubnet=0.0.0.0 /0
     right=%any
     rightauth=psk
     rightauth2=xauth
     rightsourceip=10.0.0.0 /24
     auto=add

  

  配置认证文件,可配置psk认证秘钥与你指定的用户密码:

1
2
3
4
# vim /opt/apps/strongswan/etc/ipsec.secrets
: RSA server.pem
: PSK  "xxxxx"
user : XAUTH  "password"

  user和password就是你登录时需要输入的用户密码,如果需要多个用户密码,可多写几行。PSK "xxxxx"为ipsec PSK的秘钥,登录时需要。

 

  最后配置strongswan的相关事项,调试日志与DNS等:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# vim strongswan.conf 
charon {
         load_modular =  yes
         duplicheck. enable  = no
         compress =  yes
         plugins {
                 include strongswan.d /charon/ *.conf
         }
         dns1 = 114.114.114.114
         nbns1 = 114.114.114.114
    
         filelog {
                /opt/apps/strongswan/strongswan .charon.log {
                    time_format = %b %e %T
                    default = 2
                    append = no