阿里云购买免费证书,可免费申请20个,需要配置域名,域名为单个域名,比如www.xxx.com,必须带前缀。
申请完之后需要创建证书
注:创建证书时阿里云购买的域名可以直接给配好解析,非阿里云购买的域名,需要去解析,解析为TXT类型,主机记录和记录值申请证书填写域名之后阿里云会自动返回,还需要点击按钮验证,认证通过后才会继续下一步,才会签发证书
之后下载证书供后续使用
(.pem格式的证书文件,.key格式的私钥文件)
在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中增加
如果访问域名显示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 --permanent
-
- 6.查看已经开放的端口
-
- 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",回车就会显示正在生效的规则