GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 7にCSF(Config Server Firewall)をインストールして構成する方法

構成サーバーファイアウォール/CSF Linuxサーバー用のファイアウォールアプリケーションスイートです。 CSFは、SSH、SMTP、IMAP、Pop3、「su」コマンドなどのアプリケーションのログイン/侵入検知でもあります。 CSFは例えば誰かがSSH経由でサーバーにログインしていることを検出し、このユーザーがサーバーで「su」コマンドを使用してより高い特権を取得しようとすると警告します。また、メールサーバー(Exim、IMAP、Dovecot、uw-imap、Kerio)、OpenSSHサーバー、Ftpサーバー(Pure-ftpd、vsftpd、Proftpd)、cPanelサーバーでのログイン認証の失敗をチェックして、fail2banなどのソフトウェアを置き換えます。 CSFは、サーバーをホストするための優れたセキュリティソリューションであり、WHM / cPanel、DirectAdmin、およびWebminのユーザーインターフェイス(UI)に統合できます。

前提条件
  • CentOS 7(私のサーバーはIP 192.168.1.101を使用しています)。
  • root権限。

このチュートリアルで行うこと:

  • CSFの依存関係をインストールします。
  • CSFをインストールします。
  • CSFを構成します。
  • 基本的なCSFコマンド。
  • 詳細設定。
ステップ1-CFS依存関係のインストール

CSFはPerlに基づいています したがって、最初にサーバーにPerlをインストールする必要があります。 wgetが必要です CSFインストーラーとvimをダウンロードするには (または選択したエディター)CSF構成ファイルを編集します。 yumコマンドを使用してパッケージをインストールします:

 yum install wget vim perl-libwww-perl.noarch perl-Time-HiRes 
ステップ2-CSFをインストールする

"/ usr / src /"にアクセスしてください ディレクトリを作成し、wgetコマンドでCSFをダウンロードします。

 cd / usr / src / 
wget https://download.configserver.com/csf.tgz

tar.gzファイルを抽出し、csfディレクトリに移動して、インストールします。

 tar -xzf csf.tgz 
cd csf
sh install.sh

最後にCSFのインストールが完了したという情報を取得する必要があります。

ここで、CSGがこのサーバーで実際に機能することを確認する必要があります。 "/ usr / local / csf / bin /"に移動します ディレクトリを作成し、 "csftest.pl"を実行します。 。

 cd / usr / local / csf / bin / 
perl csftest.pl

以下に示すようなテスト結果が表示された場合、CSFはサーバー上で問題なく実行されています:

結果:csfはこのサーバーで機能する必要があります

ステップ3-CentOS7でCSFを構成する

CSF構成プロセスに入る前に、最初に知っておく必要があるのは、「CentOS7」には「firewalld」と呼ばれるデフォルトのファイアウォールアプリケーションがあることです。 Firewalldを停止し、スタートアップから削除する必要があります。

Firewalldを停止します:

 systemctl stop Firewalld 

スタートアップからfirewalldを無効/削除します:

 systemctl disable Firewalld 

次に、CSF構成ディレクトリに移動します。 "/ etc / csf /" ファイルを編集します"csf.conf" vimエディターで:

 cd / etc / csf / 
vim csf.conf

11行目を変更します 「テスト」 "0" ファイアウォール構成を適用するため。

 TESTING ="0" 

デフォルトでは、CSFはSSH標準ポート22の着信トラフィックと発信トラフィックを許可します。別のSSHポートを使用する場合は、139行目の構成にポートを追加してください。 "TCP_IN"

次に、systemctlコマンドを使用してCSFとLFDを起動します。

 systemctl start csf 
systemctl start lfd

次に、起動時にcsfおよびlfdサービスを開始できるようにします。

 systemctl enable csf 
systemctl enable lfd

これで、次のコマンドを使用してCSFのデフォルトルールのリストを確認できます。

 csf -l <​​/ pre> ステップ4-基本的なCSFコマンド 

1.ファイアウォールを開始します(ファイアウォールルールを有効にします):

 csf -s 

2.ファイアウォールルールをフラッシュ/停止します。

 csf -f 

3.ファイアウォールルールをリロードします。

 csf -r 

4. IPを許可し、csf.allowに追加します。

 csf -a 192.168.1.109 

結果:

csf.allowとiptablesに192.168.1.109を追加するACCEPT...
ACCEPT all opt --in!lo out * 192.168.1.109-> 0.0.0.0/0
ACCEPT all opt- in * out!lo 0.0.0.0/0-> 192.168.1.109

