我有一天尝试为新员工生成一些OpenVPN密钥。 与正常程序相同。 这个地区几个月来没有任何变化。
在证书生成期间,我得到以下错误:
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf entry 22: invalid expiry date
经过一番search,似乎没有一个明确的答案。 有些网站说了一些关于数据库文件index.txt被破坏的东西。 其他人表示,这与openssl.cnf的default_days设置有关。 其他网站提出了一个OpenSSL的错误。
任何人有任何线索?
UPDATE
经过更多的研究,我发现OpenSSL有一个错误,最后生成的证书到期date超过了2050年,因此index.txt中的date由于某种原因添加了两个额外的数字,从而使得index.txt出现损坏。 我不知道如何解决这个问题。
这是“2038年问题”错误! 看来OpenVPN证书不能在2038年1月19日之后生效。我使用的是Ubuntu 10.04和OpenVPN 2.1.0。
我知道这是一个非常古老的问题,但我自己却遇到了这个问题,花了很长时间来解决 – 希望这可能会有助于未来的人。 另外,看到这是如何仍然是谷歌提供了search这个错误的第一个结果之一,这似乎是相关的张贴在这里。
'entry 22'是指CA的数据库文件的第22行 – 在你的情况下,这听起来像这个文件是'index.txt'。 我的错误是“entry 477”,这是指我的CA数据库文件的第477行。
要解决这个问题,只需手动修改您的数据库文件,并使过期date看起来应该如此。
对于我的OpenSSL数据库文件,第二列对应于到期日,导致此错误的无效条目为“20160505000000Z”。 与其他所有条目相比,这个特定条目有2个额外的数字。 2个额外的数字是'2016'的'20'。 我手动改变这个'160505000000Z',然后这个错误消失了。
不知道它是如何允许写在第一位,但那是固定的我的。 希望这有助于某人。