公開鍵認証を使用してサーバーにSSHで接続し、そのコンピュータでコマンドを実行するシェルスクリプトがあります。これは、ユーザーがサーバーに公開鍵をインストールしたコンピューターで正常に機能します。ユーザーが認証キーを設定していないシステムでこのスクリプトを実行すると、スクリプトはパスワードプロンプトで中断されます。私のスクリプトは引き続き実行され、プロンプトで停止しないようにしたいです。プロンプトをバイパスする方法は?私はMac OSXを使用しています。サーバーはOSXも実行します。
ベストアンサー1
これを行う1つの方法は、-o PasswordAuthentication=No
SSHコマンドに次のように指定することです。
ssh -o PasswordAuthentication=no user@server
これにより、SSHクライアントがサーバーと通信する必要がある認証オプションのリストからPasswordAuthenticationが削除され、パスワードプロンプトを続行できなくなります。これにより、PubkeyAuthentication(RHostsRSAAuthenticationなど)以外の他の認証メカニズムも機能できます。 pubkey認証を使用したい場合...
ssh -o PreferredAuthentications=publickey user@server