说好的不需要客户端证书的 iOS 8 的 IKEv2 On-Demand VPN 教程来了

2014-10-08 18:05:28 +08:00
 wzxjohn
因为打字的电脑木有中文输入法,所以先写的英文然后一句句翻的。大家凑合看吧。

http://maoxian.de/2014/10/setup-ikev2-on-demand-vpn-on-ios-8-and-ikev2-ikev1-cisco-ipsec-vpn-with-strongswan/1220.html

其中顺便说明了通配符证书的情况。如果大家遇到什么问题欢迎在v2留言,博客留言,email提问。
顺便一说如果要转载的话麻烦加个链接~谢谢~
31099 次点击
所在节点    分享创造
154 条回复
digimoon
2015-04-15 17:08:33 +08:00
@thekll
我也有相同的问题,客户端不能使用vpn服务器的dnsmasq
leftsubnet=0.0.0.0/0,rightsourceip=10.0.0.0/24,设置rightdns=192.168.1.1,服务器有一个内网能访问的ip 192.168.1.1而且iptables也是全放行的,
vpn连上后能访问192.168.1.0/24的设备,用ios的inet tools扫描192.168.1.1的ssh端口显示打开,扫描53端口显示关闭(估计只扫描tcp?),直接输入ip能上网但是输入网址的话就打开不了应该就是dns问题
不知道你找到解决办法没有?
freefall12
2015-05-24 18:53:58 +08:00
@digimoon
DNS服务器可以在strongswan.conf里面添加,charon.dns1 = x.x.x.x,charon.dns2 = x.x.x.x

想用IOS ikev2又不想折腾的可到此看下,https://www.joyvm.com/ios-oneclick-vpn-setuup
wzxjohn
2015-05-25 08:49:19 +08:00
@freefall12 我就知道公开了方法就会有人拿来卖。。。你卖就卖吧还回原帖打广告。。。
Remember
2015-07-11 18:11:36 +08:00
这个有办法同时支持L2TP/IPsec么?
jameszeng
2015-07-16 22:25:52 +08:00
我在ikev1下配置了unity plugin的split tunneling,国外网站访问不了,日志里有这样的错误:
Jul 15 10:12:14 default charon: 01[KNL] getting a local address in traffic selector 8.8.8.0/24
Jul 15 10:12:14 default charon: 01[KNL] no local address found in traffic selector 8.8.8.0/24
Jul 15 10:12:14 default charon: 01[KNL] error installing route with policy 8.8.8.0/24 === 192.168.12.1/32 out
Jul 15 10:12:14 default charon: 01[KNL] getting a local address in traffic selector 8.8.8.0/24
Jul 15 10:12:14 default charon: 01[KNL] no local address found in traffic selector 8.8.8.0/24
Jul 15 10:12:14 default charon: 01[KNL] error installing route with policy 8.8.8.0/24 === 192.168.12.1/32 out
Jul 15 10:12:14 default charon: 01[IKE] unable to install IPsec policies (SPD) in kernel
不知道是什么原因,我用的是iOS 8.4
mac2man
2015-07-17 16:18:16 +08:00
自签的证书,在IOS端是否需要导入CA证书呢?
感觉IPHONE不认,无法通过验证。

