这是个小小的坑,aws自己的linux自带的openssl.cnf里面(位置可能在/etc/pki/tls/openssl.cnf)
自己包含有
[ alt_names ]
IP.1 = xx.xx.xx.xx
这样的信息,所以生成csr证书的时候,证书里面自带有ip,而letsencrypt校验csr/der证书的时候,会检查证书中是否含有ip
包含,则报错了
https://github.com/letsencrypt/boulder/pull/2213/files
解决办法就是把IP.1这个注释掉,可以添加上自己的其他域名(使用DNS.1,DNS.2等等),必要时还需要把下面这行注释掉
subjectAltName = @alt_names
关于letsencrypt手动申请证书,请看这里
https://tty1.net/blog/2015/using-letsencrypt-in-manual-mode_en.html