لانچر مصنوعات Bitnami دستاویزاتimaxe CLI بلاگ رابطہ
imaxe firewall فائر وال v1.0.0

آپ کا فائر وال، قابو میں

ufw کی حالت جانچیں، بدسلوک IPs کو ہاتھ سے بلاک کریں، اور ایک ہی کمانڈ سے پورٹس کھولیں یا بند کریں۔ خودکار پابندیاں fail2ban سنبھالتا ہے؛ یہ آپ کے دستی بلاکس اور پورٹ قواعد کے لیے ہے۔

$ imaxe firewall block 203.0.113.10 --reason "abuso" --ttl 24h
ورژن
v1.0.0
ذیلی کمانڈز
9
کنفیگ
/etc/imaxe/firewall.yml
root درکار ہے
ہاں
بنیاد
ufw + fail2ban

یہ ماڈیول کیا کرتا ہے #

فائر وال سرور کا سامنے کا دروازہ ہے: یہ فیصلہ کرتا ہے کہ کون سے کنکشن اندر آئیں اور کون سے مسترد ہوں۔ ان مشینوں پر یہ کام ufw (اوبنٹو کا فائر وال) کرتا ہے، اور firewall ماڈیول آپ کو ufw کا نحو یاد کیے بغیر اسے چلانے کے لیے ایک آسان کنٹرول دیتا ہے۔

اس کے ساتھ آپ ایک نظر میں فائر وال کی حالت دیکھ سکتے ہیں (فعال حالت، طے شدہ پالیسی اور قواعد)، کسی ایسی IP یا رینج کو جو آپ کو پریشان کر رہی ہو دستی طور پر بلاک کر سکتے ہیں، جب اس کی ضرورت نہ رہے تو اس بلاک کو چھوڑ سکتے ہیں، اور کنفیگریشن کو ufw کے نافذ کردہ کے ساتھ ہم آہنگ رکھتے ہوئے پورٹس کھول یا بند کر سکتے ہیں۔

دستی بلاکس، خودکار نہیں

گھسنے کی کوششوں (SSH بروٹ فورس، وغیرہ) کے لیے خودکار پابندیاں fail2ban خود سنبھالتا ہے۔ یہ ماڈیول آپ کے دستی بلاکس کے ساتھ کام کرتا ہے: block، unblock اور flush صرف اسی کو چھوتے ہیں جو آپ ہاتھ سے شامل کرتے ہیں اور کبھی fail2ban کی پابندیوں میں مداخلت نہیں کرتے۔

فوری گائیڈمرحلہ وار کام

عام کام #

جو آپ کرنا چاہتے ہیں اسے منتخب کریں۔ ہر ترکیب کمانڈ پہلے سے لکھی ہوئی لاتی ہے — بس IP یا پورٹ اپنے سے بدلیں اور کاپی کریں دبائیں۔

1

فائر وال کی حالت دیکھیں

جانچیں کہ آیا یہ فعال ہے، اس کی طے شدہ پالیسی اور اس کے کتنے قواعد ہیں۔

اپنے سرور سے SSH کے ذریعے جڑیں اور خلاصہ مانگیں:

ٹرمینل
$ sudo imaxe firewall status

کسی اسکرپٹ کے لیے درکار ہے؟ --json شامل کریں اور آپ کو وہی معلومات مشین کے پڑھنے کے قابل شکل میں ملیں گی:

ٹرمینل
$ sudo imaxe firewall status --json
آپ دیکھتے ہیں کہ آیا فائر وال فعال ہے، طے شدہ پالیسی، قواعد کی تعداد اور آپ کے پاس کتنے دستی بلاکس نافذ ہیں۔
2

بدسلوک IP بلاک کریں

کسی ایسی IP یا رینج کی رسائی کاٹ دیں جو آپ کو تنگ کر رہی ہو۔

کسی مخصوص IP کو بلاک کریں، وجہ نوٹ کرتے ہوئے تاکہ آپ اسے بعد میں یاد رکھ سکیں:

ٹرمینل
$ sudo imaxe firewall block 203.0.113.10 --reason "abuso"

صرف عارضی بلاک چاہتے ہیں؟ اسے --ttl کے ساتھ ایک مدت دیں اور یہ خود ہٹ جائے گا۔ آپ CIDR نوٹیشن میں پوری رینج بھی بلاک کر سکتے ہیں:

ٹرمینل
$ sudo imaxe firewall block 203.0.113.10 --reason "abuso" --ttl 24h
$ sudo imaxe firewall block 203.0.113.0/24 --reason "escaneo"
وہ IP یا رینج اب سرور سے کنکشن نہیں کر سکتی۔ اگر آپ نے --ttl طے کیا ہو، تو وقت پورا ہونے پر بلاک خود ختم ہو جاتا ہے۔
3

