侵入検知システム (IDS) を使用して CentOS サーバーを不正アクセスから保護する方法
はじめに: サーバー管理者として、サーバーを不正アクセスから保護することは非常に重要なタスクです。侵入検知システム (IDS) は、この目標の達成に役立ちます。この記事では、一般的に使用される IDS ツールである Snort を CentOS サーバーにインストールして構成し、サーバーを不正アクセスから保護する方法を紹介します。
1. Snort のインストール
- サーバー ソフトウェア パッケージの更新
ターミナルで次のコマンドを実行してソフトウェア パッケージを更新します:
- 依存関係のインストール
Snort をインストールするには、いくつかの依存関係が必要です。ターミナルで次のコマンドを実行して、これらの依存関係をインストールします。
sudo yum install libpcap-devel pcre-devel libdnet-devel
ログイン後にコピー
- Snort をダウンロードしてコンパイルします
最新の Snort ソース コードをダウンロードし、ダウンロードしたファイルを解凍します:
wget https://www.snort.org/downloads/snort/snort-2.9.17.tar.gz
tar -xzf snort-2.9.17.tar.gz
ログイン後にコピー
解凍したディレクトリに移動し、Snort をコンパイルしてインストールします:
cd snort-2.9.17
./configure --enable-sourcefire
make
sudo make install
ログイン後にコピー
2. Snort を設定します
- Snort 設定ファイルを作成します
# #ターミナルで次のコマンドを実行して Snort 構成ファイルを作成します:
sudo cp /usr/local/src/snort-2.9.17/etc/*.conf* /usr/local/etc/
sudo cp /usr/local/src/snort-2.9.17/etc/*.map /usr/local/etc/
ログイン後にコピー
Snort 構成ファイルを編集します
テキスト エディターを使用して Snort 構成ファイルを編集用に開きます:
sudo nano /usr/local/etc/snort.conf
ログイン後にコピー
設定ファイルでは、監視したいネットワークインターフェースやルールファイルの場所などを設定できます。
たとえば、次を編集して eth0 インターフェイス上のすべてのトラフィックを監視できます:
# 配置监控的网络接口
config interface: eth0
# 配置规则文件的位置
include $RULE_PATH/rules/*.rules
ログイン後にコピー
さらに、Snort の他の構成は実際のニーズに応じて調整できます。
設定ルール ファイル
Snort はルール ファイルを使用して、潜在的な侵入を検出し、ブロックします。 Snort 公式 Web サイトから最新のルール ファイルをダウンロードし、ルール ファイル ディレクトリに配置できます。
デフォルトでは、Snort ルール ファイル ディレクトリは /usr/local/etc/rules です。このディレクトリの場所は Snort 構成ファイルで表示および変更できます。
たとえば、次を編集してルール ファイル ディレクトリを /usr/local/etc/rules として指定できます:
# 配置规则文件的位置
RULE_PATH /usr/local/etc/rules
ログイン後にコピー
Snort の開始
In ターミナルで次のコマンドを実行して Snort を開始します。
sudo snort -A console -c /usr/local/etc/snort.conf -i eth0
ログイン後にコピー
これにより、Snort がコンソール モードで開始され、eth0 インターフェイス上のトラフィックが監視されます。
3. Snort を使用して不正アクセスを検出し、防止します
モニタリング ログ
Snort は検出した内容を Snort ログ ファイルに記録しますあらゆる潜在的な侵入。 Snort 構成ファイル内のこのログ ファイルの場所を表示および変更できます。
たとえば、次のコードを編集して、ログ ファイルの場所を /var/log/snort/alert.log として指定できます:
# 配置日志文件的位置
output alert_syslog: LOG_AUTH LOG_ALERT
output alert_fast: alert
output alert_full: alert.log
# 配置日志文件的位置
config detection: search-method ac-split
config detection: ac-logdir /var/log/snort
ログイン後にコピー
ブロックされた IP
IP アドレスが不正アクセスを受けていることが判明した場合は、Snort のブロック機能を使用して、その IP アドレスへのさらなるアクセスをブロックできます。
ターミナルで次のコマンドを実行して、特定の IP アドレスをブロックします:
sudo snort -A console -c /usr/local/etc/snort.conf -i eth0 --block -O
ログイン後にコピー
カスタム ルールを作成します
特定のニーズがある場合は、特定の侵入を検出してブロックするカスタム Snort ルールを作成できます。
たとえば、次は SSH 経由の不正アクセスを検出するための簡単なカスタム ルールです:
# 检测通过SSH进行的未经授权访问
alert tcp $HOME_NET any -> $EXTERNAL_NET 22 (msg:"Unauthorized SSH Access"; flow:to_server,established; content:"SSH"; classtype:suspicious-login; sid:100001; rev:1;)
ログイン後にコピー
テキスト エディターを使用してルール ファイルを開き、ファイルの最後にカスタム ルールを追加します。
ルールの更新-
Snort のルール ベースは積極的に更新されます。ルールを定期的に更新すると、Snort が常に最新の侵入検知機能を利用できるようになります。
最新のルール ファイルを Snort 公式 Web サイトからダウンロードし、ルール ファイル ディレクトリに配置できます。
5. 結論
Snort などの侵入検知システム (IDS) を使用すると、CentOS サーバーを不正アクセスから保護できます。この記事では、Snort のインストールと構成を例として、IDS を使用して潜在的な侵入を監視および防止する方法を詳しく紹介します。上記の手順に従い、実際のニーズに基づいて適切に構成することで、サーバーのセキュリティを強化し、潜在的なリスクを軽減できます。
注: この記事では、Snort を侵入検知システムとして使用する方法を簡単に紹介するだけであり、その原理やすべての構成オプションを詳細に説明するものではありません。より深い理解とさらなる探索のために、Snort の公式ドキュメントまたはその他の関連資料を参照することをお勧めします。
この記事があなたのお役に立てば幸いです。また、あなたのサーバーが安全で安心できることを願っています。
以上が侵入検知システム (IDS) を使用して CentOS サーバーを不正アクセスから保護する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。