bg-tutorials

如何在LiteSpeed上生成CSR

本教程将向您展示如何使用OpenSSL命令行在LiteSpeed上生成CSR

LiteSpeed Web Server(LSWS Enterprise)和OpenLiteSpeed没有内置的CSR向导:它们的WebAdmin控制台需要指向现有私钥和证书的文件路径。您需要在LiteSpeed主机上用OpenSSL生成这两个文件,将CSR提交给您的证书颁发机构(CA),然后在监听器的SSL选项卡中引用签发的证书和对应的密钥。

以下步骤适用于所有托管LiteSpeed的现代Linux发行版(Ubuntu、Debian、RHEL、AlmaLinux、Rocky Linux、CentOS Stream、CloudLinux),因为它们都自带OpenSSL 1.1.1或OpenSSL 3.x。这两个版本默认都使用SHA-256对请求进行签名,因此您无需添加摘要标志。

步骤1:连接到您的LiteSpeed服务器

在macOS或Linux上打开终端(Terminal),或在Windows上打开PowerShell或Windows Terminal,然后通过SSH连接到服务器。请将用户名和主机替换为您自己的:

ssh your-user@your-litespeed-server

请在将运行LiteSpeed监听器的同一台服务器上生成CSR。私钥会与CSR一同创建,并且必须保留在该服务器上,因此在笔记本电脑上运行该命令再复制密钥到处传送就失去了意义。默认的LSWS安装位于/usr/local/lsws/下,通常的惯例是将证书相关文件保存在/usr/local/lsws/conf/ssl/中。如果该目录不存在,请先创建,然后进入该目录:

sudo mkdir -p /usr/local/lsws/conf/ssl
cd /usr/local/lsws/conf/ssl

步骤2:生成私钥和CSR

如果您已经使用其他工具生成了CSR,请直接跳转到在LiteSpeed上安装证书部分。

运行以下OpenSSL命令。它会一步生成2048位RSA密钥和CSR,主题和主题备用名称(SAN)都直接内联提供,这样OpenSSL就不会停下来询问问题:

sudo openssl req -new -newkey rsa:2048 -nodes 
-keyout yourdomain.key 
-out yourdomain.csr 
-subj "/C=US/ST=YourState/L=YourCity/O=YourCompany/CN=yourdomain.com" 
-addext "subjectAltName=DNS:yourdomain.com,DNS:www.yourdomain.com"

各部分的作用如下:

  • -newkey rsa:2048生成一个新的2048位RSA密钥。2048位是目前公共CA接受的最低标准;您也可以使用rsa:4096生成更大的密钥,或改用ECDSA(见下文)。
  • -nodes使私钥保持未加密状态。这是LiteSpeed所必需的:WebAdmin监听器无法使用受密码保护的密钥启动。
  • -keyout-out用于命名私钥文件和CSR文件。请保留.key.csr扩展名,以便LiteSpeed监听器字段和您的CA订购表单能够识别它们。
  • -subj提供证书主题。请在此处填写您的真实公司名称、州(省)和城市,而不是占位符。CN(通用名称)是您的主域名。
  • -addext “subjectAltName=…”列出证书必须覆盖的每个主机名。公共CA会依据SAN列表进行验证,因此这里也应包含通用名称。

请在整个命令中将yourdomain.com替换为您的实际域名。若要覆盖更多主机名,请在SAN列表中用逗号分隔添加,例如DNS:api.yourdomain.com。对于通配符证书,请同时包含通配符和裸域名:DNS:*.yourdomain.com,DNS:yourdomain.com。主题字段中只能使用字母数字字符,C字段请使用官方的两字母国家代码。

如果您更倾向于使用ECDSA密钥(体积更小、速度更快,且P-256得到广泛支持),可改用以下命令生成密钥和CSR:

sudo openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -pkeyopt ec_param_enc:named_curve -nodes 
-keyout yourdomain.key 
-out yourdomain.csr 
-subj "/C=US/ST=YourState/L=YourCity/O=YourCompany/CN=yourdomain.com" 
-addext "subjectAltName=DNS:yourdomain.com,DNS:www.yourdomain.com"

如果您希望逐项回答提示,可运行sudo openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr,不加-subj也不加-addext。OpenSSL将依次询问每个字段。此时:

  • 国家名称(C):您所在国家的两字母ISO代码,例如USGB。对于Business Validation或Extended Validation证书,此项必须是您组织注册的官方国家。
  • 省/州名称(ST):完整名称,例如California。请勿使用缩写。
  • 城市名称(L):城市或城镇名称,例如San Francisco
  • 组织名称(O):您公司的正式注册名称,例如GPI Holding LLC。对于Domain Validation证书,您可以填写NA
  • 组织单位名称(OU):此字段已弃用,公共CA不会读取它。直接按回车留空即可。
  • 通用名称(CN):证书对应的完全限定域名,例如www.yourdomain.com。对于通配符证书,请使用*.yourdomain.com
  • 电子邮件地址:可选项,公共CA不使用此项。可留空。
  • 挑战密码可选公司名称:两者都是已废弃的属性,公共CA会忽略它们。请留空。

