آموزش راه‌اندازی فایروال در لینوکس با iptables – گام به گام پرینت


## 🔥 آموزش راه‌اندازی فایروال در لینوکس با iptables – گام به گام

`iptables` یکی از قوی‌ترین ابزارهای خط فرمان برای **ایجاد و مدیریت فایروال در لینوکس** است. در این راهنما، از اصول پایه تا پیکربندی عملی یک فایروال ایمن را با هم طی خواهیم کرد.

---

## 🧱 مرحله ۱: آشنایی با مفاهیم اولیه

قبل از راه‌اندازی، باید با چند اصطلاح مهم آشنا شوید:

### زنجیره‌های اصلی (Chains):

| زنجیره | توضیح |
| --------- | ------------------------------------------------- |
| `INPUT` | بسته‌هایی که به سیستم وارد می‌شوند |
| `OUTPUT` | بسته‌هایی که از سیستم خارج می‌شوند |
| `FORWARD` | بسته‌هایی که از سیستم عبور می‌کنند (در حالت روتر) |

### سیاست‌ها (Policies):

سیاست پیش‌فرض هر زنجیره می‌تواند یکی از موارد زیر باشد:

* `ACCEPT`: قبول همه
* `DROP`: رد همه
* `REJECT`: رد با پیام بازگشتی

---

## ⚙️ مرحله ۲: پاک‌سازی قوانین پیشین

برای اطمینان از شروع از پایه:

```bash
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
```

---

## 🚧 مرحله ۳: تعیین سیاست‌های پیش‌فرض

```bash
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
```

توضیح:

* تمام ورودی‌ها و فوروادها را مسدود می‌کنیم.
* خروجی‌ها مجاز هستند (برای نصب بسته‌ها، آپدیت، و غیره).

---

## ✅ مرحله ۴: اجازه‌دادن به ترافیک مجاز

### اجازه به ارتباطات موجود و مرتبط:

```bash
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
```

### اجازه به پورت لوکال (localhost):

```bash
sudo iptables -A INPUT -i lo -j ACCEPT
```

### اجازه به SSH (مدیریت از راه دور):

```bash
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
```

### اجازه به HTTP و HTTPS:

```bash
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
```

---

## 🧪 مرحله ۵: مشاهده و بررسی قوانین

```bash
sudo iptables -L -v --line-numbers
```

---

## 💾 مرحله ۶: ذخیره‌سازی پیکربندی

### در Debian/Ubuntu:

```bash
sudo apt install iptables-persistent
sudo netfilter-persistent save
```

### در CentOS/RHEL:

```bash
sudo yum install iptables-services
sudo service iptables save
```

یا:

```bash
sudo iptables-save > /etc/sysconfig/iptables
```

---

## 🔁 مرحله ۷: بازنشانی خودکار در بوت

### Debian/Ubuntu:

```bash
sudo systemctl enable netfilter-persistent
```

### CentOS/RHEL:

```bash
sudo systemctl enable iptables
```

---

## 🧱 مثال: راه‌اندازی فایروال ایمن فقط با دسترسی SSH و وب

```bash
sudo iptables -F
sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT ACCEPT
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
```

---

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

با راه‌اندازی صحیح `iptables`، می‌توانید امنیت سیستم لینوکسی خود را به طور چشمگیری افزایش دهید. این ابزار دقیق، انعطاف‌پذیر و قدرتمند است؛ اما باید با دقت پیکربندی شود تا دسترسی‌های حیاتی مثل SSH از بین نرود.

 


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

  • 0
« برگشت