دیکھیں میں نے کون سی IPs بلاک کی ہیں

اپنے فعال دستی بلاکس کی فہرست کا جائزہ لیں۔

اُن IPs اور رینجز کی فہرست بنائیں جو آپ نے ہاتھ سے بلاک کی ہیں (یاد رکھیں: fail2ban کی پابندیاں یہاں ظاہر نہیں ہوتیں):

ٹرمینل
$ sudo imaxe firewall blocked
آپ ہر دستی بلاک کو اس کی وجہ کے ساتھ اور، اگر ہو تو، کب ختم ہوتا ہے، دیکھتے ہیں۔ جن کی اب ضرورت نہیں؟ IP اَن بلاک کریں پر جائیں۔
4

IP اَن بلاک کریں

کسی دستی بلاک کو چھوڑ دیں جس کی اب ضرورت نہیں۔

وہ عین IP یا رینج چھوڑیں جو آپ نے بلاک کی تھی (بالکل ویسے جیسے وہ blocked میں ظاہر ہوتی ہے):

ٹرمینل
$ sudo imaxe firewall unblock 203.0.113.10
وہ پتہ دوبارہ کنکشن کر سکتا ہے۔ آپ کے باقی بلاکس اور fail2ban کی پابندیاں برقرار رہتی ہیں۔
5

پورٹ کھولیں یا بند کریں

کسی نئی سروس کو گزرنے دیں یا کوئی ایسی بند کریں جو آپ اب پیش نہیں کرتے۔

ایک پورٹ کھولیں (ایک تبصرے کے ساتھ تاکہ آپ کو معلوم ہو کہ یہ کس لیے ہے)۔ آپ --from کے ساتھ محدود کر سکتے ہیں کہ کون اندر آئے:

ٹرمینل
$ sudo imaxe firewall allow 443/tcp --comment "https"
$ sudo imaxe firewall allow 5432/tcp --from 203.0.113.0/24 --comment "postgres interno"

کوئی پورٹ بند کریں جو آپ اب استعمال نہیں کرتے:

ٹرمینل
$ sudo imaxe firewall deny 8080/tcp
قاعدہ ufw میں نافذ ہوتا ہے اور firewall.yml میں جھلکتا ہے۔ اسے imaxe firewall rules list کے ساتھ جانچیں۔
پورٹس بند کرتے وقت محتاط رہیں

پورٹ 22 (SSH) بند نہ کریں اگر آپ SSH کے ذریعے جڑے ہوئے ہیں: آپ سرور تک رسائی کھو دیں گے۔ ماڈیول اسی خوف سے بچنے کے لیے 22/tcp کو طے شدہ طور پر اجازت یافتہ رکھتا ہے۔ اور یاد رکھیں کہ flush آپ کے تمام دستی بلاکس کو ایک ساتھ حذف کر دیتا ہے۔

CLI حوالہکمانڈز، فلیگز اور فائلیں

نحو #

استعمال
imaxe firewall <subcomando> [<ip>|<puerto>] [flags]

تمام ذیلی کمانڈز کو root کے مراعات درکار ہیں (sudo استعمال کریں) کیونکہ وہ ufw پر کام کرتی ہیں اور /etc/imaxe/ میں لکھتی ہیں۔ مشین کے پڑھنے کے قابل آؤٹ پٹ حاصل کرنے کے لیے، جو scripting کے لیے موزوں ہو، status، blocked یا rules list میں --json شامل کریں۔

ذیلی کمانڈز #

ذیلی کمانڈیہ کیا کرتا ہےمتعلقہ فلیگز
statusفائر وال کی حالت: فعال حالت، طے شدہ پالیسی، قواعد کی تعداد اور دستی بلاکس۔--json
blockedدستی طور پر بلاک شدہ IPs/رینجز کی فہرست بناتا ہے (fail2ban کی پابندیاں شامل نہیں)۔--json
blockکسی IP یا رینج کو دستی طور پر بلاک کرتا ہے، اختیاری وجہ اور مدت کے ساتھ۔--reason, --ttl
unblockکسی دستی بلاک کو چھوڑتا ہے۔ fail2ban کی پابندیوں کو نہیں چھوتا۔
flushتمام دستی بلاکس حذف کرتا ہے (تباہ کن)۔ fail2ban کی پابندیوں کو نہیں چھوتا۔--yes
rules listپورٹ قواعد کی فہرست بناتا ہے (اجازت یافتہ پورٹس، ماخذ)۔--json
allowکوئی پورٹ کھولتا ہے اور اسے کنفیگ میں جھلکاتا ہے۔--from, --comment
denyکوئی پورٹ بند کرتا ہے اور اسے کنفیگ میں جھلکاتا ہے۔--from
reloadufw کو دوبارہ لوڈ کرتا ہے (اس کے فعال قواعد دوبارہ نافذ کرتا ہے)۔

