本教程将向您展示如何使用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代码,例如US或GB。对于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证书。


