sshd
のバナーを設定することができます これは、接続が開かれたときに表示されます 、Banner /etc/motd.ssh
経由 sshd_config
で 。これは前に表示されることに注意してください 認証が行われ、インタラクティブシェルが起動されていない場合でも(例:scp
経由) 。
ただし、このバナーに印刷可能なASCII範囲外の文字が含まれている場合、それらはエスケープされているように見えます。このエスケープを無効にする方法、または印刷可能なASCII範囲外のそのような文字をサポートする接続時にテキスト出力をクライアントに送り返す別の方法はありますか?
これは、カラーエスケープシーケンスとUnicode文字の両方に役立ちます。
- 関連:カラフルなsshバナー(ただし、この質問は別の種類のバナーに関するものであり、色に関するものではないため、重複ではありません)
承認された回答:
メンション#1 –LinuxFromScratchプロジェクト
それが言及されている場所の1つは、LinuxFromScratchプロジェクトです。 / etc / issue(ログオンのカスタマイズ)というタイトルのこのページを見つけました。
抜粋
/ etc / issueファイルはプレーンテキストファイルであり、システムに関する情報を挿入するために特定のエスケープシーケンス(以下を参照)も受け入れます。リモートでログオンするときに使用できるファイルissue.netもあります。ただし、sshは、構成ファイルでオプションを設定した場合にのみ使用し、以下に示すエスケープシーケンスも解釈しません。
メンション#2 –SecurityFocusフォーラムの投稿
これが不可能であるという追加の証拠として、OpenSSHでのバナーの印刷を実装する機能について説明しているRe:ssh and Vancouvers Aug 18200901:20PMというタイトルのフォーラム投稿からの抜粋があります。
抜粋
さらに掘り下げてみると、ssh
ソース(具体的にはsshconnect2.c)に「input_userauth_banner」という関数があり、
サーバーからのバナーを表示していることがわかりました。バナーのテキストは、印刷不可能なASCII文字を印刷可能なテキスト(8進数コード)としてエンコードする「strnvis」と呼ばれる別の関数によって
フィルタリングされています。
これが、ansi
エスケープシーケンスが「Linux