如何使用iPhone客户端为纯IPSEC设置Strongswan或openswan?


21

我在查找有关如何设置供iPhone的VPN客户端使用的strongswan或openswan的具体最新信息时遇到麻烦。我的服务器在预算linksys NAT路由器后面。

我发现了这一点,但它提到了一堆.pem文件,但没有有关如何创建它们的参考。不幸的是,这两个软件包的“高级”手册对新手来说都是难以理解且不友好的。我之前已经安装过OpenVPN,并设法很快获得了可服务的结果,但是在阅读了过时一天半的文档后,我什至不知道从哪里开始。

任何帮助将不胜感激!

Answers:


23

这有帮助吗?
问候,威廉·M·普特

StrongSwan迷你Howto Debian 5

install strongswan + openssl
apt-get install strongswan openssl

创建您的CA文件:

cd /etc/ipsec.d
openssl req -x509 -days 3650 -newkey rsa:2048 -keyout \
private/strongswanKey.pem -out cacerts/strongswanCert.pem
cp cacerts/strongswanCert.pem certs/

如果您希望CA证书采用二进制DER格式,则以下命令可实现此转换:

openssl x509 -in cacerts/strongswanCert.pem -outform DER -out \ 
cacerts/strongswanCert.der

编辑/etc/ssl/openssl.conf (/usr/lib/ssl/openssl.cnf是一个符号链接):

nano -w /usr/lib/ssl/openssl.cnf

更改参数以适合您的Strongswan环境。

[ CA_default ] 

dir     = /etc/ipsec.d              # Where everything is kept 
certificate = $dir/cacerts/strongswanCert.pem       # The CA certificate 

private_key = $dir/private/strongswanKey.pem        # The private key 

创建丢失的DIR和文件:

mkdir newcerts
touch index.txt
echo “00” > serial

生成用户证书:

openssl req -newkey rsa:1024 -keyout private/hostKey.pem \
    -out reqs/hostReq.pem

签约两年:

openssl ca -in reqs/hostReq.pem -days 730 -out \
    certs/hostCert.pem -notext

通常,基于Windows的VPN客户端需要其私钥,其主机或用户证书以及CA证书。加载此信息最方便的方法是将所有内容放入PKCS#12文件中:

openssl pkcs12 -export -inkey private/hostKey.pem \
    -in certs/hostCert.pem  \
    -name "host" \ 
    -certfile cacerts/strongswanCert.pem \
    -caname "strongSwan Root CA" \
    -out host.p12

编辑/etc/ipsec.secrets

:RSA strongswanKey.pem “pempassword”
:XAUTH user "secret"

编辑/etc/ipsec.conf

config setup
    plutodebug=none
    uniqueids=yes
    nat_traversal=yes
    interfaces="%defaultroute"

conn %default
    authby=rsasig
    leftrsasigkey=%cert
    rightrsasigkey=%cert
    keyingtries=1
    keylife=20m
    ikelifetime=240m

conn iphone
    auto=add
    dpdaction=clear
    authby=xauthrsasig
    xauth=server
    pfs=no
    leftcert=strongswanCert.pem
    left=<serverip>
    leftsubnet=0.0.0.0/0
    right=%any
    rightsourceip=<virtual client ip>   #local VPN virtual subnet
    rightcert=hostCert.pem

在iPhone上

  1. 以p12格式导入iphone客户端证书
  2. 以pem格式导入CA证书
  3. 使用iphone客户端证书配置IPSEC-VPN,并将DNS名称(DynDNS名称)用作服务器。它必须与服务器证书中的证书相同

要在iPhone上导入证书,只需将其通过电子邮件发送给您自己!在iPhone上创建ipsec vpn时,可以选择证书。

请注意,如果要进行NAT,则需要设置iptables。(查看fwbuilder)


1
+1辉煌。假期过后,我会调查此事并与您联系。非常感谢帮忙。
Shabbyrobe 2010年

嗨,tnx Willem M. Poort,我用您的mini-howto尝试将iphone和vpn服务器与ubuntu 10.10连接,但是出了点问题...您是否有更具体的指南或建议链接?再次tnx!Fabio
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.