配置实现https

Posted linux运维菜鸟之旅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置实现https相关的知识,希望对你有一定的参考价值。

1.生成key文件:

openssl genrsa -out ssl.key 2048

#提示输入密码,暂时回车

#测试环境不要加密码,每次调试都要输入密码很麻烦

 

2.使用key生成一个csr文件:

openssl req -new -key ssl.key -out ssl.csr

#测试环境,出提示一路回车即可

 

3.用csr文件、key文件,颁发证书

openssl x509 -req -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt

#生成一个ssl.crt证书文件

 

4.修改nginx配置文件

#之前编译nginx已经默认支持ssl模块

#如不确定,可以用 nginx -V 查看版本及编译参数


两种方法:

1.负载均衡服务器实现

2.实际的webserver实现

 

这里采用在负载服务器上实现:

nginx.conf配置文件中:

listen 改为443

listen       10.0.0.3:443;

 

然后在server区块加入内容:

###https

        ssl on;

        ssl_certificate /application/nginx/ssl/ssl.crt;

        ssl_certificate_key  /application/nginx/ssl/ssl.key;

        ssl_session_cache    shared:SSL:1m;

        ssl_session_timeout  5m;

 

        ssl_ciphers  HIGH:!aNULL:!MD5;

        ssl_prefer_server_ciphers  on;

###end

最后加了一个location区块: ——避免了每次跳转网页时变成http

    server {

         listen 10.0.0.3:80;

         server_name www.george.com;

  rewrite ^/(.*) https://www.george.com/$1 permanent;

        }

 

重启nginx 测试,成功(由于是本地测试,仍然会提示不安全,但已经实现https访问)


1.做了https后,每次访问网址时显示异常



小伙伴们可以关注我的博客号:GeorgeKai,点击“阅读原文”进入

以上是关于配置实现https的主要内容,如果未能解决你的问题,请参考以下文章

轻松把玩HttpClient之配置ssl,采用绕过证书验证实现https

SpringBoot配置HTTPS,并实现HTTP访问自动转HTTPS访问

Windows下Nginx配置SSL实现Https访问(包含证书生成)

nginx配置ssl证书实现https访问

nginx配置阿里云免费ssl证书实现https化

树莓派/Debian Apache2 配置自建 CA 实现 HTTPS(SSL) 服务