フォローするSSH証明書のかなり良いテキスト現在、OpenBSDシステムで例をエミュレートしようとしてRHEL 6 openssh-5.3p1-94.el6
(約10年前)用に書かれています。
一例ShowはホストCAキーを生成し、ホストのRSAキーに署名します。
ssh-keygen -s ~/.ssh/ca_host_key -I host_name -h -Z host_name.example.com -V -1w:+54w5d /etc/ssh/ssh_host_rsa.pub
Enter passphrase:
Signed host key /root/.ssh/ssh_host_rsa-cert.pub: id "host_name" serial 0 for host_name.example.com valid from 2015-05-15T13:52:29 to 2016-06-08T13:52:29
OpenBSDでこれを試しても出力は出ませんfor host_name.example.com
。テキストは言う
この
-Z
オプションは、この証明書をドメイン内の特定のホストに制限します。
...これについて少し混乱しています。OpenBSD マニュアルssh-keygen(1)
-Z
オプションはまったく言及されていません。私もssh-keygen
文句を言わず、この文書化されていないオプションを受け入れることについて混乱しています。
見ているソースコードssh-keygen
、-Z
オプションはい許可されますが、ホスト名よりも「パスワード形式」(または「パスワード形式」)に関連しているようです(正しいコードを見ていると仮定)。
case 'Z':
openssh_format_cipher = optarg;
break;
以前のバージョンのコードを見るといつも「パスワード形式」に関連しています。
OpenSSHリリースノート言及する必要はありません-Z
。
Q:ssh-keygen
RHEL 6のRedHat専用パッチでパッチを適用しましたか(該当するバージョンが関連しているかどうかはわかりませんが、RHEL 7またはRHEL 8用のSSH証明書に関する同等の文書がないようです)-Z
。違いますか?
ベストアンサー1
長すぎる博士。最新バージョンのOpenSSHでは、サブジェクト(ホスト名やユーザーなど)を設定する-n
代わりにこのオプションを使用する必要があります。-Z
ソースコードを見ると、
ssh-keygen
その-Z
オプションは許可されますが、「パスワード形式」に関連しているようです。
はい、エラーが発生しない理由は、openssh_format_cipher
証明書を生成するときに変数が使用されず、パスワードでキーを生成するときにのみ使用されるためです。
キー生成を有効にしてssh-keygen -f ./path -Z some_garbage
パスワードを設定すると、エラーメッセージが表示されます。
動作を異ならせるRHEL 6の
ssh-keygen
RedHat関連パッチでパッチされていますか?-Z
はい、昔もそうでした。openssh-5.3p1-ssh-certificates.patch
で見ることができますここ:
+ case 'Z':
+ cert_principals = optarg;
+ break;
case 'p':
このパッチは、最新のrpmでは使用されなくなりました。