在 Ubuntu 上为 SSL 请求创建 csr 时出现错误

在 Ubuntu 上为 SSL 请求创建 csr 时出现错误

我正在尝试在我的网站上创建 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(来自命令)替换为-(通过键盘写入),现在一切正常。

问题是,在某些网站上,他们在命令中使用的特殊字符看起来与破折号非常相似,但这些字符在终端中不起作用。

相关内容