【发布时间】:2026-02-20 17:20:10
【问题描述】:
我想用 PHP 生成客户端密钥。当生成客户端密钥时,它应该给我密钥的到期日期。
root@zohaib-VirtualBox:/etc/openvpn/easy-rsa# ./build-key client1
生成 2048 位 RSA 私钥 .................................................... .....................+++ ...................... ..+++
将新的私钥写入“client1.key” 您将被要求输入将包含在您的证书请求中的信息。您将要输入的是所谓的专有名称或 DN。有很多字段,但可以留空一些字段会有默认值,
如果您输入“.”,该字段将留空。 国家名称(2 个字母代码)[GB]:
州或省名称(全名)[伦敦]:
地区名称(例如,城市)[伦敦]:
组织名称(例如,公司)[Org]:
组织单位名称(例如,部分)[]:
通用名称(例如,您的姓名或服务器的主机名)[client1]:
名称 [组织服务器]:
电子邮件地址 [admin@org.com]:
请输入以下要与您的证书请求一起发送的“额外”属性
挑战密码[]:
可选的公司名称 []:
使用来自 /etc/openvpn/easy-rsa/openssl-1.0.0.cnf 的配置
检查请求是否匹配签名 Signature ok Subject's Distinguished Name 如下
countryName :PRINTABLE:'GB'
stateOrProvinceName :PRINTABLE:'London'
localityName :PRINTABLE:'London'
organizationName :PRINTABLE:'Org'
commonName :PRINTABLE:'client1'
名称:PRINTABLE:'OrgServer'
emailAddress :IA5STRING:'admin@gamban.com'
证书要在 GMT 2026 年 4 月 21 日 15:43:47 之前进行认证(3650 天) 签署证书? [y/n]:y
1 个证书请求中的 1 个已通过认证,提交? [y/n]y
用 1 个新条目写出数据库
数据库更新
root@zohaib-VirtualBox:/etc/openvpn/easy-rsa#
【问题讨论】:
-
现在我只是在命令行中手动创建密钥,但现在我希望它在 php 中执行并取回密钥到期日期等结果。
-
你能发布一个命令生成的输出的例子吗?
-
请看下面的脚本
-
我已经更新了我的答案。希望对您有所帮助!
标签: php bash shell key openvpn