iPad Pro 2021使用OpenVPN Connect with ca.crt

2021-09-08 15:58:12 浏览数 (1)

背景

作为新生代农民工,想必对VPN都不陌生。为了提升公司安全性,大部分互联网公司都会对公司内部平台做网络隔离(禁止公网环境随意访问),常用到的工具即OpenVPN。

OpenVPN简单实用,安全性高(安全性高是因为OpenVPN使用CA证书来实现网络加密传输),当客户端连接OpenVPN时需要将ca.crt、client.ovpn等文件放在一个文件夹下,然后将 client.ovpn 导入OpenVPN客户端工具(如OpenVPN-client(Windows、Android)、Tunnelblick(Mac)、OpenVPN Connection(iPhone、iPad))即可使用。

使用上面的方法在Linux、Windows、Macos、Android 四大平台均畅行无阻,可是到了iOS却行不通了。 互联网行业很多时候需要随时随地办公,手机或iPad会为出行带来很多方便,所以有必要在iPad上安装OpenVPN。

问题

在此以iPad为例,在使用 OpenVPN Connect 添加client时遇到问题及解决办法如下

报错Can't not found ca.crt:/path/to/ca.crt (一长串的报错信息)

原因:在OpenVPN配置文件 client.ovpn 用到了ca证书,在添加 OpenVPN 时无法找到对应的ca.crt 文件,因为OpenVPN Connect只会到默认的路径去找该文件,该路径不能更改,且因权限问题,没能将证书放到其默认位置。

解决办法

client.ovpn支持 XML 语法,可以直接将 ca.crt 证书中内容合并到 client.ovpn 文件,然后导入OpenVPN Connect即可解决上述问题。修改后的 client.ovpn 文件格式如下:

代码语言:javascript复制
client
********
********
<ca>
********
</ca>

<cert>
********
</cert>

<key>
********
</key>

使用 Sublime Text 打开 client.ovpn 和 ca.crt(我只用到该证书) 文件(如果没有编辑器,可以将文件名后缀改成 .txt,直接使用记事本打开,修改完后再把文件名修改成 client.ovpn 即可)。示例如下:

原文件: client.ovpn

代码语言:javascript复制
client
dev tun
proto tcp
remote xx.xx.xx.xx 10194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
auth-user-pass
remote-cert-tls server
verb 3

在此需要注意参数 ca ca.crt

修改后文件:client.ovpn(删除 ca ca.crt 参数,加入证书内容)

代码语言:javascript复制
client
dev tun
proto tcp
remote xx.xx.xx.xx 10194
resolv-retry infinite
nobind
persist-key
persist-tun
auth-user-pass
remote-cert-tls server
verb 3
<ca>
********
</ca>

然后直接将该文件在iPad上通过 分享 的方式,导入到OpenVPN Connect即可正常使用!

参考

  • https://openvpn.net/faq/i-am-having-trouble-importing-my-ovpn-file/

0 人点赞