返回

快速部署网站:在nginx下安装SSL证书并启用HTTPS访问

前端

前言

随着互联网的发展,网站安全变得越来越重要。使用SSL证书可以为您的网站提供加密的连接,保护用户的数据并提高网站的安全性。同时,HTTPS访问还可以提高网站的排名,让网站在搜索引擎中获得更高的排名。

本文将指导您如何在Nginx Web服务器上安装SSL证书并启用HTTPS访问。我们将逐步介绍整个过程,包括生成CSR、购买SSL证书、安装证书以及配置Nginx以启用HTTPS。

生成CSR

CSR(Certificate Signing Request)是证书签名请求,它是您在申请SSL证书时需要提交的文件。CSR包含了您的域名、组织信息以及公钥等信息。

要生成CSR,您可以使用OpenSSL命令行工具。在终端中输入以下命令:

openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

其中:

  • -new:生成一个新的密钥和CSR。
  • -newkey rsa:2048:生成一个2048位的RSA密钥。
  • -nodes:不要生成口令保护的密钥。
  • -keyout server.key:将私钥保存到server.key文件中。
  • -out server.csr:将CSR保存到server.csr文件中。

购买SSL证书

CSR生成后,您就可以购买SSL证书了。您可以从任何受信任的证书颁发机构(CA)购买SSL证书。

在购买SSL证书时,您需要选择证书的类型。最常见的SSL证书类型是DV(Domain Validation)证书、OV(Organization Validation)证书和EV(Extended Validation)证书。

  • DV证书是最基本类型的SSL证书,它只验证域名的所有权。
  • OV证书除了验证域名的所有权外,还会验证组织的信息。
  • EV证书是最高级别的SSL证书,它不仅验证域名的所有权和组织的信息,还会验证组织的真实性。

安装证书

购买SSL证书后,您需要将其安装到您的Nginx服务器上。

首先,您需要将SSL证书和私钥复制到您的Nginx服务器上。您可以使用SCP命令来完成此操作。

scp server.crt root@example.com:/etc/nginx/ssl
scp server.key root@example.com:/etc/nginx/ssl

其中:

  • server.crt是您的SSL证书文件。
  • server.key是您的私钥文件。
  • root@example.com是您的Nginx服务器的用户名和域名。
  • /etc/nginx/ssl是您要将证书和私钥复制到的目录。

配置Nginx

将SSL证书和私钥复制到您的Nginx服务器后,您需要配置Nginx以启用HTTPS访问。

首先,您需要在您的Nginx配置文件中添加以下内容:

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;
}

其中:

  • listen 443 ssl;表示Nginx将在443端口上监听SSL连接。
  • server_name example.com;表示此配置适用于example.com域名。
  • ssl_certificate /etc/nginx/ssl/server.crt;指定SSL证书文件的位置。
  • ssl_certificate_key /etc/nginx/ssl/server.key;指定私钥文件的位置。

测试HTTPS访问

配置Nginx后,您就可以测试HTTPS访问了。

在浏览器中输入以下网址:

https://example.com

如果一切正常,您应该会看到您的网站以HTTPS的形式加载。

结语

通过本文,您已经学会如何在Nginx Web服务器上安装SSL证书并启用HTTPS访问。这将保护您的网站安全并为用户提供更安全的浏览体验。