私の言葉は:
sshdがrootアカウントで実行されていない場合、リモートSSHクライアントがrootアカウントでシェルまたは他のコマンドを実行できるようにするにはどうすればよいですか?
sshdがloginコマンドを呼び出すと、ユーザーはrootとしてログインできます。これは、ユーザーがrootパスワードを提供し、UNIXがそれを知っているためです。
ただし、sshdにはパスワードのない機能もあります。つまり、SSH クライアントの公開鍵を保存します。この場合、SSH クライアントはログインコマンドのパスワードを入力しません。 SSHクライアントにUNIXシステムでROOTユーザーとしてシェルを実行させる方法は? sshdがrootアカウントでない場合。
オリジナル:
私の問題は、sshdを使用してパスワードなしでサーバーにログインできることです。
では、root権限で実行する必要がありますか?
そうでない場合、サーバーはどのようにクライアントが root として実行できるようにしますか?
ベストアンサー1
私は以前何か尋ねました。サーバー障害。少し修正され、注釈付きの引用:
作成した新しいファイルの場所から
/usr/sbin/sshd -f ~/.ssh/sshd_config
プロセスを開始します。~/.ssh/sshd_config
他のオプション(たとえば、異なるホストキー、異なるポートなど)の中から行を追加する必要があります。これにより、プロセスが呼び出しを試みることをUsePrivilegeSeparation no
防ぎ、ユーザーとして引き続き実行され、ユーザー接続を受け入れることができます。 。sshd
setuid
setgid
また、許可されていないポート(> 1024)を使用することを忘れないでください。