NGINX---HTTPS
搭建的背景
在上一次我们已经初步的搭建起一个WEB服务有需要可以点击一下这个nginx从零开始学习(一)那么这次我们讲的是HTTPS,那么什么是HTTPS呢? HTTP是超文本传输协议,那么HTTPS在HTTP基础上加多一个SSL安全套件,HTTP+SSL就成了HTTPS(安全超文本传输协议)
环境的准备
- 一台装好nginx的服务器
- 因为需要加密所以就需要加密的工具-----证书,一般证书是要自己去CA机构购买的,也有不错的免费CA机构的证书,这次用自签名的方式也就是自己做CA在给自己发行证书 注:因为是自己生成的证书所以是不受信任的
- 当准备好了这些就可以正式搭建了
搭建的步骤
首先要安装可以生成证书的软件。
yum -y install openssl openssl-devel
然后在命令行中敲
openssl genrsa -des3 -opt server.key 1024
openssl genrsa -des3 -out server.key 1024 ---创建一个私钥 这个密码是你每次reload nginx的时候需要填写的 之后可以删除的
openssl req -new -key server.key -out server.csr ---创建一个公钥出来
Enter pass phrase for root.key: ← 输入前面创建的密码
Country Name (2 letter code) [AU]:CN ← 国家代号,中国输入CN
State or Province Name (full name) [Some-State]:BeiJing ← 省的全名,拼音
Locality Name (eg, city) []:BeiJing ← 市的全名,拼音
Organization Name (eg, company) [Internet Widgits Pty Ltd]:MyCompany Corp. ← 公司英文名
Organizational Unit Name (eg, section) []: ← 可以不输入
Common Name (eg, YOUR name) []: ← 此时不输入
Email Address []:admin@mycompany.com ← 电子邮箱,可随意填
Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []: ← 可以不输入
An optional company name []: ← 可以不输入
前面都输完之后能会在当前目录生产一个server.key 以及一个server.csr
openssl x509 -req -days 3600 -in ../ssl/server.csr -signkey ../ssl/server.key -out server.crt
好了到这里前期准备的功夫就差不多了,那么接下来我们就开始配置了。因为涉及到配置文件,强烈建议备份一次文件在进行修改,直接复制一份即可
先进去配置文件所在的文件夹里
cd /usr/local/nginx/conf/
里面有很多文件 我们主要用到的只是nginx.conf这个文件,主要这个是全局配置文件我们现在进去配置文件里
vim nginx.conf
我们去到最下面一层看到
这几行,这就是配置HTTPS的几行了,现在把注释打开之后
最上面的HTTPS server不用打开 这个是说明注释
打开后我们保存退出
我们 cd .. 退到上一层去 创建一个ssl的文件夹,把所属者,所属组都给nginx这个用户
上面是做了一个创建ssl的文件夹,并且把刚才创建的私钥和公钥都复制过来 还把所属者 所属组修改了一下
那么现在我们回到配置文件
ssl_certificate /usr/local/nginx/ssl/server.crt;
ssl_certificate_key /usr/local/nginx/ssl/server,key;
主要修改上面这两行,第一行是放公钥的,下面是放私钥的 注意一定要写绝对路径 修改后 可以保存退出 然后我们测试下配置文件是否出现错误
/usr/local/nginx/sbin/nginx -t ---检查nginx的配置文件是否存在问题
/usr/local/nginx/sbin/nginx -s reload ----重启nginx,这个重启是不需要停服务在重启
之后我们可以https://IP地址 这样去访问一下
因为是自己生成的证书,所以是不信任的 点击高级继续访问即可
出现了OK是我们的页面那就证明可以了
到现在就已经证明可以使用htpps了
那么下次我们就说反向代理
猥琐男一号OωO