私はDebianサーバーを保護しようとしていますが、telnet myserverip port#
私が入力すると誰でも私のSSHバージョンを見ることができることがわかりました。それ以上に人々が害を及ぼすのは少し心配です。サーバーがTelnet関連の要求を拒否するようにするにはどうすればよいですか? Googleで検索しましたが、ほとんどのサイトではinit.dファイルを変更するように求めましたが、当初はTelnetサービスは変更しませんでした。私はTelnetとそれがどのように機能するかについて何か誤解していると確信しています。それならごめんなさい。
答え1
SSHはTCPサービスなので、クライアントがTelnetか他のサービスかを知る方法はありません。システムバージョンおよび/またはシステムアーキテクチャを非表示にするには、次の手順を試してください。
http://en.wikipedia.org/wiki/Port_knocking
あるいは、独自の「バージョン」でopensshを簡単に再コンパイルすることもできます。 AFAIRには、変更できる#defineを含むヘッダーファイルがあります。見つけるのは難しくないはずです。ただソースをgrepしてください。
答え2
使用しない予定なら削除してみてはいかがでしょうか?
apt-get --purge remove openssh-server
削除しない場合は、次のコマンドを使用して自動起動を無効にできます。
update-rc.d -f sshd remove
あるいは、smrt28が提案したように実行し、直接コンパイルした後、バージョンを変更して識別するのをより困難にすることもできます。