ウェブサイト検索

CentOS 7 で OpenSSH を有効にするをインストールする方法


CentOS 7 で OpenSSH を有効にしたい場合は、ここが正しい場所です。この記事では、CentOS 7 マシンに OpenSSH をインストールして有効にするために必要な手順を説明します。また、OpenSSH を使用する利点のいくつかと、ニーズに合わせて OpenSSH を構成する方法についても説明します。

OpenSSHとは何ですか?

OpenSSH は、ネットワーク上で 2 台のコンピュータ間に安全な接続を確立するために使用されるセキュア シェル プロトコルです。これは、サーバーやその他のネットワーク デバイスへの安全なリモート アクセスを提供するために広く使用されているセキュア シェル (SSH) プロトコルのオープンソース バージョンです。

OpenSSH は、クライアントとサーバー間で送信されるすべてのデータを暗号化することにより、リモート コンピューターに安全にアクセスする方法を提供します。これは、クライアントとサーバー間のすべての通信がプライベートであり、第三者が傍受できないことを意味します。

OpenSSH を使用する理由

OpenSSHを使用すると、次のようないくつかの利点があります-

  • セキュリティ − OpenSSH は強力な暗号化アルゴリズムを使用してデータを保護します。

  • リモート アクセス − OpenSSH を使用すると、リモート サーバーに安全にアクセスできます。

  • 移植性 − OpenSSH は幅広いオペレーティング システムで利用できるため、多用途のツールになります。

  • 認証 - OpenSSH は、リモート サーバーへの安全なアクセスを確保するための複数の認証方法を提供します。

CentOS 7 への OpenSSH のインストール

CentOS 7 で OpenSSH を有効にする前に、OpenSSH をインストールする必要があります。その方法は次のとおりです-

ステップ 1: システムを更新する

OpenSSH をインストールする前に、システムを更新して、最新のパッケージとセキュリティ アップデートが適用されていることを確認する必要があります。これを行うには、ターミナルを開いて次のコマンドを入力します-

sudo yum update

このコマンドは、システム上のすべてのパッケージを最新バージョンに更新します。

ステップ 2: OpenSSH をインストールする

システムが更新されたら、OpenSSH のインストールに進むことができます。 OpenSSHをインストールするには、次のコマンドを入力します-

sudo yum install openssh-server

このコマンドは、システムに OpenSSH サーバーをインストールします。

ステップ 3: OpenSSH サービスを開始する

OpenSSH がインストールされたので、受信接続を受け入れることができるように OpenSSH サービスを開始する必要があります。 OpenSSHサービスを開始するには、次のコマンドを入力します-

sudo systemctl start sshd

このコマンドは、システム上で OpenSSH サービスを開始します。

ステップ 4: OpenSSH を有効にする

最後に、システムを起動するたびに OpenSSH が自動的に開始されるように、OpenSSH を有効にする必要があります。これを行うには、次のコマンドを入力します-

sudo systemctl enable sshd

このコマンドは、システム上で OpenSSH サービスを有効にします。

OpenSSH の構成

OpenSSH がインストールされ有効になったので、ニーズに合わせて構成できます。ここでは、役立つかもしれないいくつかの構成オプションを示します-

ポートの変更

デフォルトでは、OpenSSH はポート 22 でリッスンします。ただし、セキュリティを強化するために、これを別のポートに変更することをお勧めします。これを行うには、SSH構成ファイルを開きます-

sudo vi /etc/ssh/sshd_config

#Port 22 という行を見つけて、目的のポートに変更します。たとえば、ポート 2222 に変更する場合は、次のように入力します-

Port 2222

ファイルを保存し、SSHサービスを再起動します-

sudo systemctl restart sshd

パスワード認証を無効にする

セキュリティを強化するもう 1 つの方法は、パスワード認証を無効にして、代わりに公開キー認証を使用することです。これを行うには、SSH構成ファイルを開きます-

sudo vi /etc/ssh/sshd_config

#PasswordAuthentication yes という行を見つけて、「PasswordAuthentication no」に変更します。次に、#PubkeyAuthentication yes という行を見つけて、#` 記号を削除してコメントを解除します。ファイルを保存し、SSHサービスを再起動します-

sudo systemctl restart sshd

ここで、SSH キー ペアを生成し、公開キーをサーバーに追加する必要があります。これは、ローカル マシンで ssh-keygen コマンドを使用して実行できます。

SSH アクセスの許可または制限

SSH アクセスを特定のユーザーまたは IP アドレスに制限したい場合があります。これを行うには、SSH 構成ファイルで、AllowUsers、DenyUsers、AllowGroups、および DenyGroups オプションを使用できます。たとえば、 jdoe という名前のユーザーにのみアクセスを許可するには、構成ファイルに次の行を追加します-

