温馨提示×

Debian Nginx SSL如何选择合适证书

小樊
48
2025-06-30 09:17:21
栏目: 云计算

在Debian系统上配置Nginx以使用SSL证书时,您可以选择自签名证书或从受信任的证书颁发机构(CA)获取证书。以下是两种方法的详细步骤:

自签名证书

  1. 安装OpenSSL
sudo apt-get install openssl -y
  1. 生成私钥
openssl genpkey -algorithm rsa -out private.key -aes256

系统会提示设置私钥的密码。

  1. 生成证书签名请求(CSR)
openssl req -new -key private.key -out csr.csr

系统会提示输入国家、省份、城市、组织等信息。

  1. 生成自签证书
openssl x509 -req -days 365 -in csr.csr -signkey private.key -out certificate.crt

-days 365表示证书有效期为365天。

  1. 验证证书
openssl x509 -in certificate.crt -text -noout

从受信任的CA获取证书

  1. 导入Nginx密钥
curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg
  1. 设置稳定的Nginx存储库(可选)
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
  1. 安装Certbot
sudo apt update
sudo apt install snapd
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
  1. 使用Certbot申请证书
sudo certbot --nginx -d yourdomain.com

yourdomain.com 替换为你的实际域名。

  1. 验证证书安装

编辑Nginx配置文件,通常位于 /etc/nginx/sites-available/ 目录下,确保包含以下内容:

ssl_certificate /path/to/your/fullchain.pem;
ssl_certificate_key /path/to/your/privkey.pem;
  1. 重启Nginx服务以应用更改
sudo systemctl restart nginx

通过以上步骤,您可以在Debian系统上为Nginx配置SSL证书,无论是选择自签名证书还是从受信任的CA获取证书。

0