如果不加-addext标志,生成的CSR将不含任何SAN条目。公共CA会依据SAN列表进行验证,如果没有SAN条目,请求可能会被拒绝(或被静默覆盖),因此推荐的方式是使用上文中带有内联-subj-addext的命令。

步骤3:找到您的文件并锁定密钥

列出当前目录以确认两个文件都已创建:

ls

您应该会看到两个新文件:

  • yourdomain.key:您的私钥。请将其保留在服务器上,做好安全备份,切勿发送给任何人,包括证书颁发机构。持有该密钥的人可以冒充您的网站。
  • yourdomain.csr:您的证书签名请求。这是您要提交给SSL提供商的文件。

请限制私钥的访问权限,使其仅能由文件所有者读取,同时确保LiteSpeed管理用户(默认为lsadm)在监听器加载这两个文件时仍能读取它们:

sudo chmod 600 yourdomain.key
sudo chown lsadm:lsadm yourdomain.key yourdomain.csr

步骤4:验证CSR(可选,但建议执行)

在提交CSR之前,请检查它是否包含正确的主题和SAN,以及其签名是否有效。以下命令会在本地用OpenSSL解码该请求:

openssl req -noout -text -verify -in yourdomain.csr

请确认Subject行显示的是您的信息,X509v3 Subject Alternative Name列出了您预期的每个主机名,并且签名检查显示verify OK。签名算法应显示为sha256WithRSAEncryption(对于ECDSA密钥则为ecdsa-with-SHA256)。如果您不想使用命令行,可以将CSR粘贴到我们的在线CSR解码器中,在浏览器中查看相同的字段信息。

步骤5:提交您的CSR

要复制CSR用于订购,请打印其内容:

cat yourdomain.csr

您将看到类似如下的一段文本:

-----BEGIN CERTIFICATE REQUEST-----
MIICyzCCAbMCAQAwTDELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQsw...
...(many more lines of base64 characters)...
-----END CERTIFICATE REQUEST-----

请复制整个代码块,包括-----BEGIN CERTIFICATE REQUEST----------END CERTIFICATE REQUEST-----这两行(每个标记两侧各有五个连字符)。整个代码块就是您的CSR。将其粘贴到购买时的订购表单中,并确保对应的私钥保留在服务器上。

如果您不想使用命令行,也可以使用我们的在线CSR生成器来创建请求。请注意,它会在您的浏览器中生成私钥,因此请自行保存该密钥并将其转移到LiteSpeed服务器上。

在您的CA验证请求后,您将收到证书。根据验证级别的不同,Domain Validation可能只需几分钟,而Business Validation和Extended Validation则可能需要几个工作日。

步骤6:在LiteSpeed中引用密钥和证书

证书签发后,请将签发的证书和CA证书包放到服务器上密钥所在的目录,然后让LiteSpeed监听器指向这些文件。在LSWS WebAdmin控制台中(通常位于https://your-server-ip:7080),打开Listeners,点击您的HTTPS监听器,切换到SSL选项卡,编辑SSL Private Key & Certificate部分:

  • Private Key File/usr/local/lsws/conf/ssl/yourdomain.key
  • Certificate File/usr/local/lsws/conf/ssl/yourdomain.crt
  • CA Certificate File/usr/local/lsws/conf/ssl/yourdomain.ca-bundle(中间证书)

保存后,在WebAdmin仪表盘上点击Graceful Restart,即可在不中断现有连接的情况下应用更改。OpenLiteSpeed在每个监听器的SSL选项卡下使用相同的字段,并在右上角提供相同的Graceful Restart按钮。有关完整的安装步骤,请参阅我们的指南:如何在LiteSpeed上安装SSL证书

立即订购 SSL 证书, 可节省 10% 的费用!

快速发行, 强大加密, 99.99% 的浏览器信任度, 专业支持和 25 天退款保证. 优惠券代码 SAVE10

龙飞行的详细图像
撰写人

经验丰富的内容撰稿人, 擅长 SSL 证书. 将复杂的网络安全主题转化为清晰, 引人入胜的内容. 通过有影响力的叙述, 为提高数字安全作出贡献.