1.下载安装httpd 包,以及mod_ssl 模块
搭建加密的http 协议——HTTPS(httpd+mod_ssl)
下载安装mod_ssl 加密模块
然后关闭防火墙,SELinux,开启httpd服务
[root@desktop ~]# yum install httpd -y
[root@desktop ~]# yum install mod_ssl -y
[root@desktop ~]# systemctl stop firewalld #
[root@desktop ~]# setenforce 0
[root@desktop ~]# systemctl start httpd
2.修改配置文件
[root@desktop ~]# vim /etc/httpd/conf.d/vhosts.conf
注意:https 默认端口号是443
设置仅“zhangsan” ,“lisi” 可以访问该网站的子资源文件/www--------对应别名/w3(即设置虚拟目录)
Alias 虚拟目录名称 真实目录名称
/w3(这里的根目录指的是网站的根目录) /www
比如:网站的根目录是/dapang,那么/w3 就指的是/dapang/w3
注意:
证书的编写路径 /etc/pki/tls/certs
证书私钥编写路径 /etc/pki/tls/private
注:pki 指的公钥基础设施(相当于是对公钥进行管理的机构
3.按照配置文件创建生成对应的证书文件以及私钥文件
生成私钥文件:
[root@desktop private]# openssl genrsa -aes128 2048 > ceshi.key
注:
(1)genrsa 指的是非对称加密算法的一种
(2)aes : 指的是一种加密算法
AES的工作模式,体现在把明文块加密成密文块的处理过程
AES支持三种长度的密钥:128位,192位,256位
(3)2048 : 指的是会话长度
生成证书文件:
[root@desktop certs]# openssl req -utf8 -new -key /etc/pki/tls/private/ceshi.key -x509 -days 365 -out ceshi.crt
注:
(1)req : 就等于“require”
(2)-utf8 :指定编码格式
(3)-x509 : 指定证书格式为标准的x509 格式
(4)-days : 证书的有效期限
(5)-out :输出证书文件(自签名形式)
私钥文件名字和证书文件名 不一定要一样!!
4.创建对应的目录,以及给网页编写内容(写资源文件)
[root@desktop ~]# mkdir /www/name
[root@desktop ~]# mkdir /www
[root@desktop ~]# echo "this is test" > /www/name/index.html
[root@desktop haha]# echo "这是子界面" > /haha/123/index.html
5.创建用户认证文件以及创建用户
# “-c” 指的是在用户认证文件没有被创建时,可以进行先创建文件再添加用户
[root@desktop ~]# htpasswd -c /etc/httpd/users zhangsan
[root@desktop ~]# htpasswd /etc/httpd/users lisi
注意:第二次创建用户的时候就不用再加“-c” ,不然就是覆盖之前文件里面的内容又重新加入新内容
6.重启httpd服务,使用命令测试
[root@desktop ~]# systemctl restart httpd
[root@desktop ~]# curl -k https://192.168.147.130/w3/
#注意/w3是一个目录,所以访问的是该目录下的资源文件,所以还要加一个斜杠
7.网页测试
两种方式:一种访问网站主目录,一种访问网站的子页面(子目录下的子资源文件)
https://192.168.147.130
https://192.168.147.130/w3/
基于设置的可以访问的用户,进行登录
基于网站主目录的访问
后面加上自己定义的虚拟目录,访问网站的子页面