Nginx使用SSL加密并隐藏真实地址详细教程


  • nginx安装默认不带SSL模块,使用https需要自己添加此模块。
  • 使用nginx的rewrite功能,可以将http重写至https,从而使用SSL加密,加强了网页的安全性;https再代理到提供服务的真实ip与端口,实现隐藏真实地址的功能,思维流程见下图。

在这里插入图片描述


一、nginx安装ssl模块

  • 下载openssl并解压
wget https://www.openssl.org/source/openssl-1.0.1t.tar.gz
tar zxvf openssl-1.0.1t.tar.gz
  • 配置NGINX模块
cd [your nginx source folder]
./configure --with-http_ssl_module --with-openssl=/home/openssl-1.0.1t
  • 编译
make -j2
make install

二、配置server模块,实现http重写到https

首先说一下zhengxh.work是用于示例的web服务的域名。

server {
    listen   80; //监听80端口,http的默认端口就是80
    server_name  zhengxh.work; //配置需要重写的域名
    location / {
       rewrite ^(.*) https://$server_name$1 permanent; //把所有访问http的请求重写至https。
       }
   }

三、https代理提供服务的真实ip与端口

# HTTPS server
    server {
       listen       443 ssl; //监听443端口,https的默认端口就是443

       ssl_certificate      cert/zhengxh.work_bundle.pem;   //添加ssl的PEM文件,申请ssl证书后可以下载此文件
       ssl_certificate_key  cert/zhengxh.work.key;  //添加ssl的KEY文件,申请ssl证书后可以下载此文件

       ssl_session_cache    shared:SSL:1m;
       ssl_session_timeout  5m;

       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;

       location / {
           proxy_pass http://10.0.4.11:8090;  //使用proxy_pass代理提供服务的真实ip与端口,实现隐藏功能
        }
    }

总结

上述配置思路非常适合WEB服务想要使用SSL加密,并隐藏真实地址的场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

微瑟秋风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值