Windows で SSH 経由で Git を使用するときに MOTD を無効にするにはどうすればいいですか?

Windows で SSH 経由で Git を使用するときに MOTD を無効にするにはどうすればいいですか?

私は Windows で Git を使用しており、リポジトリは SSH 経由です。何らかのアクションを実行するたびに、サーバーから MOTD が送信されます (これは勤務先の会社からの法的警告です)。

Linux を使用している場合は、.hushlogin ファイルを使用してこれを無効にできるようですが、ホーム フォルダー (私の場合は実際には f:\) と c:\users\$myID の両方に配置してみましたが、どちらの場合も機能しませんでした。

これを処理する正しい方法は何ですか?

(違いがある場合は、Git\bin インストール フォルダーの ssh.exe を使用します)

答え1

答えは、ユーザーの .\ssh\ フォルダー (id_rsa ファイルが置かれているフォルダーと同じ) に「config」というファイルを置き、その中に次の内容を入れることです。

LogLevel QUIET

答え2

上記のさまざまなコメントによると、いけないSSH コマンドラインにサーバー上で実行する (非対話型の) コマンドが含まれている場合は、MOTD を取得します。例ls:

C:\> \Git\bin\ssh.exe user@host "ls -l *.cc"

ただし、上記のコマンドの場合するMOTD (および からの出力ls) が表示される場合、何かが壊れているか、誤って構成されています (おそらくサーバー側)。ただし、回避策はまだある可能性があります。

  • -N リモート/サーバー側にログインシェルがない
  • -T サーバー側でTTY / 端末の割り当てを強制しない

次のフラグのいずれかまたは両方を試してください。

C:\> \Git\bin\ssh.exe -N -T user@host "ls -l *.cc"

関連情報