实验环境:
两台虚拟机,原始快照,一台做申请,另外一台做CA
实验步骤:
- 查看是否安装openssl和版本
rpm -q openssl

使用阿里源镜像(不用做以下步骤)
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum -y install openssl

- 查看版本
openssl version

- 安装nginx
rm -rf /var/run/yum.pid
yum -y install nginx
- 查看nginx是否安装ssl模块
nginx -V
显示结果包含: --with-http_ssl_module

- 创建ssl密钥目录,并进入目录
mkdir -p /etc/nginx/ssl_key
cd /etc/nginx/ssl_key
- CA证书颁发机构,创建私钥
cd /etc/nginx/ssl_key
openssl genrsa -idea -out server.key 2048
私钥的密码:1234
确认密码:1234

支持openssl就可以当CA,rsa是vpn中一种算法
-idea -out:输出一个私钥叫server.key
2048:加密算法是2048位
- 生成证书,去掉私钥的密码
openssl req -days 3650 -x509 -sha256 -nodes -newkey rsa:2048 -keyout server.key -out server.crt
请输入国家名:zh
省份名:bj
城市:bj
公司的名字:yun71
公司单位名字:yun71
服务器主机名:yun71

ls

- 配置https网站
cd /etc/nginx/conf.d
vim /etc/nginx/conf.d/https.conf
添加:
server {
listen 443 ssl;
server_name www.benet.com;
ssl_certificate ssl_key/server.crt;
ssl_certificate_key ssl_key/server.key;
location / {
root /httpsweb;
index index.html;
}
}

- 创建目录
mkdir /httpsweb
cd /httpsweb
vim index.html
<h1>hahahaha</h1>

或者
echo "<h1 style=”color:red”>welcome to bdqn!!!</h1> > /httpsweb/index.html
systemctl restart nginx
- 客户机修改hosts文件,使用https://www.benet.com访问测试。
echo “192.168.8.10 www.benet.com” >>/etc/hosts
firefox https://www.benet.com




- rewrite地址重写(http重定向到https)
vim /etc/nginx/conf.d/https.conf
添加:
server {
listen 443 ssl;
server_name www.benet.com;
ssl_certificate ssl_key/server.crt;
ssl_certificate_key ssl_key/server.key;
location / {
root /httpsweb;
index index.html;
}
}
server {
listen 80;
server_name www.benet.com;
# rewrite .* https://https.benet.com;
# rewrite .* https://$host$request_uri redirect;
# rewrite .* https://$server_name$request_uri redirect;
rewrite .* https://$server_name$1 redirect;
}

- 重载nginx
nginx -s reload
- 再使用客户端访问


1483

被折叠的 条评论
为什么被折叠?



