加入收藏 | 设为首页 | 会员中心 | 我要投稿 天瑞地安资讯网 (https://www.52baoding.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

SSL 认证

发布时间:2023-02-05 17:05:17 所属栏目:Unix 来源:转载
导读: 所谓的 SSL/TLS 认证是加密的公钥认证,它由一个公用密钥和私用密钥组成。证书用来认证终端和加密数据的。例如,用在 web 服务器(https)或者邮件服务器(imaps)。步骤配置 OpenSSL我们使用

所谓的 SSL/TLS 认证是加密的公钥认证,它由一个公用密钥和私用密钥组成。证书用来认证终端和加密数据的。例如,用在 web 服务器(https)或者邮件服务器(imaps)。步骤配置 OpenSSL我们使用 /usr/local/certs 作为这个例子的目录或者根据你的设置相应的编辑 /etc/ssl/openssl.cnf 文件unix SSL认证,因此你知道文件将创建在哪里。以下是 openssl.cnf 的相关部分:

[ CA_default ]
dir             = /usr/local/certs/CA       # 保存所有信息的文件夹
certs           = $dir/certs                # 已生成证书的默认保存目录
crl_dir         = $dir/crl                  # 生成的证书撤销列表(CRL)的默认保存目录
database        = $dir/index.txt            # 保存已签发证书的文本数据库文件

确保所有目录已经创建

# mkdir -p /usr/local/certs/CA
# cd /usr/local/certs/CA
# mkdir certs crl newcerts private
# echo "01" > serial                        # 仅当 serial 不存在时
# touch index.txt

创建一个认证授权如果你没有来自供应商的认证授权,你必须创建你自己的。如果打算去供应商签署申请,那么这个步骤不是必须的。创建认证授权 (CA):

# openssl req -new -x509 -days 730 -config /etc/ssl/openssl.cnf \
-keyout CA/private/cakey.pem -out CA/cacert.pem

创建证书签发申请要创建一个新证书(比如给邮件服务器或 web 服务器),首先用其私钥创建证书申请。如果你的应用程序不支持加密的私钥(比如 UW-IMAP 就不支持),那么就用 -nodes 来禁用加密。

# openssl req -new -keyout newkey.pem -out newreq.pem \
-config /etc/ssl/openssl.cnf
# openssl req -nodes -new -keyout newkey.pem -out newreq.pem \
-config /etc/ssl/openssl.cnf                # 不对这个密钥加密

签署证书该证书申请由 CA 签发确认,这个步骤通常由供应商完成。注意:在下面命令中替换 "servername" 成你的服务器名称。

# cat newreq.pem newkey.pem > new.pem
# openssl ca -policy policy_anything -out servernamecert.pem \
-config /etc/ssl/openssl.cnf -infiles new.pem
# mv newkey.pem servernamekey.pem

现在,servernamekey.pem 就是私钥,servernamecert.pem 就为服务器的证书。创建联合认证(united certificate)IMAP 服务器想要私钥和服务器证书在同一个文件中。通常,这还是比较容易处理的,但是该文件要保证安全! Apache 也可以处理好它。创建一个包含证书和密钥的文件 servername.pem 。最后 servername.pem 文件应该看起来像这样:

-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDutWy+o/XZ/[...]qK5LqQgT3c9dU6fcR+WuSs6aejdEDDqBRQ
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIERzCCA7CgAwIBAgIBBDANB[...]iG9w0BAQQFADCBxTELMAkGA1UEBhMCREUx
-----END CERTIFICATE-----

现在我们的 /usr/local/certs/ 目录中有了这些;要保证私钥的安全!查看证书信息要查看证书信息,只要这么做:

# openssl x509 -text -in servernamecert.pem      # 显示证书信息
# openssl req -noout -text -in server.csr        # 显示申请信息
# openssl s_client -connect cb.vu:443            # 检查 web 服务器认证信息

(编辑:天瑞地安资讯网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章