サーバー構築で設定するべき SSH セキュリティ対策(初心者向け)

サーバー構築

Linux サーバーを構築する第一歩は、SSH の接続設定です。
不正アクセスを防ぐため、セキュリティを高める設定を行いましょう。

  • ポート番号の変更
  • root ユーザのログイン制限
  • 公開鍵認証の設定

について解説します。



SSH ポート番号を変えて不正アクセスを防止

SSH では「22番ポート」が初期値となっています。
22番をそのまま使用していると、不正ログインを狙ったアクセスが続々と届きます。

SSH で使用するポートは「22番」以外に変えることをオススメします。
初期設定と異なるポートにすることで、不正アクセスをある程度軽減できます。

 
不特定多数を狙った不正アクセスを防ぐには有効ですが、
自分のサーバーを直接狙い撃ちされた場合は効果のない対策です。

「ポートスキャン」と呼ばれる手法を使われた場合は、防ぐことができません。
あくまでも「軽減策」として、ポート番号の変更を推奨します。

 
一方で、設定を誤るとサーバーにログインできなくなる恐れもあります。
なるべくサーバー構築の早い段階で設定しておきましょう。

rootユーザでログインできないようにする

root ユーザは、サーバーの全権限を持った管理者ユーザです。
この root では SSH ログインできないように設定しましょう。

サーバー上での作業時も、root ユーザの使用は最小限に抑えます。
通常作業用のユーザを新しく作っておくことが大切です。

 
Linux では、サーバーにログインした後でも使用ユーザーを切り替えられます。
管理者権限が必要なタイミングのみ root に切り替える方法が一般的です。

Linux ユーザの作成方法や、root ユーザへの切り替え許可設定、
Linux の権限に関する知識を身に着けることができます。

前述のポート設定と同様に、なるべく早い段階で対応しておきましょう。

パスワード認証ではなく公開鍵認証に変更する

SSH 接続時の認証方法には大きく3つの方法があります。
セキュリティレベルを高めるためには、公開鍵認証を使用しましょう。

パスワード認証

SSH ログイン時にパスワードを入力する方式です。
ネットワーク上にパスワードが流れるため、セキュリティ面では他の2つより劣ります。

チャレンジレスポンス認証

生のパスワードを送らずに済む仕組みとなっており、安全度が高い認証方式です。
サーバーとクライアントの両方が対応している必要があります。

公開鍵認証

公開鍵と秘密鍵とよばれる、2つの「鍵」を組み合わせた認証方式です。
事前に設定しておいた「鍵」を持っている人以外はログインできません。

パスワードやチャレンジレスポンスよりも安全性が高い方式です。

まとめ

サーバー構築時に重要となる「SSH」の設定を解説しました。

環境にもよりますが、初期状態のまま利用することは避けましょう。
サーバーを構築する際は、まず SSH 設定を見直すことが肝心です。

セキュリティ対策については、以下の記事も合わせて参照ください。

【関連記事】
Web サイトの不正アクセス対策
CentOS ログイン履歴の確認方法
サポート切れサーバーの危険性とは
エックスサーバーのセキュリティ強化