所以,在玩了一会儿之后,这里是如何设法使用Let's Encrypt证书为HTTPS访问而使我的Cisco路由器运行常规的IOS 15的。将此证书附加到SSLVPN的过程应该非常相似。但是你需要相应地调整你的SSLVPN设置,我会把它作为家庭作业。
你仍然需要一个letsencrypt客户端才能使其工作,你可能需要有点创意:为了生成路由器的证书,我将目标域上的端口80重定向到我管理的一台linux机,这样客户端就可以几乎获得所有所需的证书。那么这里有顺序:
在您的Linux机箱上:
1. 创建您的证书和密钥:
letsencrypt-auto certonly -d host.domain.com
2.浏览到/etc/letsencrypt/live/host.domain.com
3.选择一个密码(即@Password@),并加密私钥。在运行命令后,密码将被立即要求:
openssl rsa -des -in privkey.pem -out privkey-enc.pem
4.从私钥中提取公钥:
openssl pkey -in privkey.pem -pubout -out pubkey.pem
在您的路由器上:
5.在路由器上导入私钥和公钥:
加密密钥导入 rsa 主机.domain.com.pem 可导出 pem 加密终端 @Password@
粘贴公钥 pubkey.pem的内容,并在单行中输入quit。
粘贴密码保护的私钥privkey-enc.pem的内容,并在单行中输入quit。
如果键被接受,你应该阅读
"密钥对导入成功。"
重要事项:
如果你想使用IdenTrust证书,请通过所有SSL验证/网络浏览器(请参阅证书页面上的交叉签名部分 - 可信链 - Let's Encrypt),向下滚动以获取说明。
6. 为ISRG根证书创建一个信任点:
加密PKI信任点ISRG_Root_X1
链验证停止
撤销检查否
注册终端Pem
退出
7.导入ISRG根证书(在证书页面 - 可信链 - Let's Encrypt上找到):
加密的PKI认证ISRG_Root_X1
粘贴ISRG根证书的内容,并在单行上输入quit。如果被接受,你应该阅读
证书具有以下属性:
指纹MD5:0CD2F9E0 DA1773E9 ED864DA5 E370E74E
指纹SHA1:CABD2A79 A1076A31 F21D2536 35CB039D 4329A5E8
% 你接受这个证书吗?[是/否]:"
请确认并输入“是”。如果根证书被接受,你应该阅读
信任点CA证书已接受。
% 证书已成功导入"
创建另一个信任点,这次是Let's Encrypt Authority X1,由ISRG签名:
加密密钥对信任点 LetEncrypt_Authority_X1-signed_by_ISRG_Root_X1
链验证继续 ISRG_Root_X1
撤销检查否
注册终端Pem
退出
9.导入Let's Encrypt Authority X1,由ISRG txt/pem证书签名(也可在证书页面-信任链- Let's Encrypt上找到):
加密的PKI认证,Let's Encrypt Authority_X1-signed_by_ISRG_Root_X1
粘贴Let's Encrypt Authority X1的内容,由ISRG证书签名,并在单行上输入quit。如果中间证书被接受,你应该阅读
证书具有以下属性:
指纹MD5:AE52EB85 30A2E6C2 3EC639F5 5CBD3B67
指纹SHA1:E045A5A9 59F42780 FA5BD762 3512AF27 6CF42F20
证书已验证 - 由现有信任点CA证书签名。
信任点CA证书已被接受。
% 证书已成功导入"
10. 最后,导入路由器证书:
加密的PKI导入host.domain.com-cert pem终端密码 @Password@
粘贴Let's Encrypt Authority X1的内容,由ISRG证书签名,并在单行上输入quit。
粘贴密码保护的私钥privkey-enc.pem的内容,并在单行中输入quit。
粘贴路由器证书cert.pem的内容,并在单行中输入quit。如果证书被接受,你应该阅读
"成功导入 % PEM 文件。"
如果您要使用IdenTrust证书-通过所有的SSL验证/Web浏览器(请参阅证书页面上的交叉签名部分-信任链-让我们加密):
6.为DST根证书创建信任点:
加密PKI信任点DST_Root_CA_X3
链验证停止
吊销--不选
注册终端PEM
出口
7.导入DST根txt/pem证书(链接位于证书页面-信任链-让我们加密):
加密PKI身份验证DST_Root_CA_X3
粘贴DST根证书的内容,然后在一行中键入Quit。如果它被接受,你应该阅读
“证书具有以下属性:
指纹MD5:410352DC 0FF7501B 16F0028E BA6F45C5
指纹SHA1:DAC9024F 54D8F6DF 94935FB1 732638CA 6AD77C13
%您接受此证书吗?[是/否]:“
键入yes确认,然后按Enter键。如果根证书被接受,您应该阅读
“信任点CA证书已接受。
%证书已成功导入“
8.创建另一个信任点,这一次是针对我们的加密机构X1,IdenTrust交叉签名:
加密公钥基础设施信任点Lets_Encrypt_Authority_X1_signed_by_DST_Root_CA_X3
链验证继续DST_Root_CA_X3
吊销--不选
注册终端PEM
出口
9.导入我们加密机构X1,IdenTrust交叉签名的txt/pem证书(也可以在证书页面-信任链-让我们加密):
加密公钥基础设施认证Lets_Encrypt_Authority_X1_signed_by_DST_Root_CA_X3
粘贴We‘s Encrypt Authority X1、IdenTrust交叉签名证书的内容,然后在一行中键入QUIT。如果中间证书被接受,您应该阅读
“证书具有以下属性:
指纹MD5:33E25CB5 1753B4C3 8817774E 38BD2107
指纹SHA1:3EAE9193 7EC85D74 483FF4B7 7B07B43E 2AF36BF4
证书已验证-由现有信任点CA证书签名。
已接受信任点CA证书。
%证书已成功导入“
10.最后,导入路由器证书:
加密PKI导入主机.domain.com-cert pem终端密码@password@
粘贴We‘s Encrypt Authority X1,IdenTrust交叉签名证书的内容,然后在一行中键入QUIT。
粘贴受密码保护的私钥Prikey-enc.pem的内容,然后在一行中键入Quit。
粘贴路由器的证书cert.pem的内容,然后在一行中键入Quit。如果您的证书被接受,您应该阅读
“%PEM文件导入成功。”
然后在路由器上启用HTTPS并将证书与其关联:
IP http安全服务器
IP http安全-信任点主机.Domain.com-证书
尝试通过HTTPS打开您的路由器以确认其工作正常。或者,通过SSL服务器测试(由Qualys SSL Labs提供支持)测试您的证书
在90天之前,您需要更新您的证书。只需使用letsEncrypt客户端续订您的证书,并重新运行路由器证书导入步骤#10,您就可以再工作90天了。
希望这能帮上忙。
PS:别忘了保存路由器的配置
编辑历史记录
更新的教程格式
已澄清路由器设置中的信任点名称
为寻找来自IdenTrust的完全有效证书的人创建了说明,您好先生。亚历克斯
在步骤10中,哪些部分生成cert.pem路由器证书?
我曾尝试使用Linux box cert.pem文件夹:/…/letscrypt/live/,但没有成功无法解码的密钥。
%导入PEM文件失败。
谢谢,
赫鲁,赫鲁,
似乎LetsEncrypt最近更改了他们用来签署证书的授权证书--或者更有可能的是,我在撰写教程时遗漏了这一部分。他们使用的不是只有Authority X1,而是他们的任何可用的Authority服务器。从负载平衡的角度来看,这是非常有意义的
因此,在步骤4中,您需要找出您的证书是针对哪个Authority Xn颁发的。请在您的Linux机器上运行以下命令:
Openssl x509-in cert.pem-text-noout|grep“Authority X”
您将看到如下所示的输出:
颁发者:C=US,O=我们加密,CN=我们加密授权机构X3
授权机构X3是您在步骤8、9和10中需要使用的证书。如果需要,您可以更新证书标签以反映您正在使用的授权机构名称--使用X3或分配给它来颁发证书的任何授权机构服务器,而不是我的教程建议的X1。
一旦我弄清楚如何编辑一个10个月前的帖子,我会做出这些更正。
看看这是否对你有帮助。@Alex_HQuest,这一变化发生在今年3月25日。目前X3是独家使用的。
由于用于颁发证书的中间层可能会随着时间的推移而改变,因此ACME协议提供了与证书一起下载相应的中间层的功能。无论您使用什么方法从We‘s Encrypt获取证书,都应该能够同时为您提供适当的中间件(例如,如果您使用Certbot,它将保存为chain.pem并包含在fullchain.pem中)。
(我不知道这是否能解释@HFI的问题。“无法解码密钥”乍一看并不像是与不匹配的中间证书有关,但也许!),@Schoen这解释了一些空白-我一直忙于其他事情,以至于没有机会了解最新的变化(即使它们发生在很久以前)。
思科流程是一个高级流程。诚然,最初的步骤应该会给出一个大致的概念,但我们应该不会看到很多人这样做,因为ESX主机、思科路由器、交换机、ISE、ACS、Prime基础设施、ASA和WLC设备在家庭中并不太常见,并且在您的公司网络中,我们将使用我们自己的公司CA。尽管我自豪地在家里拥有所有这些名牌产品。
除了先进之外,思科的行事方式还有点…不一样。你知道我在说什么。我也同意普通用户不应该手动下载任何东西。Certbot提供了大量信息,通常足以满足大多数情况。
感谢你在X3笔记上的提醒。今天我学到了一些新东西。