注意:这不是一个真正的问题,因为我已经找到了答案,但是由于我在这里不容易找到它,所以我将其发布,以便它可以使其他人受益。
问题:如何读取连接的 PEM 文件作为 apache/mod_ssl 指令SSLCACertificateFile使用的文件?
答案(原文)(来源):
cat $file|awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > "cert" n ".pem"}'
Run Code Online (Sandbox Code Playgroud)
如果末尾有一个空行,这可能会留下一个空文件,例如openssl pkcs7 -outform PEM -in my-chain-file -print_certs
. 为防止出现这种情况,请在打印前检查行的长度:
cat $file|awk 'split_after==1{n++;split_after=0}
/-----END CERTIFICATE-----/ {split_after=1}
{if(length($0) > 0) print > "cert" n ".pem"}'
Run Code Online (Sandbox Code Playgroud)
回答 29/03/2016:
按照@slugchewer answer,csplit
可能是一个更清晰的选择:
csplit -f cert- $file '/-----BEGIN CERTIFICATE-----/' '{*}'
Run Code Online (Sandbox Code Playgroud) 我在 VirtualBox 机器中有一个 ubuntu 桌面,我在 openssh 服务器上有一个奇怪的行为:
有人已经看过了吗?
感谢您花时间提供帮助
是否有等效的ssh
to sshd -T
(或者,对于那些知道的人来说,类似 maven 的东西mvn help:effective-pom
)?
我希望能够看到将应用于命令的有效配置,而ssh
无需/能够连接到远程主机
我有一些带有命令行参数、用户本地~/.ssh/config
和全局的批处理/etc/ssh/ssh_config
,这些批处理带来了噩梦般的配置外推问题。
例如。命令失败,因为全局配置强制远程端口连接到错误的 ssh 守护进程/更改了远程用户名/更改了远程主机名/