# 🔐 آموزش نصب و پیکربندی CSF (ConfigServer Security & Firewall) در لینوکس
**Install and Configure CSF Firewall on Linux Servers**
---
## ❓ CSF چیست؟
**CSF** مخفف **ConfigServer Security & Firewall** است. این ابزار یک فایروال پیشرفته و اسکریپت امنیتی برای لینوکس است که بر پایهی `iptables` توسعه یافته و امکانات بیشتری برای کنترل امنیت سرور و مدیریت دسترسیها در اختیار مدیر سرور قرار میدهد.
CSF بیشتر در سرورهای **cPanel/WHM، DirectAdmin** و همچنین **سرورهای مستقل (standalone)** مورد استفاده قرار میگیرد.
---
## 🎯 قابلیتهای کلیدی CSF
* رابط وب در cPanel/WHM یا DirectAdmin
* محافظت در برابر حملات Brute Force (از طریق LFD)
* مدیریت آسان پورتها، IPها و اتصالها
* کنترل لیستهای سفید و سیاه
* گزارشدهی و هشدارهای امنیتی
* قابلیت محدودسازی کاربران خاص (کاربران SSH و غیره)
---
## 🛠️ پیشنیازها
* سرور لینوکس (CentOS, RHEL, Debian, Ubuntu)
* دسترسی ریشه (Root)
* نصب بودن Perl و iptables
---
## ⚙️ مراحل نصب CSF در لینوکس
### 1. دانلود و نصب
```bash
cd /usr/src
sudo apt install perl libio-socket-ssl-perl libnet-libidn-perl libio-socket-inet6-perl libsocket6-perl -y # در دبیان/اوبونتو
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sudo sh install.sh
```
### 2. تست وابستگیها
```bash
sudo perl /usr/local/csf/bin/csftest.pl
```
> اگر پیام “*TESTING PASSED OK*” را دیدید یعنی نصب موفق بوده است.
---
## 🔧 پیکربندی اولیه CSF
فایل پیکربندی اصلی:
```
/etc/csf/csf.conf
```
مقدار زیر را از حالت تست خارج کنید:
```
TESTING = "1" → به "0" تغییر دهید
```
سپس برای اعمال تنظیمات:
```bash
sudo csf -r
```
---
## ✅ دستورات مهم CSF
| دستور | توضیح |
| ------------ | -------------------------- |
| `csf -e` | فعالسازی فایروال |
| `csf -x` | غیرفعالسازی فایروال |
| `csf -r` | راهاندازی مجدد |
| `csf -l` | مشاهده پورتهای باز |
| `csf -g IP` | بررسی وضعیت IP |
| `csf -d IP` | مسدودسازی IP |
| `csf -dr IP` | حذف IP از لیست سیاه |
| `csf -a IP` | اضافه کردن IP به لیست سفید |
---
## 🧰 مدیریت پورتها در CSF
در فایل `/etc/csf/csf.conf` تنظیمات زیر را برای مدیریت پورتها تغییر دهید:
```bash
TCP_IN = "22,80,443"
TCP_OUT = "22,80,443"
```
بعد از هر تغییر:
```bash
sudo csf -r
```
---
## 🔍 فعالسازی LFD (Login Failure Daemon)
`LFD` بهصورت خودکار با نصب CSF فعال میشود و وظیفه مانیتورینگ لاگینهای مشکوک را دارد. فایل تنظیمات آن:
```
/etc/csf/csf.conf
```
میتوانید هشدارهای ایمیلی، بلاک خودکار IP بعد از چند تلاش ناموفق، و تنظیمات دیگر را مدیریت کنید.
---
## 💡 نکات امنیتی پیشنهادی
* حتماً پورت SSH را در لیست پورتهای باز قرار دهید.
* IP خود را در لیست سفید `/etc/csf/csf.allow` اضافه کنید تا در صورت اشتباه خودتان را بلاک نکنید.
* استفاده از `LFD` برای شناسایی حملات brute-force بسیار مؤثر است.
* با رابط گرافیکی در cPanel یا DirectAdmin، مدیریت آسانتری دارید.
---
## 📝 نتیجهگیری
CSF یکی از قدرتمندترین ابزارهای امنیتی برای سرورهای لینوکس است که با امکانات فراوان و واسط ساده، یک لایهی امنیتی محکم برای سرور شما ایجاد میکند. این فایروال مخصوصاً برای **مدیران سرور با دسترسی ریشه (Root)** توصیه میشود.