rules پورٹ قواعد کے انتظام کو جمع کرتا ہے؛ ابھی کے لیے اس کی واحد ذیلی کمانڈ rules list ہے۔

آرگیومنٹس اور فلیگز #

آرگیومنٹ / فلیگقسمطے شدہتفصیل
<ip>[/cidr] req.stringblock اور unblock میں کام کرنے کے لیے IP یا CIDR رینج (مثلاً 203.0.113.10 یا 203.0.113.0/24
<port>[/proto] req.stringallow اور deny میں کام کرنے کے لیے پورٹ (مثلاً 443 یا 443/tcp
--reasonstringblock میں: بلاک کی وجہ (معلوماتی)۔
--ttldurationpermanentblock میں: بلاک کی مدت (مثلاً 24h)۔ طے شدہ طور پر مستقل۔
--fromcidranyallow/deny میں: ماخذ کو کسی مخصوص CIDR تک محدود کرتا ہے۔
--commentstringallow میں: قاعدے کے لیے وضاحتی تبصرہ۔
--yesboolfalseflush میں: پوچھے بغیر تصدیق کرتا ہے (تباہ کن عمل)۔
--jsonboolfalsestatus/blocked/rules list میں: نتیجہ stdout پر JSON کے طور پر جاری کرتا ہے۔

فائلیں اور راستے #

راستہمواد
/etc/imaxe/firewall.ymlماڈیول کی کنفیگریشن: اجازت یافتہ پورٹس جنہیں allow/deny ufw کے ساتھ ہم آہنگ رکھتے ہیں۔

firewall.yml کی مثال:

/etc/imaxe/firewall.yml
allow:
  - { port: 22, proto: tcp, comment: "ssh" }
  - { port: 443, proto: tcp, comment: "https" }

ایگزٹ کوڈز اور لاگز #

ہر عملدرآمد ایک کوڈ لوٹاتا ہے جسے آپ echo $? کے ساتھ جانچ سکتے ہیں — اسکرپٹس میں سلسلہ بنانے کے لیے مفید:

0OKعمل کامیابی سے مکمل ہوا۔
1ERRعمومی غیر درجہ بند خرابی۔ لاگ کا جائزہ لیں۔
2USAGEغلط یا غائب آرگیومنٹس۔
3NOTFOUNDمخصوص IP یا قاعدہ موجود نہیں۔

ڈی بگ کرتے وقت حالت اور قواعد کی براہ راست پیروی کریں:

ٹرمینل
$ sudo imaxe firewall status
$ sudo imaxe firewall rules list

مسائل کا حل #

علامتممکنہ وجہحل
اَن بلاک کرتے وقت NOTFOUND (کوڈ 3) نکلتا ہےIP اُس بلاک سے عین مطابقت نہیں رکھتی جو آپ نے طے کیا تھا (مثلاً /cidr غائب ہے)۔imaxe firewall blocked چلائیں اور unblock کے لیے اندراج کو ہو بہو کاپی کریں۔
میں نے کوئی IP بلاک کی مگر unblock کے بعد بھی وہ پابند ہےبلاک fail2ban نے طے کیا تھا، آپ نے نہیں۔یہ ماڈیول صرف دستی بلاکس چھوڑتا ہے؛ خودکار پابندیاں fail2ban الگ سے سنبھالتا ہے۔
میں نے کوئی پورٹ کھولی مگر کوئی ٹریفک اندر نہیں آتیقاعدہ ufw میں ہے مگر کوئی بیرونی فائر وال (سیکیورٹی گروپ) اب بھی بند ہے۔imaxe firewall rules list کے ساتھ جانچیں اور اپنے کلاؤڈ فراہم کنندہ میں بھی پورٹ کھولیں۔
قواعد بدلنے کے بعد میں نے SSH رسائی کھو دیپورٹ 22 بند یا محدود ہو گئی۔فراہم کنندہ کے کنسول کے ذریعے رسائی کریں اور imaxe firewall allow 22/tcp کے ساتھ 22/tcp کو دوبارہ اجازت دیں۔

کیا فائر وال ماڈیول کے ساتھ اٹک گئے ہیں؟

«imaxe <module> status --json» کے آؤٹ پٹ کے ساتھ ہمیں لکھیں اور ہم فوراً جواب دیں گے۔

سپورٹ سے رابطہ کریں