- -LinuxでSSHサーバーを保護する3つの方法

LinuxでSSHサーバーを保護する3つの方法

SSHを使用すると、端末を取得できます。ネットワーク、またはインターネットを介した他のLinux PCおよびサーバーへのアクセス!それでも、このテクノロジーと同じくらい驚くべきことに、それを使用することを危険にさらすいくつかの明白なセキュリティ問題があります。平均的なユーザーであれば、複雑なSSHセキュリティツールをインストールする必要はありません。代わりに、これらの基本的な手順に従ってLinuxでSSHサーバーを保護することを検討してください。

デフォルトの接続ポートを変更する

セキュリティを確保するためのはるかに迅速かつ簡単な方法SSHサーバーは、使用するポートを変更します。デフォルトでは、SSHサーバーはポート22で実行されます。変更するには、ターミナルウィンドウを開きます。ターミナルウィンドウ内で、SSHサーバーをホストしているリモートPCにSSH接続します。

ssh user@local-ip-address

ログインしたら、通常のユーザーからルートにドロップします。ルートアカウントを取得している場合は、でログインします 良い選択です。それ以外の場合は、次のものでアクセスする必要があります 須藤.

su -

または

sudo -s

管理者アクセス権を取得したので、NanoでSSH構成ファイルを開きます。

nano /etc/ssh/sshd_config

「ポート22」の構成ファイルをスクロールします。削除する ある場合は、変更します 22″を別の番号に。通常、100を超えるポート、または1,000の範囲内のポートで十分です。ポート番号を変更した後、 Ctrl + O 編集を保存するためのキーボードの組み合わせ。次に、を押してエディターを終了します Ctrl + X.

設定ファイルを編集しても、SSHサーバーが正しいポートを使用するようにすぐに切り替えられるわけではありません。代わりに、サービスを手動で再起動する必要があります。

systemctl restart sshd

systemctlコマンドを実行すると、SSHデーモンが再起動され、新しい設定が適用されます。デーモンの再起動に失敗した場合、別のオプションはSSHサーバーマシンを再起動することです。

reboot

デーモン(またはマシン)を再起動すると、ポート22からSSHにアクセスできなくなります。その結果、SSH経由で接続するには、ポートを手動で指定する必要があります。

注:SSH構成ファイルで設定されたポートで「1234」を必ず変更してください。

ssh -p 1234 user@local-ip-address

パスワードログインを無効にする

SSHサーバーを保護するもう1つの優れた方法は、パスワードログインを削除し、代わりにSSHキーを介したログインに移行します。 SSHキールートをたどると、SSHサーバーとキーを持つリモートマシンの間に信頼の輪ができます。暗号化されたパスワードファイルであり、解読が困難です。

サーバーでSSHキーを使用してセットアップします。キーをセットアップしたら、ターミナルを開き、SSH構成ファイルを開きます。

su -

または

sudo -s

次に、Nanoで次の設定を開きます。

nano /etc/ssh/sshd_config

デフォルトでは、SSHサーバーはユーザーのパスワード。安全なパスワードを持っている場合、これは良い方法ですが、信頼されたマシンで暗号化されたSSHキーはより速く、より便利で、安全です。 「パスワードなしログイン」への移行を完了するには、SSH構成ファイルを確認します。このファイル内でスクロールして、「PasswordAuthentication」というエントリを見つけます。

「PasswordAuthentication」の前にある#記号を削除し、「no」という単語が前にあることを確認します。すべてが正常に見える場合は、を押して編集内容をSSH構成に保存します Ctrl + O キーボードで。

設定を保存したら、Nanoを閉じます Ctrl + X、SSHDを再起動して変更を適用します。

systemctl restart sshd

systemdを使用しない場合は、代わりに次のコマンドを使用してSSHを再起動してください。

service ssh restart

次回、リモートマシンがこのSSHサーバーにログインしようとすると、正しいキーをチェックし、パスワードなしでそれらを許可します。

ルートアカウントを無効にする

SSHサーバーでルートアカウントを無効にするには権限のないユーザーがSSH経由でアクセスした場合に発生する可能性のある損害を軽減する方法。ルートアカウントを無効にするには、SSHサーバー上の少なくとも1人のユーザーがsudo経由でルートを取得できることが必須です。これにより、必要に応じて、ルートパスワードなしでシステムレベルのアクセスを取得できます。

注:sudoを介してRoot特権にアクセスできるユーザーが安全なパスワードを持っているか、スーパーユーザーアカウントを無効にすることは無意味であることを確認してください。

ルートを無効にするには、端末をスーパーユーザー特権に昇格させます。

sudo -s

sudo -sを使用すると、ログインする必要がなくなります 、代わりにsudoersファイルを介してルートシェルを付与します。シェルにスーパーユーザーアクセスができたので、 パスワード コマンドを実行し、ルートアカウントをスクランブルします -ロック.

passwd --lock root

上記のコマンドを実行すると、ルートアカウントのパスワードがスクランブルされ、 不可能です。これ以降、ユーザーはローカルユーザーとしてのみSSHでログインし、sudo権限を介してルートアカウントに切り替えることができます。

コメント