psshパスワードなしでSSHアクティビティを実行する方法

psshパスワードなしでSSHアクティビティを実行する方法

次のpsshコマンドは、日付を使用して並列操作を実行します。

pssh -i -H "master01 master02 master03 worker01 worker02"  -l root -x '-q -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -o PreferredAuthentications=publickey -o PubkeyAuthentication=yes' date | grep -v "^\["
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019

しかし、我々はマシンのパスワードが定義されていないことがわかりました。それでは、psshはパスワードなしでsshアクティビティをどのように実行できますか?

ベストアンサー1

pコマンドはsshオプションを設定しますPubkeyAuthentication=yes。これは、ログイン時にパスワードの代わりにキーペアを使用することを意味します。秘密鍵は、このプログラムを実行しているコンピュータにあります。秘密鍵が暗号化されていることを確認し、印刷された公開鍵をリモートシステムのファイルと/root/.ssh/authorized_keys比較します。

$ ssh-keygen -y -f $HOME/.ssh/id_rsa
  • ssh-keygenがパスワードの入力を求められない場合、秘密鍵は暗号化されていません。代わりに、ssh-agent秘密鍵を使用して暗号化する方法を学びます。そうでなければ、このファイルを持っている人は誰でもrootでコンピュータにログインできます!
$ ssh-keygen -p -f $HOME/.ssh/id_rsa

おすすめ記事