SSHで本当に効果的にネットワーク接続を保護するためには、telnetやrshなどの安全性に欠ける接続プロトコルの使用をすべて中止しなければいけません。そうしないと、sshを使ってユーザーパスワードをせっかく保護しても、翌日にtelnetを使用してログインすれば、そのパスワードは盗聴される可能性があります。
安全性に欠ける接続方法を無効にするには、serviceconf、chkconfigのいずれかを使用して、これらのサービスがシステムで起動しないことを確認します。serviceconfを使用して、ランレベル2、3、5で起動するサービスを設定するには、次のコマンドを入力します。
/usr/sbin/serviceconf 235 |
serviceconf内では、サービスの選択を解除することで、それらのサービスの起動を無効にすることができます。スペースバーを使って、サービスのアクティブと非アクティブを切り替えます。少なくとも、telnet、rsh、ftp、rloginの選択を解除してください。終了したら、OKボタンをクリックして、serviceconfの変更を保存します。このユーティリティの詳細については、serviceconfのmanページを参照してください。
serviceconfに対する変更内容は、システムを再起動するか、システムがランレベルを変更するまで、有効になりません。xinetdで使用したサービスを無効にした場合は、xinetdを再起動しなければいけません。デフォルトでは、rlogin、rsh、telnetは、xinetdで制御されます。xinetdを再起動するには、次のコマンドを入力します。
/sbin/service xinetd restart |
xinetdで使用しないサービスの場合は、ntsysvの使用後にシステムを再起動しない限り、手動で停止しなければいけません。サービスを停止するには、次のようなコマンドを実行します。
/sbin/service <service-name> stop |
xinetdを再起動して、自動的に起動しないように設定した他のサービスをすべて停止すると、無効となった接続方法はシステムで利用できなくなります。sshdサービスデーモン以外のすべてのリモート接続方法を無効にした場合は、SSHクライアントアプリケーションを使用しなければ、サーバーに接続することはできません。