nginx的https搭建

一、打开防火墙,让其开放http协议和https协议

[root@ceserver ~]# systemctl enable firewalld

[root@ceserver ~]# firewall-cmd --add-service=http

[root@ceserver ~]# firewall-cmd --add-service=https

二、搭建一个网站,使该网站具备账户验证功能

1、新增一个专门管理网站的账户

[root@ceserver ~]# useradd qgk

[root@ceserver ~]# passwd qgk

2、将网站和这个账户关联起来

(1)首先要安装工具:httpd-tools

[root@ceserver ~]# dnf install httpd-tools -y

使用htpasswd关联新增的用户和网站

[root@ceserver web]# htpasswd -c /etc/nginx/passwd qgk

3、修改nginx的配置文件

[root@ceserver web]# vim /etc/nginx/nginx.conf

44 -----------------------

auth_basic "please input your passwd"; (登录提示)

auth_basic_user_file /etc/nginx/passwd; (管理网站和密码文件)

47 -------------------------

4、检查nginx配置文件语句是否正确,重新加载nginx

5、通过浏览器验证,输入http://www.qgk.com

三、搭建一个https网站

1、创建非对称加密使用的私钥文件

[root@ceserver web]# openssl genrsa -out qgk.key

2、通过私钥文件生成证书文件

[root@ceserver web]# openssl req -new -key qgk.key -x509 -days 365 -out qgk.crt

# req:申请创建证书

# -new:新的证书

# -key qgk.key:使用qgk.key这个密钥

# -x509:此为测试证书

# -days:证书有效期

3、将上面生成的证书移动到nginx配置目录中

[root@ceserver web]# mv qgk.crt qgk.key /etc/nginx/

4、绑定虚拟主机和证书

[root@ceserver web]# vim /etc/nginx/nginx.conf

server{

listen 443 ssl;

server_name www.qgk.com;

root /web/qgk;

ssl_certificate /etc/nginx/qgk.crt;

ssl_certificate_key /etc/nginx/qgk.key;

}

5、检查nginx配置文件是否正确,重新加载配置文件

[root@ceserver web]# nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

[root@ceserver web]# nginx -s reload

6、通过浏览器验证

(此为验证成功)

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务