TGViewer
TKC TKC @things_to_know_channel · 830 subscribers
Post #433 974
#linux_time
#security_time

🔥 فایروال لینوکس — قسمت ۳/۳
رسیدیم به firewalld.
اگر با:
Rocky Linux
RHEL
Fedora
CentOS
کار کرده باشی، احتمالاً firewalld را زیاد دیده‌ای.
اینجا هم مستقیم می‌ریم سراغ دستورها 👇
━━━━━━━━━━━━━━━━━━
🔥 وضعیت Firewall:
sudo firewall-cmd --state

🔎 Zoneهای فعال:
sudo firewall-cmd --get-active-zones

🔎 Zone پیش‌فرض:
sudo firewall-cmd --get-default-zone

🔎 همه تنظیمات Zone:
sudo firewall-cmd --list-all

━━━━━━━━━━━━━━━━━━
🟢 فعال کردن:
sudo systemctl enable --now firewalld

🔴 متوقف کردن:
sudo systemctl disable --now firewalld

━━━━━━━━━━━━━━━━━━
➕ باز کردن پورت:
sudo firewall-cmd \
--add-port=80/tcp \
--permanent

بعد:
sudo firewall-cmd --reload

➕ باز کردن SSH:
sudo firewall-cmd \
--add-service=ssh \
--permanent

sudo firewall-cmd --reload

🔎 سرویس‌های موجود:
sudo firewall-cmd --get-services

━━━━━━━━━━━━━━━━━━
❌ حذف پورت:
sudo firewall-cmd \
--remove-port=80/tcp \
--permanent

sudo firewall-cmd --reload

❌ حذف Service:
sudo firewall-cmd \
--remove-service=http \
--permanent

━━━━━━━━━━━━━━━━━━
🔎 دیدن Ruleهای فعلی:
sudo firewall-cmd --list-all

🔎 دیدن پورت‌ها:
sudo firewall-cmd --list-ports

🔎 دیدن Serviceها:
sudo firewall-cmd --list-services

━━━━━━━━━━━━━━━━━━
🔥 حالا قسمت جذاب:
RICH RULE
فرض کنیم Node Exporter روی پورت 9100 اجرا شده.
می‌خواهیم فقط Prometheus با IP زیر بتواند به آن دسترسی داشته باشد:
172.25.3.56

Rule:
sudo firewall-cmd --permanent \
--add-rich-rule='rule family="ipv4" \
source address="172.25.3.56" \
port port="9100" protocol="tcp" accept'

بعد:
sudo firewall-cmd --reload

🔎 بررسی:
sudo firewall-cmd --list-rich-rules

━━━━━━━━━━━━━━━━━━
❌ حالا می‌توانیم سایر دسترسی‌ها را Drop کنیم:
sudo firewall-cmd --permanent \
--add-rich-rule='rule family="ipv4" \
port port="9100" protocol="tcp" drop'

sudo firewall-cmd --reload

یعنی:
172.25.3.56 ───────► :9100 ✅

Other IPs ─────────► :9100 ❌

━━━━━━━━━━━━━━━━━━
❌ حذف Rich Rule:
اول Ruleها را ببین:
sudo firewall-cmd --list-rich-rules

بعد همان Rule را با --remove-rich-rule حذف کن:
sudo firewall-cmd --permanent \
--remove-rich-rule='rule family="ipv4" \
source address="172.25.3.56" \
port port="9100" protocol="tcp" accept'

و:
sudo firewall-cmd --reload

━━━━━━━━━━━━━━━━━━
🧠 جمع‌بندی:
Ubuntu / Debian:
UFW
↓
iptables / nftables

Rocky / RHEL / Fedora:
firewalld
↓
nftables

و برای کنترل مستقیم‌تر:
nftables

و برای یادگیری و کار با سیستم‌های قدیمی‌تر:
iptables

📌 قانون طلایی:
❌ همزمان UFW و firewalld را مدیریت نکن.
❌ روی یک سرور، بدون اینکه دقیقاً بدانی چه اتفاقی می‌افتد، Ruleهای دستی iptables را با UFW/firewalld قاطی نکن.
🔥 Firewall خوب یعنی:
«فقط چیزی که لازم است باز باشد.»
نه اینکه:
«همه‌چیز را باز کنیم و امیدوار باشیم کسی پیدایش نکند.»

@things_to_know_channel
  • ❤ 4
  • 🔥 2
  • 👏 1
More from @things_to_know_channel
  1. Oct 3, 2026#network_time ‏🌐 چرا یه سرور شلوغ یهو نمی‌تونه connection جدید برقرار کنه؟ ‏تا حا…
  2. Oct 2, 2026#network_time ‏🧐 وقتی می‌دونیم IP طرف چیه، سیستم چطور می‌فهمه باید packet رو دقیقاً ب…
  3. Oct 1, 2026#linux_time ‏🤝 چطور میشه روی یه راز مشترک توافق کرد، وقتی همه دارن گوش می‌دن؟ ‏تا…
  4. Sep 24, 2026#linux_time ‏💿 dd — کپی سطح پایین دیسک ‏در ادامه چند تا مثال کاربردی ازش میبینیم:…
  5. Sep 23, 2026#linux_time ‏🤝 دو تا سیستم چطور توافق می‌کنن که ترتیب packetها رو گم نکنن؟ ‏تا حا…
  6. Sep 22, 2026📌 systemctl Cheat Sheet اگر با Linux Server و DevOps سر و کار دارید، systemctl یکی از دست…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →