Nginx下配置自己的SSL加密网站

HTTPS 是一种加密的HTTP协议,现在主要应用于银行,金融,以及支付平台等领域。

除了向国际上一些知名的证书办法机构,如VeriSign。GlobalSign,GeoTrust申请数字证书之外(国内颁发证书的CA机构主要是CNNIC),我们自己也可以利用Linux系统相关命令自己生成数字证书,区别在于这一些证书,是不受浏览器支持的,需要自己动手选择信任才能继续访问:

先创建一个私钥文件:

openssl genrsa -des3 -out server.key 1024

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

openssl rsa -in server.key -out server_nopass.key

结合密钥和证书生成请求,创建一个自签署的CA证书

openssl req -new -x509 -days 3650 -key server_nopass.key -out server.crt

至此,通过自身生成的server_nopass.key 和 server.crt 即可以结合nginx的相关配置,搭建一个自认证的HTTPS系统

这里是一个Nginx的配置示例:

server {
        listen       443;
        server_name  localhost;

        ssl                  on;
        ssl_certificate      server.crt;
        ssl_certificate_key  server_nopass.key;

        ssl_session_timeout  5m;

        ssl_protocols  SSLv2 SSLv3 TLSv1;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers   on;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }


 

你可能感兴趣的:(Nginx下配置自己的SSL加密网站)