以下の文にこのような文があります。
ログインシェルと非ログインシェルの違いは何ですか?
鍵は次のとおりです。
非対話型ログインシェルを取得する別の方法は、端末ではなく標準入力を介して渡されたコマンドを使用してリモートでログインすることです(非対話
ssh example.com <my-script-which-is-stored-locally
型、非ログインシェルを実行するのとは対照的)ssh example.com my-script-which-is-on-the-remote-machine
。
著者は上記の説明から二つの結論を導き出す。
非対話型ログインシェル
ssh example.com <my-script-which-is-stored-locally
非対話型、非ログインシェル
ssh example.com my-script-which-is-on-the-remote-machine
私は2番目の結論が正しいとは思わない。
を実行するときは、ssh example.com my-script-which-is-on-the-remote-machine
アカウント名とパスワードをローカルに入力する必要があります。
それでも非対話型ログインシェルです!
ログインシェル:ログインシェルは指定されたユーザーとしてシステムにログインし、ユーザー名とパスワードが必要です。
ネットワークに応じてログインシェルの説明
非対話型および非ログインシェルの例があります。 mysqldやapache2などの一部のデーモンプロセスは、すべて非対話型および非ログインシェルです。
あなたのターン:本当ですか、偽ですか?
ベストアンサー1
ssh example.com my-script-which-is-on-the-remote-machine を実行する場合は、ローカルアカウント名とパスワードが依然として必要です。
それでも非対話型ログインシェルです!
ログインシェルの対話は、「ログイン名とパスワードの入力」として定義されていません。ローカルはパスワードssh
(またはキーを使用)を求めるメッセージを表示し、パスワードをリモートsshd
サーバーに渡し、正しく検証された場合にのみパスワードを提供しますshell
(UseLogin yes
使用しない限りsshd_config
非常に危険です)。