14[ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH EAP/REQ/ID ]
14[NET] sending packet: from server_domain[4500] to client_ip[4500] (1476 bytes)
06[NET] sending packet: from server_domain[4500] to client_ip[4500]
03[JOB] deleting half open IKE_SA after timeout
03[IKE] IKE_SA IPSec-IKEv2-EAP[4] state change: CONNECTING => DESTROYING
02[JOB] deleting half open IKE_SA after timeout
02[IKE] IKE_SA IPSec-IKEv2-EAP[5] state change: CONNECTING => DESTROYING
wzxjohn
2015-07-17 16:41:30 +08:00
@jameszeng 你这个看起来是内核少模块啊。。。
@mac2man 自签的当然要导入,不然肯定不认的。。。
mac2man
2015-07-17 17:20:00 +08:00
@wzxjohn 我在windows8上是同样的错误现象 错误码是 13801 确实是需要导入证书,所以判断iphone上需要导入自签证书。
我倒是有startssl的证书,但是加载不了,是否有使用startssl的方法?
wzxjohn
2015-07-17 18:42:17 +08:00
@mac2man 我的文章里写了怎么导入证书呀?直接照做就可以了。
mac2man
2015-07-17 19:03:23 +08:00
@wzxjohn 我现在自签是成功了,但是有奇怪的现象:
用自签证书搭了ikev2,ios8.2, 很奇怪的现象就是无法正常上下线。
现象是:客户端已经执行了下线,服务器根本未收到下线请求,还在发dpd报文,必须等待time out后,用户上线才能正常使用。
Remember
2015-07-19 00:37:22 +08:00
@mac2man startssl 你还要加载中间证书,不然windows也会提示13801
casper8016
2015-08-12 19:34:49 +08:00
@wzxjohn 请问一下 我按照这个配置 连接 IOS8 手机也安装了ca clinet 证书
但服务器输出
Aug 12 11:31:12 localhost strongswan: 16[IKE] 223.223.193.58 is initiating an IKE_SA
Aug 12 11:31:12 localhost strongswan: 16[IKE] IKE_SA (unnamed)[7] state change: CREATED => CONNECTING
Aug 12 11:31:12 localhost strongswan: 16[CFG] selecting proposal:
Aug 12 11:31:12 localhost strongswan: 16[CFG] no acceptable ENCRYPTION_ALGORITHM found
Aug 12 11:31:12 localhost strongswan: 16[CFG] selecting proposal:
Aug 12 11:31:12 localhost strongswan: 16[CFG] no acceptable DIFFIE_HELLMAN_GROUP found
Aug 12 11:31:12 localhost strongswan: 16[CFG] selecting proposal:
Aug 12 11:31:12 localhost strongswan: 16[CFG] proposal matches
Aug 12 11:31:12 localhost strongswan: 16[CFG] received proposals: IKE:3DES_CBC/HMAC_SHA1_96/PRF_HMAC_SHA1/MODP_1024
Aug 12 11:31:23 localhost charon: 05[JOB] deleting half open IKE_SA after timeout
Aug 12 11:31:23 localhost charon: 05[IKE] IKE_SA (unnamed)[6] state change: CONNECTING => DESTROYING
Aug 12 11:31:42 localhost charon: 02[JOB] deleting half open IKE_SA after timeout
Aug 12 11:31:42 localhost charon: 02[IKE] IKE_SA (unnamed)[7] state change: CONNECTING => DESTROYING


是 这个 no acceptable ENCRYPTION_ALGORITHM found 导致 没有连接的原因吗?
附上我的ipsec.conf
conn %default
keyexchange=ikev2
dpdaction=clear
dpddelay=5s
#auto destroy unused connections
rekey=no
left=%any
leftsubnet=0.0.0.0/0
leftcert=serverCert.pem
#server cert that will send to client
leftsendcert=always
#always send server cert
#not set may cause cert failed
right=%any
rightdns=8.8.8.8,8.8.4.4
#DNS send to client
rightsourceip=172.0.0.0/24
#DHCP Pool for client
conn IPSec-IKEv2
keyexchange=ikev2
leftid=106.187.42.230
#your servr name in cert "server.pem"
rightid=*@106.187.42.230
#define a suffix for user account
auto=add
conn IPSec-IKEv2-EAP
also="IPSec-IKEv2"
rightauth=eap-mschapv2
#define auth type to EAP
rightsendcert=never
#do not need client cert
eap_identity=%any
#any user can login successfully
monk
2015-09-16 01:14:05 +08:00
@wzxjohn 怎么删了呢
wximeng
2015-12-15 13:18:00 +08:00
@wzxjohn 如果使用纯 IP 的服务器,自签的证书要导入 iOS 吗?
申请一个公网证书, iOS 就不需要导入证书了吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/137653

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX