在 Android 上生成 client.ovpn 文件

在 Android 上生成 client.ovpn 文件

我正在为 Android 开发基于 OpenVPN 库的开源应用程序包装器。为此,我需要生成 openvpn conf 文件。

我已经关注OpenVPN 如何但不明白如何在 Android 上生成.conf 文件。

有没有办法在 Android 设备上本地生成 .conf/.ovpn 文件?

我可以生成 .cert 和 RSA 私钥以及 OpenVPN 静态密钥,但我仍然不清楚如何为特定客户端生成 CA 证书。

我需要从服务器获取什么吗(服务器端证书/私钥)?

我仍在学习基于证书的 OpenVPN 身份验证,因此我的问题可能有点幼稚,请耐心等待 :)

答案1

您必须自己编写配置文件。OpenVPN 服务器管理员应提供客户端配置文件。客户端的配置文件在 Linux/Windows/Android/etc. 上看起来几乎相同。对于客户端,您必须生成“客户端证书”,而不是“CA 证书”。也许您应该阅读有关 PKI 的更多信息(http://bit.ly/YP5dvZ)。如果您使用证书进行身份验证,则客户端应具有配置文件、DH 文件、CA 证书、私有和公共客户端密钥才能工作。

答案2

我已经安装了数百个 OpenVPN 服务器,并且从来不需要客户端上的 DH 文件。

服务器需求:

  • 证书
  • 证书密钥
  • 服务器名称.crt
  • 服务器名称.key
  • 可选(推荐)ta.key
  • 一个配置文件

客户:

  • 相同的 ca.crt
  • 客户端名称.crt
  • 客户端名称.key
  • ta.key(如果在服务器中使用)
  • 客户端配置文件

问候!

答案3

client

dev tun
proto tcp
remote 1.2.3.4 1194

resolv-retry infinite
nobind

persist-key
persist-tun

verb 1

keepalive 10 900
inactive 3600
comp-lzo

<ca>
-----BEGIN CERTIFICATE-----
....................................
-----END CERTIFICATE-----
</ca>

<cert>
-----BEGIN CERTIFICATE-----
...........................
-----END CERTIFICATE-----
</cert>

<key>
-----BEGIN RSA PRIVATE KEY-----
.....................
-----END RSA PRIVATE KEY-----
</key>

相关内容