好久没折腾VPN了,今天同事要在他的iPhone上搞下这玩意儿,还真是手生了,被证书折腾了好久。
还要证书?为啥不用简单的PPTP搞定?还不是因为电信ADSL坑爹啊,表示我这里的电信ADSL已经大面积沦陷了,都分配不到公网IP,PPTP隧道根本穿透不了。那好吧,既然这样就用OpenVPN来折腾。
其实配置OpenVPN挺简单的,之前刚刚开始搞这玩意儿的时候也发过相关的博客以备以后使用。不过对于证书这一块,一直有点模模糊糊的,好吧,我承认没好好读读相关文档。于是再学习一下,以下内容来自官方文档:
首先生成服务端证书和私钥,在Linux/BSD/Unix中执行:
./build-key-server server
在Windows下则是执行:
build-key-server server
接下来的步骤就不说了,一步步来。
然后生成客户端证书和私钥,在Linux/BSD/Unix中执行:
./build-key client1 ./build-key client2 ./build-key client3
在Windows中则执行:
build-key client1 build-key client2 build-key client3
这里为三个用户分别生成了证书和密钥,总是注意为每个用户生成不同的Common Name。
经过以上的步骤,我们已经生成了所需的证书和私钥并保存在名为keys的子目录下,以下罗列了相关文件的说明:
Filename | Needed By | Purpose | Secret |
ca.crt | server + all clients | Root CA certificate | NO |
ca.key | key signing machine only | Root CA key | YES |
dh{n}.pem | server only | Diffie Hellman parameters | NO |
server.crt | server only | Server Certificate | NO |
server.key | server only | Server Key | YES |
client1.crt | client1 only | Client1 Certificate | NO |
client1.key | client1 only | Client1 Key | YES |
client2.crt | client2 only | Client2 Certificate | NO |
... | ... | ... |
那么接下来就是为客户端创建配置文件并提供必要的证书和私钥。这里的配置文件也就是所谓的xxx.ovpn。对于证书这一块,例如ca配置段,对于Windows PC来说只需并将其值指向crt文件即可。但针对iphone客户端貌似并不吃这一套,必须显示的将内容直接放进来并放置在<ca></ca>之间。而对于cert和key也是一样的。
最后将写好的配置文件传到手机中即可开始操作了。
test
请问openvpn的证书可以用openssl搭建的ca申请吗如果可以需要有什么注意的地方吗
13806523397xtx
openvpn客户端配置文件 有ca.crt ca.key client1.crt client1.csr client1.key 如何在ios的openvpn中 合并在.OVPN文件中