ssh - 疑似端末割り当ての無効化

ssh - 疑似端末割り当ての無効化

SSH クライアントオプション "-T" は疑似端末割り当てを無効にします。

このオプションをオンにすると、リモートsshdはリモートコマンドを実行するためにptyを割り当てません。リモートコマンドの出力はどのようにSSHクライアントに送り返されますか?私が知る限り、SSHクライアントとサーバー間の簡単な入出力は次のとおりです。

ssh client <--- (TCP/IP) --> ssh server <---> ptm <---> pts <---> remote command

-Tオプションを使用すると、sshdがリモートコマンドを実行するためにptyペアを生成しないことを意味しますか?

答え1

close pty 割り当てを使用する場合、-Tsshd は双方向 pty の代わりにパイプペアを使用してリモートコマンドを実行するプロセスと通信します。

あなたは見ることができますdo_exec_no_pty()OpenSSHソースコードの機能(どこにも文書化されていない場合)dropbear(別のsshd実装)も同様のことをしています。

ptyの場合はい割り当てられた(-tオプションまたはリモートコマンドなし)は、リモートシステムにのみptyを割り当てます。クライアント ssh はローカルシステムに pty を割り当てません。 ttyの場合は、標準入力でRAWモードを開きます。

関連情報