实验目的
1.在开启防火墙的前提下,实现https的搭建
2.为网站部署账户验证
3.测试https搭建是否成功
实验步骤
1.先搭建https网站
准备工作:关闭防火墙,selinux,安装mod_ssl模块并启动nginx服务
bash
setenforce 0
systemctl stop firewalld
systemctl disable firewalld
yum install nginx mod_ssl -y
systemctl start nginx
配置两个文件:证书文件:/etc/nginx/ty.crt 私钥文件: /etc/nginx/ty.key
创建私钥文件: /etc/nginx/ty.key,命令如下,并设置密码

创建证书文件:/etc/nginx/ty.crt,命令如下,设置相关信息

修改配置文件
新建存储网站数据文件的目录
bash
mkdir -p /www/ty
创建网站首页文件
bash
vim /www/ty/index.html
Welcome to my web
nginx子配置目录下,创建ip200.conf文件,配置本机192.168.141.200的网站,可用http和https协议访问
bash
vim /etc/nginx/conf.d/ip200.conf

重载配置,更新服务
bash
nginx -t #语法检查
nginx -s reload #重载
访问网站

2.使用firewall-cmd命令,使http协议和https协议的数据包放行通过
准备工作:开启防火墙
bash
systemctl start firewalld
systemctl enable firewalld
在未开放服务时,浏览器访问网站失败

开放http协议和80端口

开放https协议和443端口

重载配置,并查看当前区域,http服务和https服务已放行通过

再次访问网站,访问成功

3.实现密码验证功能
准备工作:安装 httpd-tools
bash
yum install nginx httpd-tools -y
增加密码访问控制,设置账户ty,及密码123

修改子配置文件,新增以下三行代码
bash
autoindex on;
auth_basic "please input password";
auth_basic_user_file /etc/nginx/passwd;

重载配置文件后,测试

输入账户密码后,登录成功。

至此,nginx的https网站搭建成功