如何在 Linux 中创建自签名证书

在 Linux 中创建自签名 SSL 证书非常简单,只需单击几下即可完成。 您可以使用自签名证书来保护 Web 服务器和访问者浏览器之间的连接。 Linux 使您可以非常轻松地生成证书并使用私钥对其进行签名。

下面介绍如何直接从 Linux 终端创建自己的 SSL 证书。

什么是 SSL 证书?

SSL 代表安全套接层。 SSL 证书验证网站的身份,并在网站和您的浏览器之间启用加密(安全)连接。

安全连接将加密在您的网络浏览器和您正在与之通信的服务器之间来回发送的所有数据。 这可以防止中间的任何人或计算机拦截和读取正在传输的数据。

我可以在我的网站上使用自签名 SSL 证书吗?

您可以在您的网站上安装和使用您自己的自签名 SSL 证书并启用加密连接。 但是,由于受信任的证书颁发机构尚未签署证书,访问者的 Web 浏览器将显示这样的警告,并声明该站点因此无法被肯定地识别。

出于这个原因,自签名证书通常最适合用于开发和测试目的,或者用于用户来自内部网络而不通过 Internet 连接的公司或家庭 Intranet 等应用程序。

同样,重要的是要注意,尽管自签名 SSL 证书可能会在您的 Web 浏览器中引起警告,但它仍将启用安全连接,其工作方式与由受信任机构之一创建的任何证书完全相同。

如果您想为公共网站生成 SSL 证书,但要确保用户不会收到任何令人困惑的警告,您可能想了解如何从受信任的证书颁发机构设置免费的 SSL 证书。

在 Linux 上安装 OpenSSL

要在 Linux 上生成自签名 SSL 证书,您首先需要确保已安装 OpenSSL。 为此,请打开终端并输入与您正在使用的发行版相对应的适当命令。

如果您使用的是基于 Debian 的系统,例如 Ubuntu 或 Linux Mint:

sudo apt install openssl

如果您使用的是基于 RPM 的发行版,例如 Fedora 或 CentOS:

sudo dnf install openssl

在 Arch Linux 上安装 OpenSSL:

pacman -S openssl

您的系统应该需要一些时间来下载和安装 openssl 包裹。

创建您的自签名 SSL 证书

一旦你确定你已经安装了 OpenSSL,你可以通过输入一个命令来创建你的 SSL 证书。 OpenSSL 将在当前目录中创建证书和相应的加密密钥。 因此,在输入任何其他命令之前,请确保您位于要保存证书和密钥的目录中。

要创建您的自签名 SSL 证书,请在提示符处输入以下命令,替换两个实例 我的服务器 使用您想要使用的文件名。

openssl req -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out myserver.crt -keyout myserver.key

该命令将生成证书和用于签署证书的私钥。 您可以根据自己的意愿命名文件。 上述命令将使用 4096 位加密生成自签名证书,有效期为 365 天。

为了完成该过程,系统将询问有关证书所针对的组织的几个问题。 如果您只是打算将证书用于个人开发或测试目的,您可以填写您喜欢的任何值,除了 通用名称 场地。 在此字段中,您应该输入您计划安装证书的网站的域名。

您的 SSL 证书现在可以使用了

这里的所有都是它的。 您现在应该有一个 SSL 证书(CRT 文件)和用于对其进行签名的加密密钥(KEY 文件)。 只需按照您要安装证书的平台上的说明进行操作,您就可以使用加密的 HTTPS 连接连接到您的网站。

没有多少 Linux 用户知道这一点,但您也可以使用 OpenSSL 来加密文件、整个磁盘目录等。