申请ssl下载证书
阿里云购买免费证书,可免费申请20个,需要配置域名,域名为单个域名,比如www.xxx.com,必须带前缀。
申请完之后需要创建证书
注:创建证书时阿里云购买的域名可以直接给配好解析,非阿里云购买的域名,需要去解析,解析为TXT类型,主机记录和记录值申请证书填写域名之后阿里云会自动返回,还需要点击按钮验证,认证通过后才会继续下一步,才会签发证书
之后下载证书供后续使用
(.pem格式的证书文件,.key格式的私钥文件)
配置nginx
在nginx相关的配置目录(一般为/usr/local/nginx/conf
)中mkdir cert
创建cert文件夹
将下载的证书放入cert文件夹
编辑相应的conf文件
#增加相关配置
#以下属性中,以ssl开头的属性表示与证书配置有关。
server {listen 443 ssl;#配置HTTPS的默认访问端口为443。#如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。#如果您使用Nginx 1.15.0及以上版本,请使用listen 443 ssl代替listen 443和ssl on。server_name 域名;ssl_certificate cert/cert-file-name.pem; ssl_certificate_key cert/cert-file-name.key; ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#表示使用的加密套件的类型。ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型,您需要自行评估是否配置TLSv1.1协议。ssl_prefer_server_ciphers on;
}
server {listen 80;server_name 域名; #需要将yourdomain替换成证书绑定的域名。rewrite ^(.*)$ https://$host$1; #将所有HTTP请求通过rewrite指令重定向到HTTPS。
}
验证nginx配置文件是否正常:nginx -t
重启nginx:nginx -s reload
用https://域名测试是否可以正常访问
如果有提示链接不安全,在head中增加<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
如果访问域名显示welcome to centos,需检查443端口是否打开,包括阿里云安全组及服务器上该端口是否开放
查看开放的端口号: firewall-cmd --list-ports
方式一
CentOS:
1、开启防火墙
systemctl start firewalld
2、开放指定端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
命令含义:
–zone #作用域
–add-port=6379/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
3、重启防火墙
firewall-cmd --reload
4、查看端口号
netstat -ntlp //查看当前所有tcp端口·
netstat -ntulp |grep 6379 //查看所有1935端口使用情况·5. 关闭指定端口firewall-cmd --zone=public --remove-port=80/tcp --permanent6.查看已经开放的端口firewall-cmd --zone=public --list-ports方式二
#开放端口:8080
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT方式三
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
service iptables restart
重启成功以后输入"service iptables status",回车就会显示正在生效的规则