在Ubuntu系统上使用OpenSSL生成证书,通常涉及创建自签名证书或生成证书签名请求(CSR),然后使用这些CSR从证书颁发机构(CA)获取正式的证书。以下是生成自签名证书的基本步骤:
-
打开终端。
-
使用以下命令生成私钥:
openssl genpkey -algorithm RSA -out private.key -aes256
这将生成一个名为
private.key
的2048位RSA私钥文件,并使用AES-256加密。系统会提示你输入并确认一个密码。 -
接下来,使用私钥生成自签名证书:
openssl req -new -x509 -days 365 -key private.key -out certificate.crt
这将创建一个名为
certificate.crt
的自签名证书文件,有效期为365天。在执行此命令时,系统会要求你输入一些信息,如国家、组织名称等,这些信息将包含在证书中。 -
如果你想查看证书的详细信息,可以使用以下命令:
openssl x509 -in certificate.crt -text -noout
-
如果你需要为你的网站或服务生成CSR以便从CA获取正式证书,可以使用以下命令:
openssl req -new -key private.key -out certificate.csr
这将生成一个名为
certificate.csr
的CSR文件。你需要将这个CSR提交给CA,并按照他们的流程来获取正式的证书。 -
如果CA返回了正式的证书文件(例如
certificate.crt
),你可以使用以下命令将其与私钥和中间证书一起打包,通常用于Web服务器:cat certificate.crt intermediate.crt > fullchain.crt
这里
intermediate.crt
是CA提供的中间证书文件。如果有多个中间证书,你需要将它们全部连接起来。 -
最后,确保你的Web服务器配置正确,指向了私钥文件
private.key
和打包后的全链证书文件fullchain.crt
。
请注意,自签名证书通常只用于测试环境,因为它们不会被浏览器或其他客户端信任。对于生产环境,你应该从受信任的CA获取证书。