サーバーを不要なアクセスから保護することは非常に重要です。特に特定の国からのトラフィックをブロックする場合はなおさらです。WHM/cPanel内でCSFを設定するのは実際には少し面倒ですが、すべての点をきちんと理解していれば問題なく動作します。ブロックした国からのトラフィックがまだ漏れ込んでいる場合は、国コードが正しく設定されていないか、CSFでルールを再読み込みする必要がある可能性があります。

作業を始める前に、WHMの管理者権限があること、そしてCSFがインストールされていることを確認してください。まだインストールされていない場合は、CSFのドキュメントでインストール手順を説明しています。通常は、コマンドラインからインストーラスクリプトを実行するだけで完了します。

ステップ1: CSF構成にアクセスする

まず、WHMにログインします。いつものやり方です。

  1. プラグインをクリックします。
  2. 次に、「ConfigServer Security & Firewall」をクリックします。

中に入ったら、 「ファイアウォール設定」というボタンまたはリンクを探します。WHMのバージョンによってレイアウトが多少異なる場合がありますが、通常はすぐに見つけることができます。

ステップ2: ファイアウォールの設定を開く

CSFの設定タブで、かなり下にスクロールして「国コードリストと設定」というセクションを見つけてください。オプションの海に隠れているので、探すのに苦労しても心配はいりません。

ステップ3: 国コードを管理する

ここから少し奇妙な話になります。国全体をブロックできない主な理由は、国コードリストが正しく設定されていないためです。「CC拒否リスト」フィールドを探してください。そこに、ブロックしたい国のコードを入力します。例えば:

  • CN(中国)
  • RU(ロシア)
  • PL(ポーランド)

カンマで区切ってください。典型的な入力例は のようになりますRU, PL。注意点として、国コードは大文字で、正確に入力する必要があります。そうでない場合、CSF は国コードを無視します。奇妙なことに、設定によっては、変更を有効にするためにファイアウォールやサーバーの再起動が必要になる場合があります。

プロのヒント: IANAリストの国コードを必ず再確認してください。うまく動作しない場合は、間違ったコードを使用している可能性があります。

ステップ4: 変更を保存する

リストが完成したら、一番下までスクロールして「変更」(またはWHMのバージョンによっては「保存」)ボタンをクリックし、「CSF + LFDを再起動」をクリックします。これにより、すべての設定が再読み込みされ、ブロックルールが適用されます。特にクラウドやVPS環境では、この手順に少し時間がかかる場合があります。サーバーによっては、ルールを適用するためにサーバー自体を再起動する必要がある場合もあります。

ステップ5: ブロックをテストする

本当に動作するか確認したい場合は、VPNを使用して、ブロックされている国のIPアドレスからサイトに接続してください。または、CSFログを確認してください。CSFログは通常、 WHMのCSFログタブ/var/log/messagesに保存されているか、そこからアクセスできます。

CDNキャッシュやプロキシを使用しているウェブサイトは、テストに支障をきたす場合があります。ブロックされている国からのトラフィックが通過しているのが見られる場合もありますが、これは多くの場合、IPアドレスの位置情報が正しく取得されていないか、CSFがルールを完全に適用していないことが原因です。このような場合は、数分待つか、ファイアウォールを再起動してください。もちろん、位置情報は100%正確ではないため、例外的なケースも存在します。

追加のヒントとよくある問題

注意:ブロックが機能しない場合は、CSFがデフォルトの位置情報サービス(LSMまたはMaxMind)を使用しているかどうかを確認してください。IPデータベースが古くなったり、設定が誤っていたりすると、誤検知につながる場合があります。MaxMindのデータベースを更新すると、以下の問題が解決する場合があります。

cd /var/lib/csf perl -MCPAN -e shell install Geo::IP::PurePerl (sometimes needed) # Or just update the database if out of date perl /usr/local/csf/bin/CSFInstall.pl

ええ、ある設定ではすぐに動作しましたが、別の設定ではサーバーを再起動したり、少し待ったりする必要がありました。Windows/Linuxでは、当然ながら必要以上に難しくなってしまうからです。

結論

WHM/cPanel内でCSFの国をブロックするのは、設定ファイルの使い方に慣れれば難しくありません。国コードを再度確認し、ファイアウォールを再起動し、VPN経由でテストすることを忘れないでください。位置情報に基づくブロックは万全ではありませんが、多くの悪質なトラフィックを除外できます。

よくある質問

国コードを見つけるにはどうすればいいですか?

IANA ISO 3166 リストを確認してください。これはほぼ必須です。サーバーの位置情報サービスでは異なるコードが使用される場合があるので、実際に使用されているコードを確認することをお勧めします。

コードを設定してもブロックが機能しない場合はどうなりますか?

VPNを使って、ブロックされている国の既知のIPアドレスからサイトにアクセスしてみてください。それでもアクセスが可能な場合は、csf -rコマンドでCSFを再起動するか、サーバーを再起動してください。コードに誤字やスペースがないか、もう一度確認してください。

代わりに特定の IP アドレスをブロックすることはできますか?

もちろんです。csf -d <IP>コマンドを使って素早くブロックするか、CSFインターフェースの拒否リストに追加してください。特定の地域からのIPアドレスを大量に扱う場合は、国別ブロックを使用すると、プロセス全体を自動化できます。

まとめ

  • CSF がインストールされ、実行されていることを確認します。
  • 設定でCC 拒否リストを見つけます。
  • 国コードをカンマで区切って入力します。
  • CSF を保存して再起動します。
  • VPN でテストするか、ログを確認します。

これで誰かの時間短縮になれば嬉しいです。複数のマシンで動作したので、少しでもお役に立てれば幸いです。