5.csf.allowからIPを削除して削除します。

 csf -ar 192.168.1.109 

結果:

ルールを削除しています...
ACCEPT all opt --in!lo out * 192.168.1.109-> 0.0.0.0/0
ACCEPT all opt --in * out!lo 0.0.0.0/ 0-> 192.168.1.109

6. IPを拒否し、csf.denyに追加します:

 csf -d 192.168.1.109 

結果:

192.168.1.109をcsf.denyとiptablesDROPに追加しています...
DROP all opt --in!lo out * 192.168.1.109-> 0.0.0.0/0
LOGDROPOUT all opt- in * out!lo 0.0.0.0/0-> 192.168.1.109

7.csf.denyからIPを削除して削除します。

 csf -dr 192.168.1.109 

結果:

ルールを削除しています...
DROP all opt --in!lo out * 192.168.1.109-> 0.0.0.0/0
LOGDROPOUT all opt --in * out!lo 0.0.0.0/ 0-> 192.168.1.109

8.csf.denyからすべてのエントリを削除してブロックを解除します。

 csf -df 

結果:

 DROP all opt --in!lo out * 192.168.1.110-> 0.0.0.0/0 
LOGDROPOUT all opt --in * out!lo 0.0.0.0/0-> 192.168.1.110
DROP all opt --in!lo out * 192.168.1.111-> 0.0.0.0/0
LOGDROPOUT all opt --in * out!lo 0.0.0.0/0-> 192.168.1.111
csf :csf.denyから削除されたすべてのエントリ

9. iptablesでパターン一致を検索します(例:IP、CIDR、ポート番号

 csf -g 192.168.1.110 

ステップ5-詳細設定

CSFに関するいくつかの調整がありますので、必要に応じて構成できます。

csf構成ディレクトリに戻り、csf.conf構成ファイルを編集します。

 cd / etc / csf / 
vim csf.conf

1.csf.allowファイルにあるIPアドレスをブロックしないでください。

デフォルトでは、lfdはcsf.allowファイルの下のIPもブロックするため、csf.allowファイル内のIPがlfdによってブロックされないようにする場合は、行272に移動してください。 "IGNORE_ALLOW"を変更します "1" 。これは、自宅またはオフィスに静的IPがあり、IPがインターネットサーバーのファイアウォールによってブロックされないようにする場合に便利です。

 IGNORE_ALLOW ="1" 

2.着信および発信ICMPを許可します。

着信ping/ICMPの行152に移動します:

 ICMP_IN ="1" 

また、発信ping ping / ICMPの159行目:

 ICMP_OUT ="1" 

3.特定の国をブロックする

CSFは、 CIDRを使用して国ごとにアクセスを許可および拒否するオプションを提供します (国コード)。 行836に移動します 許可および拒否される国コードを追加します:

 CC_DENY ="CN、UK、US" 
CC_ALLOW ="ID、MY、DE"

4.SuおよびSSHログインログを電子メールで送信します。

LFDが「SSHログイン」に関するメールを送信するために使用するメールアドレスを設定できます "su"を実行するイベントとユーザー コマンド、行 1069に移動します 値を「1」に変更します。

 LF_SSH_EMAIL_ALERT ="1" 

...

LF_SU_EMAIL_ALERT ="1"

次に、使用するメールアドレスを588行目で定義します。 。

 LF_ALERT_TO ="[email protected]" 

さらに微調整が必​​要な場合は、 "/ etc / csf / csf.conf"のオプションをお読みください 構成ファイル。

結論

CSFは、Linuxサーバー用に提供されているiptables用のアプリケーションベースのファイアウォールです。 CSFには多くの機能があり、cPanel / WHM、DirectAdmin、WebminなどのWebベースの管理ツールをサポートできます。 CSFはサーバーへのインストールと使用が簡単で、システム管理者のセキュリティ管理が容易になります。


Cent OS
  1. CentOS8にGitlabをインストールして構成する方法

  2. Ubuntu 20.04 LTSにCSF(Config Server Firewall)をインストールして構成する

  3. Centos8にPostgres13をインストールして設定する方法

  1. CentOS7にVNCをインストールして設定する方法

  2. CentOS8にNFSサーバーをインストールして構成する方法

  3. CentOS8にVNCをインストールして設定する方法

  1. CentOS7サーバーにFreeIPAをインストールして構成する方法

  2. CentOS8にPostfixメールサーバーをインストールして設定する方法

  3. CentOS8にVNCサーバーをインストールして構成する方法