前几篇博客分别实现了nginx的http访问和apache的https加密连接,那么现在就将它们组合在一起,实现基于nginx的https加密连接。
一、环境准备
这次我还是准备了两个虚拟机和一台真实计算机,其中一台IP为172.16.128.7的主机作为服务器,安装nginx软件提供https服务,另外一台IP为172.16.128.8的主机作为CA,进行证书验证,最后的真实计算机用来测试https是否配置成功。
二、安装nginx
不过这里只是为了验证https的功能,所以下面简易的创建一个网页出来:
上传并编译nginx:
<a href="https://s3.51cto.com/wyfs02/M02/A7/4B/wKioL1nklzzDiaHeAAA1q85SUQQ419.png-wh_500x0-wm_3-wmp_4-s_1678542484.png" target="_blank"></a>
安装完成之后直接使用“nginx”命令运行nginx服务,之后,我们就可以在真实计算机上通过浏览器访问“172.16.128.7”,得到以下画面(这是nginx的自带页面,在“/local/nginx/html/”里边):
<a href="https://s3.51cto.com/wyfs02/M02/08/9C/wKiom1nkoiKSrnpZAABuMl5ICYg177.png-wh_500x0-wm_3-wmp_4-s_2144801562.png" target="_blank"></a>
三、制作认证
进入目录“cd /etc/pki/CA”然后执行如图命令(在172.16.128.8(CA)上):
回到“172.16.128.7”(服务器)上,执行如图操作:
<a href="https://s5.51cto.com/wyfs02/M02/08/A9/wKiom1nliNLBwCrUAADlDbP_IzI134.png-wh_500x0-wm_3-wmp_4-s_693088810.png" target="_blank"></a>
四、更改nginx的ssl配置
使用下面的命令更改nginx的配置文件:
<code>~]</code><code># vim /etc/nginx/nginx.conf</code>
在监听端口的位置上加上两行内容,如图所示:
内容如下:
<code> </code><code>listen 443 ssl; </code><code>#在这里加上ssl,或者再加一行“ssl on;”效果一样,这样是简写</code>
<code> </code><code>ssl_certificate </code><code>/usr/local/nginx/ssl/myweb</code><code>.</code><code>test</code><code>.com.crt;</code>
<code> </code><code>#这两个目录的路径是保存私钥和CA验证之后返回的证书的目录</code>
<code> </code><code>ssl_certificate_key </code><code>/usr/local/nginx/ssl/nginx</code><code>.key;</code>
更改完配置之后保存退出,并重新加载配置文件之后,在真实主机的浏览器中打开,就可以看到下面这个页面了:
<a href="https://s1.51cto.com/wyfs02/M01/08/A9/wKiom1nli87hWnTsAADTH8IRLtY470.png-wh_500x0-wm_3-wmp_4-s_1502501745.png" target="_blank"></a>
本文转自正经的青年51CTO博客,原文链接:http://blog.51cto.com/11142243/1973196 ,如需转载请自行联系原作者