我正在尝试在我的网站上创建 SSL 认证。要创建 csr,我使用了以下命令:
openssl req –new –newkey rsa:2048 –nodes –keyout mydomain.key –out mydomain.csr
但是,我收到错误信息:
req:使用-help获取摘要。
我检查过openssl是否安装,并给出版本。因此,它已安装。
我不知道该怎么办。我对此还很陌生。这是我第一次尝试获取 SSL。
我过得很艰难。
答案1
my.domain.com
生成并签署以供使用的私钥openssl
。
创建一个新的加密私钥。
openssl genrsa -aes128 -out /etc/pki/tls/private/httpdkey.pem
在密码提示符下输入 httpd(或直接按空)。使用密钥生成自签名证书。
openssl req -new -x509 -key /etc/pki/tls/private/httpdkey.pem -out /etc/pki/tls/certs/httpdcert.pem -days 365
或者
- 生成要发送给证书颁发机构的证书签名请求:
openssl req -new -sha256 -key {{filename.key}} -out {{filename.csr}}
- 根据证书签名请求生成有效期为一定天数的自签名证书:
openssl x509 -req -days {{days}} -in {{filename.csr}} -signkey {{filename.key}} -out {{filename.crt}}
答案2
根据我在 digicert 网站上找到的说明,我在 Ubuntu 中尝试生成 CSR 时看到了完全相同的行为。在网上搜索了很久之后,我终于注意到命令中的两个连字符看起来略有不同。
看起来像我复制的说明实际上包含一些破折号而不是连字符。
当我手动输入命令而不是复制/粘贴时,openssl 命令按预期工作
复制/粘贴 Digicert 命令:
openssl req –new –newkey rsa:2048 –nodes –keyout ./server.key –out ./server.csr
手动输入 Digicert 命令:
openssl req -new -newkey rsa:2048 -nodes -keyout ./server.key -out ./server.csr
答案3
我在这个问题上花了几个小时。就我而言,问题与破折号有关。我从一个网站复制并使用了这个字符串openssl req –new –newkey rsa:2048 –nodes –keyout dreamlist.key –out dreamlist.csr
,结果出现了req: Use -help for summary.
问题。我已将所有–
s(来自命令)替换为-
(通过键盘写入),现在一切正常。
问题是,在某些网站上,他们在命令中使用的特殊字符看起来与破折号非常相似,但这些字符在终端中不起作用。