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

自签永久免费HTTPS证书指南

在本教程中,我们将详细介绍如何在Ubuntu系统上自签永久免费HTTPS证书,避免常见陷阱。HTTPS证书对于网站安全至关重要,而自签名证书可以免费提供加密功能,适合测试或内部使用。我们将使用OpenSSL工具来生成证书,并配置到Web服务器。首先,确保你已安装Ubuntu系统,并具有管理员权限。

准备工作:安装OpenSSL

在开始之前,打开终端并更新系统包列表。运行以下命令安装OpenSSL,它是生成HTTPS证书的核心工具:

    sudo apt updatesudo apt install openssl  

安装完成后,验证OpenSSL版本:openssl version。这确保工具就绪,为生成自签名证书打下基础。

自签永久免费HTTPS证书指南 Ubuntu HTTPS证书 自签名证书 永久免费SSL 第1张

步骤一:生成私钥

首先,创建一个目录来存储证书文件:sudo mkdir /etc/ssl/certs。然后,生成一个RSA私钥,这是HTTPS证书的安全基础。运行命令:

    sudo openssl genrsa -out /etc/ssl/certs/private.key 2048  

这会在指定路径生成一个2048位的私钥文件。私钥必须保密,因为它用于加密通信。

步骤二:生成证书签名请求(CSR)

接下来,使用私钥生成证书签名请求(CSR),其中包含你的网站信息。运行命令:

    sudo openssl req -new -key /etc/ssl/certs/private.key -out /etc/ssl/certs/request.csr  

系统会提示输入信息,如国家、组织和通用名称(域名)。填写后,CSR文件将用于自签名证书生成。

步骤三:自签名证书生成

现在,使用CSR和私钥生成自签名证书,实现永久免费HTTPS加密。运行命令:

    sudo openssl x509 -req -days 3650 -in /etc/ssl/certs/request.csr -signkey /etc/ssl/certs/private.key -out /etc/ssl/certs/certificate.crt  

这里,-days 3650设置证书有效期为10年(永久免费使用)。证书文件将保存在/etc/ssl/certs/certificate.crt。至此,自签名证书创建完成,你已获得一个HTTPS证书。

步骤四:配置Web服务器

将证书应用到Web服务器(如Apache或Nginx)以启用HTTPS。以Nginx为例,编辑配置文件:sudo nano /etc/nginx/sites-available/default。在server块中添加:

    listen 443 ssl;ssl_certificate /etc/ssl/certs/certificate.crt;ssl_certificate_key /etc/ssl/certs/private.key;  

保存后,重启Nginx:sudo systemctl restart nginx。现在,你的网站将通过HTTPS访问,使用自签永久免费SSL证书。

常见坑和解决方案

在Ubuntu系统上自签证书时,常遇到浏览器警告“证书不受信任”。这是因为自签名证书未由公共CA签发。解决方法:将证书导入浏览器或系统信任库。另一个坑是证书路径错误,导致服务器无法加载。确保配置文件中的路径正确,并使用sudo nginx -t测试配置。

总结

通过本教程,你学会了在Ubuntu上自签永久免费HTTPS证书的全过程,从安装OpenSSL到配置服务器。自签名证书虽不如商业证书广泛信任,但适合内部或测试环境,提供基本加密。记住定期备份私钥,并监控证书有效期。HTTPS证书是网站安全的关键组件,使用Ubuntu和OpenSSL可以低成本实现。