如何安装Nginx的SSL证书(开启https)

使用SSL运行的所有站点都使用HTTPS协议的默认端口443上的SSL通过加密服务器和客户端之间的数据安全的数据通信。本文将帮助你在Nginx的服务器配置SSL。在这个例子中,我们使用的是自签名证书。

第1步 - 安装Nginx的Web服务器

我们假设你已经在系统上安装Nginx的,但如果你不已经安装了它,使用下面的命令来安装它。
$ sudo apt-get install nginx

第2步 - 获取SSL证书

为了创建SSL证书,第一个要求是创建私钥和CSR。 CSR是其中有关于域名包括公共密钥的所有详细信息的文件。首先创建一个目录,建立csr和key。
# mkdir /etc/nginx/ssl/
# cd /etc/nginx/ssl/
现在用下面的命令创建CSR和密钥文件。更改名称的文件 example.com.keyexample.com.csr按您的域名。 此命令会要求输入你的域的信息。 了解更多有关创建CSR。
# openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
创建CSR后,请向任何证书提供商,如GeoTrust,Comodo,Digicert或GoDaddy等的SSL证书从CA获得证书后,结合您的主证书和中级证书文件中的单个文件。
# cat example.com.crt DigiCertCA.crt >> example.com.pem

第3步:设置虚拟主机使用SSL

让我们编辑Nginx的配置文件 /etc/nginx/conf.d/example.com.conf并添加下列值。
# HTTPS Server Block

server {

    listen   443;
    server_name example.com www.example.com;

    root /var/www/xyz.com/httpdocs;
    index index.html index.htm;

    ssl on;
    ssl_certificate /etc/nginx/ssl/example.com.pem;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
    ssl_prefer_server_ciphers on;
}

第四步 - 重启NGINX

最后,重新启动更改nginx的服务器生效。
# service nginx restart
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