一、安装openSSL
二、生成ssl证书
1、打开你想要保存证书的目录,在地址栏中输入cmd回车,如果需要以管理员身份打开,请先打开cmd,再切换到目录。
2、执行以下命令来生成一个2048位的RSA私钥(xytx.key)和自签名证书(xytx.crt):
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout xytx.key -out xytx.crt
-x509:指定生成自签名证书。
-nodes:不对私钥加密。
-days 365:证书有效期为365天。
-newkey rsa:2048:生成一个新的RSA密钥,长度为2048位。
-keyout server.key:指定私钥输出路径。
-out server.crt:指定证书输出路径。
注:xytx是自定义名称
3、输入证书信息
在执行上述命令后,系统会要求你输入一些关于证书的信息,如国家代码、省份、城市、组织名称等。对于Common Name (CN),通常填写服务器的域名或IP地址
4、验证一致性,输出的结果一样,说明是一致的(其实没必要做,一般不会错)
openssl x509 -noout -modulus -in xytx.crt | openssl md5
openssl rsa -noout -modulus -in xytx.key | openssl md5
三、配置Nginx
在nginx的config中找到你需要配置的端server模块,加入如下配置:
server {
listen 8001 ssl;#注意这里加一个ssl
server_name your_domain.com;
ssl_certificate /path/to/destination/xytx.crt; # 指定证书路径
ssl_certificate_key /path/to/destination/xytx.key; # 指定私钥路径
ssl_protocols TLSv1.2 TLSv1.3; # 指定TLS协议
ssl_prefer_server_ciphers on;
location / {
# 你的其他配置...
}
}
ssl_certificate /path/to/destination/xytx.crt; # 指定证书路径
ssl_certificate_key /path/to/destination/xytx.key; # 指定私钥路径
ssl_protocols TLSv1.2 TLSv1.3; # 只允许TLS协议
ssl_prefer_server_ciphers on;#打开服务器加密算法,优先使用服务器的算法
ssl_ciphers 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128...';#服务的算法
重启nginx或者重新加载nginx的配置,验证是否生效。
ngnix -t
ngnix -s reload