AllowUsers jdoe

jsmith という名前のユーザーへのアクセスを拒否するには、次の行を追加します-

DenyUsers jsmith

IP アドレスに基づいてアクセスを許可または拒否することもできます。たとえば、特定のIPアドレスからのアクセスのみを許可するには、次の行を追加します-

Match Address 192.168.1.100
    AllowUsers jdoe

これにより、ユーザー jdoe は IP アドレス 192.168.1.100 からサーバーにアクセスすることのみが許可されます。

強力なパスワードまたは公開キー認証を使用する

OpenSSH を設定するときは、強力なパスワードまたは公開キー認証を使用して、システムへの不正アクセスを防ぐことが重要です。簡単に推測できるパスワードの使用を避け、パスワード マネージャーを使用して強力なパスワードを生成および保存することを検討してください。

ファイアウォール ルールを使用してアクセスを制限する

セキュリティをさらに強化するには、ファイアウォール ルールを使用してシステムへのアクセスを制限します。たとえば、firewalld サービスを使用すると、明示的に許可した IP アドレスを除くすべての IP アドレスから SSH ポートへの受信接続をブロックできます。

ルートログインを無効にする

デフォルトでは、OpenSSH では SSH 経由の root ログインが許可されます。ただし、これを無効にして、代わりに通常のユーザー アカウントを使用することをお勧めします。 root ログインを無効にするには、SSH 構成ファイルを開き、PermitRootLogin yes という行を見つけます。これを PermitRootLogin no に変更し、SSH サービスを再起動します。

SSH ログを監視して不審なアクティビティがないか確認する

SSH ログを監視すると、不審なアクティビティや潜在的なセキュリティ侵害を検出するのに役立ちます。 journalctl や grep などのツールを使用して、失敗したログイン試行、異常なログイン パターン、悪意のあるアクティビティのその他の指標を検索できます。

OpenSSH を最新の状態に保つ

最後に、最新のセキュリティ パッチとアップデートを適用して OpenSSH を最新の状態に保つことが重要です。 CentOS 7 は yum パッケージ マネージャーを通じて定期的なアップデートを提供するため、システムの安全性を保つために sudo yum update を定期的に実行してください。

二要素認証を使用する

2 要素認証 (2FA) は、OpenSSH サーバーに追加の保護層を追加する強力なセキュリティ対策です。 2FA を有効にすると、ユーザーはシステムにアクセスするために、パスワードに加えてトークンや生体認証データなどの 2 番目の要素を提供する必要があります。これにより、攻撃者がユーザーのパスワードを入手した場合でも、サーバーに不正にアクセスすることが非常に困難になります。

パスフレーズを含む SSH キーを使用する

認証に SSH キーを使用する場合は、キーにパスフレーズを追加することをお勧めします。パスフレーズは、SSH キーの暗号化に使用される秘密のフレーズまたは文です。これにより、キーにセキュリティ層が追加され、攻撃者がキーを使用してサーバーに不正にアクセスすることが非常に困難になります。

ログイン試行の失敗回数を制限する

OpenSSH には、IP アドレスをブロックする前にログイン試行の失敗回数を制限するオプションが用意されています。これにより、ブルート フォース攻撃が防止され、攻撃者によるパスワードの推測が困難になります。これを設定するには、SSH構成ファイルを開いて次の行を追加します-

MaxAuthTries 3

これにより、IP アドレスがブロックされるまでのログイン試行の失敗回数が 3 回に制限されます。

Bastion ホストの使用を検討する

複数のサーバーを管理している場合は、要塞ホストを他のシステムへのゲートウェイとして使用することをお勧めします。要塞ホストは、ネットワークへの安全なエントリ ポイントを提供する専用サーバーです。要塞ホストを使用すると、ネットワークへのエントリ ポイントの数を制限し、不正アクセスのリスクを軽減できます。

アクセスログを定期的に確認する

最後に、アクセス ログを定期的に確認して、不審なアクティビティやセキュリティ侵害を検出することが重要です。ログを確認すると、アクティビティのパターンを特定し、潜在的なセキュリティ リスクを特定するのに役立ちます。ログは安全な場所に保管し、許可された担当者のみにアクセスを制限してください。

結論

CentOS 7 で OpenSSH を有効にするのは簡単なプロセスです。 OpenSSH をインストールすると、リモート サーバーにアクセスするための安全で多用途な方法が提供されます。ニーズに合わせて OpenSSH を構成することで、セキュリティをさらに強化し、承認されたユーザーのみがサーバーにアクセスできるようにすることができます。

最新のセキュリティ パッチでシステムを常に最新の状態に保ち、サーバーのセキュリティを確保する際のベスト プラクティスに従うことを忘れないでください。

関連記事: