如果你想为自己的网站部署ssl证书,让网站实现https加密访问,那么生成csr(证书签名请求)是必不可少的一步。csr就像是一份“数字申请书”,里面包含了网站的相关信息,你需要把它提交给证书颁发机构(ca),才能申请到有效的ssl证书。今天就以小白的视角,带你一步步在linux系统中生成csr。
什么是csr?
csr的全称是certificate signing request,即证书签名请求。它是一个包含了你的网站域名、组织信息、地理位置等数据的文本文件,这些信息会被用于生成ssl证书。简单来说,csr是你向证书颁发机构证明“这个网站是我的,我需要一个ssl证书来保护它”的重要文件。
生成csr前的准备
在生成csr之前,你需要确保linux系统中安装了openssl工具,因为我们将使用它来生成csr。大多数linux发行版都会预装openssl,你可以通过以下命令检查是否安装:
openssl version
如果输出了类似“openssl 1.1.1f 31 mar 2020”的版本信息,说明已经安装;如果没有安装,可以使用相应的包管理工具进行安装,比如在ubuntu/debian系统中:
sudo apt-get install openssl
在centos/rhel系统中:
sudo yum install openssl
生成csr的具体步骤
打开终端:在linux系统中找到终端并打开,这是我们执行命令的地方。
执行生成csr的命令:输入以下命令,然后按回车键:
openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr
这里对命令中的参数进行解释:
openssl req
:表示使用openssl工具生成证书请求。-new
:表示生成一个新的证书请求。-newkey rsa:2048
:表示同时生成一个新的rsa私钥,密钥长度为2048位(目前较为安全的长度)。-nodes
:表示生成的私钥不加密(如果加上该参数,后续使用私钥时不需要输入密码;如果去掉,生成私钥时需要设置密码,使用时也需要输入)。-keyout yourdomain.key
:指定生成的私钥文件名为“yourdomain.key”(你可以替换成自己的域名,比如“example.key”)。-out yourdomain.csr
:指定生成的csr文件名为“yourdomain.csr”(同样可以替换成自己的域名,比如“example.csr”)。
填写csr信息:执行命令后,会提示你输入一系列信息,这些信息将包含在csr中,具体如下:
- country name (2 letter code) [xx]:国家代码,中国填写“cn”。
- state or province name (full name) []:省份名称,比如“beijing”。
- locality name (eg, city) [default city]:城市名称,比如“beijing”。
- organization name (eg, company) [default company ltd]:组织或公司名称,如果是个人网站,可以填写自己的姓名或留空。
- organizational unit name (eg, section) []:部门名称,可留空。
- common name (eg, your name or your server's hostname) []:这是最重要的一项,填写你的网站域名,比如“example.com”。
- email address []:你的邮箱地址,用于证书相关的通知。
- a challenge password []:可选,设置一个密码,用于保护csr,可直接按回车键跳过。
- an optional company name []:可选的公司名称,可直接按回车键跳过。
查看生成的文件:完成上述步骤后,在当前目录下会生成两个文件:“yourdomain.key”(私钥文件,非常重要,要妥善保管,不要泄露给他人)和“yourdomain.csr”(csr文件,就是我们需要提交给证书颁发机构的文件)。
你可以使用以下命令查看csr文件的内容:
cat yourdomain.csr
csr文件的内容以“-----begin certificate request-----”开头,以“-----end certificate request-----”结尾,将这部分内容完整地复制提交给证书颁发机构即可。
注意事项
- 私钥文件“yourdomain.key”是非常重要的,它是后续安装ssl证书的关键,一定要妥善保管,建议存放在安全的目录下,并设置合适的权限,防止被他人访问。
- 填写csr信息时,“common name”必须准确填写你的网站域名,否则申请的ssl证书将无法正常使用。
- 如果你有多个域名需要保护(比如同时有“example.com”和“www.example.com”),可以生成多域名csr,具体命令可以参考openssl的相关文档。
到此这篇关于linux网站部署ssl证书生成csr的详细教程的文章就介绍到这了,更多相关linux生成ssl证书需要的csr内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论