当前位置:首页 > 系统教程 > 正文

Linux下Nginx HTTPS证书自制全攻略

Linux下Nginx HTTPS证书自制全攻略

从生成到配置的步步指南

在当今互联网安全至关重要的时代,为网站启用HTTPS加密连接已成为标准实践。本教程将详细介绍在Linux系统下,如何为Nginx服务器自制HTTPS证书,并完成配置,即使你是小白用户也能轻松跟随。

我们将从生成自签名证书开始,逐步引导你配置Nginx,最终实现HTTPS访问。请注意,自签名证书适用于测试或内部使用,对于生产环境,建议使用受信任的证书颁发机构(CA)签发的证书。

前提条件

  • 一台运行Linux系统的服务器(如Ubuntu、CentOS等)
  • 已安装Nginx服务器
  • 已安装OpenSSL工具(通常系统自带)

步骤一:生成自签名证书

首先,我们需要使用OpenSSL生成一个自签名的SSL证书。这包括私钥和证书文件。以下命令将在当前目录生成证书。

    openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout nginx-selfsigned.key -out nginx-selfsigned.crt  

执行命令后,按照提示输入相关信息,如国家、地区、组织等。对于自签名证书,这些信息可以自定义。

Linux下Nginx HTTPS证书自制全攻略 Linux Nginx HTTPS证书  自制SSL证书 证书生成命令 SSL配置 第1张

这里,我们生成了两个文件:nginx-selfsigned.key(私钥)和nginx-selfsigned.crt(证书)。请妥善保管私钥,切勿泄露。

通过这个证书生成命令,你已经成功创建了自制SSL证书,为后续的Linux Nginx HTTPS证书配置奠定了基础。

步骤二:配置Nginx使用HTTPS证书

接下来,我们需要修改Nginx配置文件,以使用生成的证书启用HTTPS。通常,Nginx配置文件位于/etc/nginx/nginx.conf/etc/nginx/sites-available/default

编辑配置文件,在server块中添加SSL配置。以下是一个基本示例:

    server {    listen 443 ssl;    server_name your_domain.com;    ssl_certificate /path/to/nginx-selfsigned.crt;    ssl_certificate_key /path/to/nginx-selfsigned.key;    ssl_protocols TLSv1.2 TLSv1.3;    ssl_ciphers HIGH:!aNULL:!MD5;    # 其他配置...}  

your_domain.com替换为你的域名或IP地址,并将证书和私钥的路径替换为实际路径。保存文件后,检查配置语法:

    nginx -t  

如果显示语法正确,重新加载Nginx配置:

    systemctl reload nginx  

这样,你就完成了Nginx SSL配置,使服务器支持HTTPS连接。

步骤三:测试HTTPS连接

现在,打开浏览器访问https://your_domain.com。由于使用的是自签名证书,浏览器可能会显示安全警告,这是正常的。你可以选择继续访问以测试配置。

你也可以使用命令行工具如curl进行测试:

    curl -k https://your_domain.com  

选项-k允许curl忽略证书验证错误。

总结

通过本教程,你学会了在Linux系统下为Nginx自制HTTPS证书的完整过程,从生成到配置。掌握Linux Nginx HTTPS证书的创建和自制SSL证书的使用,对于开发和测试环境非常有用。记住,自签名证书不适合生产环境,但对于内部项目或测试,它是一个快速解决方案。

希望这篇指南能帮助你成功启用HTTPS。如果有任何问题,请参考Nginx官方文档或社区支持。