قوانین کاربردی برای پیکربندی و مدیریت FirewallD در لینوکس پرینت


## ✅ مقدمه

`FirewallD` یک ابزار قدرتمند مدیریت فایروال در لینوکس است که به‌صورت **داینامیک** عمل کرده و به شما این امکان را می‌دهد که بدون ری‌استارت فایروال، قوانین را اعمال یا حذف کنید. در این مقاله، مجموعه‌ای از **دستورات و قوانین مهم، پرکاربرد و مفید** برای مدیریت امنیت سرور را ارائه می‌دهیم.

---

## 🧰 بررسی وضعیت و اطلاعات اولیه

```bash
sudo firewall-cmd --state # بررسی فعال بودن فایروال
sudo firewall-cmd --get-default-zone # نمایش zone پیش‌فرض
sudo firewall-cmd --list-all # نمایش سرویس‌ها و قوانین فعال در zone فعلی
sudo firewall-cmd --list-all-zones # لیست همه zoneها و تنظیمات آن‌ها
```

---

## 🌐 قوانین پایه برای مدیریت دسترسی

### 1. **اجازه به پورت یا سرویس خاص**

```bash
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
```

### 2. **حذف دسترسی به پورت یا سرویس**

```bash
sudo firewall-cmd --permanent --remove-port=8080/tcp
sudo firewall-cmd --permanent --remove-service=http
sudo firewall-cmd --reload
```

---

## 🧱 نمونه‌های مهم سرویس‌ها

| سرویس | توضیح |
| -------------- | ----------------------------- |
| `ssh` | برای اتصال امن از راه دور |
| `http` | پورت 80 – برای وب سرور |
| `https` | پورت 443 – برای ارتباط امن وب |
| `dns` | برای سرویس نام دامنه |
| `smtp` | ارسال ایمیل |
| `pop3`, `imap` | دریافت ایمیل |

---

## 🧠 قوانین پیشرفته (Rich Rules)

### 3. **محدود کردن دسترسی SSH فقط از IP خاص**

```bash
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.0.100" service name="ssh" accept'
```

### 4. **رد کردن تمام ترافیک از یک IP مشکوک**

```bash
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="203.0.113.45" drop'
```

### 5. **بستن دسترسی به یک پورت خاص برای کل اینترنت**

```bash
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" port port="3306" protocol="tcp" reject'
```

---

## 🔁 تغییر zone ها

### 6. **تغییر zone پیش‌فرض**

```bash
sudo firewall-cmd --set-default-zone=home
```

### 7. **تعیین zone برای یک رابط شبکه (interface)**

```bash
sudo firewall-cmd --permanent --zone=trusted --change-interface=eth1
sudo firewall-cmd --reload
```

---

## 🔐 بلاک کردن همه چیز و فقط اجازه دادن به موارد خاص

```bash
sudo firewall-cmd --permanent --set-default-zone=drop
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 service name=ssh accept'
sudo firewall-cmd --reload
```

---

## 🧪 تست سریع دستورات (بدون دائمی‌سازی)

```bash
sudo firewall-cmd --add-service=http # فقط تا ری‌استارت بعدی
sudo firewall-cmd --runtime-to-permanent # اعمال قوانین فعلی به صورت دائمی
```

---

## 🧼 حذف قوانین اضافی

```bash
sudo firewall-cmd --permanent --remove-service=ftp
sudo firewall-cmd --permanent --remove-port=9000/tcp
sudo firewall-cmd --reload
```

---

## 🎯 نتیجه‌گیری

با استفاده از قوانین معرفی‌شده در این مقاله می‌توانید به‌صورت کامل و حرفه‌ای امنیت سیستم لینوکسی خود را مدیریت و کنترل کنید. ترکیب **سرویس‌ها، پورت‌ها، rich rules و zoneها** یک ساختار قدرتمند و قابل تنظیم برای کنترل ترافیک ورودی و خروجی فراهم می‌کند.

 


آیا این پاسخ به شما کمک کرد؟

  • 0
« برگشت