په لینکس کې فایر وال د کمپیوټر سیسټم په خوندي کولو کې مهم رول لوبوي. دا د خنډ په توګه کار کوي، د شبکې ترافیک کنټرول او فلټر کوي ترڅو سیسټم د غیر مجاز لاسرسي، بریدونو او نورو ګواښونو څخه خوندي کړي. د فایر وال په سمه توګه تنظیم شوي پرته، سرور کولی شي د مختلفو ډولونو سایبري بریدونو سره مخ شي، چې د معلوماتو امنیت او محرمیت لپاره جدي پایلې رامینځته کوي.
پدې مقاله کې، موږ به د لینکس فایر وال تنظیم کولو لپاره دوه اصلي وسیلو ته وګورو: فایر والډ او iptables. موږ به د دوی د ځانګړتیاوو، فعالیت او ګټو پرتله کولو تحلیل ترسره کړو. سربیره پردې، موږ به د دې وسیلو د تنظیم او کارولو لپاره مفصل لارښوونې چمتو کړو، او همدارنګه د لینکس پلیټ فارم کې د فایر وال سره ستاسو سیسټم خوندي کولو لپاره غوره کړنو په اړه بحث وکړو. ټولې کړنې به په a کې وښودل شي. مجازی پالنګر د ریښی لاسرسی سره.
په لینکس کې د فائر والډ تنظیم کول
فایلوالډ (فایروال ډیمون) د لینکس عملیاتي سیسټمونو کې د فایر وال اداره کولو لپاره یو پروګرام دی. دا د فایر وال قواعدو تنظیم کولو، د شبکې غوښتنلیکونو د اړیکو اجازه ورکولو یا بندولو لپاره د کارونکي انٹرفیس چمتو کوي. دا په ډیری سرور توزیعونو کې په ډیفالټ ډول دمخه نصب شوی. که چیرې فایر والډ دمخه نصب شوی نه وي، نو دا د توزیع رسمي زیرمو څخه په خپلواکه توګه نصب کیدی شي.
د ریډ هټ سیسټمونو لپاره (لکه RHEL، CentOS، Fedora) نصب کول د دې قوماندې سره ترسره کیږي:
yum install firewalld
د Debian/Ubuntu لپاره:
apt-get install firewalld
د نصبولو وروسته، دا د لاندې قوماندې سره سمدلاسه پیل او فعال کیدی شي:
systemctl start firewalld
بیا، تاسو اړتیا لرئ چې خدمت په پیل کې اضافه کړئ:
systemctl enable firewalld
په دې مرحله کې، موږ د ufw غیر فعالولو سپارښتنه کوو، ځکه چې د دې وسیلې یو ځای کارول د firewalld یا iptables سره سپارښتنه نه کیږي. حالت وګورئ:
systemctl status ufw
د دې د بندولو لپاره، دا کمانډ دننه کړئ:
systemctl stop ufw
د بشپړ غیر فعالولو لپاره:
ufw disable
د دې کړنو وروسته، تاسو کولی شئ د فائر والډ تنظیم کولو ته لاړ شئ.
لومړی، دا اړینه ده چې د باور زونونه تعریف کړئ. فایر والډ د زونونو مفهوم کاروي ترڅو د شبکې انٹرفیسونو لپاره د باور کچه معلومه کړي. هر انٹرفیس یو زون ټاکل شوی، او د فایر وال قواعد د زون پراساس پلي کیږي. د ټولو شته زونونو لیست د دې قوماندې سره خلاصیږي:
firewall-cmd --get-zones
معمولا، څلور اصلي زونونه کارول کیږي:
- د عامې: دا زون د هغو شبکو لپاره دی چې تاسو یې ناامنه ګڼئ؛
- د خصوصي: د کور شبکو یا نورو باوري شبکو اتصالاتو باندې تطبیق کیږي؛
- داخلي: د داخلي شبکو لپاره کارول کیږي، لکه هغه چې په یوه اداره یا کارپوریټ شبکه کې وي؛
- DMZ: دا زون هغه ځای دی چیرې چې سرورونه معمولا ځای پر ځای کیږي چې باید د انټرنیټ څخه د لاسرسي وړ وي.
خو دا یوازې یوه بیلګه ده. تاسو کولی شئ د لاندې قوماندې په کارولو سره خپل زون اضافه کړئ:
firewall-cmd --permanent --new-zone=nameyourzone
د اضافه کولو وروسته، بیا بارولو ته اړتیا ده:
firewall-cmd --reload
د زون د حذف کولو لپاره، ورته طریقه کارول کیږي
firewall-cmd --permanent --delete-zone=nameyourzone
د زونونو له ټاکلو وروسته، اړینه ده چې اړینو خدماتو او بندرونو ته د ترافیک اجازه ورکړل شي. د یو ځانګړي خدمت اجازه ورکولو لپاره، دا قومانده وکاروئ:
firewall-cmd --zone=public --add-service=name
چیرته نوم د خدمت نوم دی. د مثال په توګه، د اپاچي لپاره د ترافیک اجازه ورکول:
firewall-cmd --zone=public --add-service=http
د جواز وړ پورټونو تعریف کولو لپاره، دا کمانډ وکاروئ:
firewall-cmd --zone=public --add-port=number/protocol
د مثال په توګه، د SSH لپاره معیاري 22 پورټ به داسې ښکاري:
firewall-cmd --zone=public --add-port=22/tcp
په دې مرحله کې، اصلي قوانین لا دمخه جوړ شوي دي. بیا، دا معلومه کړئ چې ترافیک به د سرچینې، منزل، بندر، او نورو معیارونو پورې اړه ولري. د قانون اضافه کولو لپاره (د د عامه د مثال په توګه زون):
firewall-cmd --zone=public rule
د مثال په توګه، د هرې سرچینې څخه د پورټ 80 (HTTP) ته د راتلونکو ترافیکو اجازه ورکول:
firewall-cmd --zone=public --add-port=80/tcp --permanent
د قانون لرې کولو لپاره:
firewall-cmd --permanent --remove-rule=rule_specification
چیرته حاکمیت د قاعدې ډول دی (د مثال په توګه، پورټ، خدمت، بډایه قاعده، او نور)، او د قاعدې_ځانګړنه دا پخپله د قاعدې ځانګړتیا ده.
د Firewalld ترتیباتو کې د بدلونونو راوستلو وروسته، دا اړینه ده چې خوندي کړئ او پلي یې کړئ. د بدلونونو د خوندي کولو لپاره، دا قومانده وکاروئ:
firewall-cmd --runtime-to-permanent
د بدلونونو د پلي کولو لپاره:
firewall-cmd --reload
د تنظیم بشپړولو وروسته، تاسو کولی شئ د ټولو قواعدو لیست په خلاصولو سره غوره شوي پیرامیټرې تایید کړئ:
firewall-cmd --list-all
که کومه ستونزه رامنځته شي، د فایر والډ لاګونه د دې قوماندې سره وګورئ:
journalctl -u firewalld
یادونه: موږ یوازې د اړیکې تنظیم کولو لپاره عمومي الګوریتم پوښلی دی. دا وسیله پراخه فعالیت لري. د ټولو شته انتخابونو په اړه د بشپړ معلوماتو لپاره، تاسو کولی شئ وکاروئ رسمي سندونه یا مرسته خلاصه کړئ:
firewall-cmd --help
په لینکس کې د iptables تنظیم کول
د فایر والډ برعکس، iptables یو زوړ مګر لاهم په پراخه کچه کارول شوی وسیله ده چې په لینکس کې د فایر وال اداره کولو لپاره کارول کیږي. دا د لینکس کرنل په کچه د پیکټ فلټر کولو قواعدو لپاره ډیر مستقیم او انعطاف منونکی چلند چمتو کوي. په هرصورت، iptables د فایر والډ په پرتله ډیر پرمختللي پوهې او تجربې ته اړتیا لري، چې دا د پیل کونکو لپاره لږ لاسرسی لري. د وسیلې دمخه نصب شوی نسخه د دې قوماندې سره وګورئ:
iptables -V
که چیرې وسیله نصب نه وي، نو دا به نصبولو ته اړتیا ولري. په اوبنټو، ډیبیان کې د نصبولو لپاره قومانده:
apt install iptables
د ریډ هټ سیسټمونو لپاره (د مثال په توګه، سینټوس، فیډورا):
yum install iptables
د نصبولو وروسته د فعالولو امر:
systemctl start iptables
د پیل لپاره اضافه کولو لپاره، اجرا کړئ:
systemctl enable iptables
د iptables ترتیب پیل کولو دمخه، دا مهمه ده چې پوه شئ چې دا څنګه کار کوي. دا د پروګرام ترکیب لخوا مرسته کیږي. دا په لاندې ډول ښکاري:
iptables -t table action chain additional_parameters
راځئ چې د هر توکي ژوره مطالعه وکړو.
Iptables څلور اصلي جدولونه لري: فلټر، ناټ، منګل، او خامهر یو د ځانګړو ډولونو پاکټونو پروسس کولو لپاره ډیزاین شوی او د قواعدو خپل سلسله لري:
- چاڼګر: دا تر ټولو ډیر کارول شوی جدول دی، چې د پیکټ فلټر کولو قواعد لري. دا د پیکټونو ته اجازه ورکولو یا ردولو په اړه د پریکړې کولو لپاره کارول کیږي.
- NAT: دا جدول د شبکې پتې او پورټونه په پیکټونو کې د تعدیل لپاره کارول کیږي. دا ډیری وخت د ماسکریډینګ (NAT) تنظیم کولو لپاره کارول کیږي.
- منګل: پدې جدول کې، تاسو کولی شئ د پیکټ سرلیکونه تعدیل کړئ. دا د ځانګړو پیکټ عملیاتو لپاره کارول کیږي، لکه نښه کول.
- خام: دا جدول د هغو قواعدو د تنظیمولو لپاره کارول کیږي چې د اتصال تعقیب سیسټم څخه د تیریدو دمخه پلي کیږي. دا معمولا د هغو قواعدو تنظیمولو لپاره کارول کیږي چې باید د تعقیب سیسټم لخوا تعدیل نشي، لکه د ځانګړو پتو څخه د پاکټونو غورځول.
هر جدول د زنځیرونو یوه ټولګه لري. زنځیرونه د قواعدو یوه لړۍ ده چې په ترتیب سره چک کیږي. درې مخکینۍ ټاکل شوې زنځیرونه شتون لري:
- داخل (راتلونکی). په دې زنځیر کې قواعد ټاکي چې د راتلونکو پاکټونو سره څه وکړي.
- وتل (بهر ته تلونکی). دا سلسله په ټولو هغو پاکټونو باندې پلي کیږي چې ستاسو کمپیوټر په شبکه کې نورو وسیلو یا کمپیوټرونو ته لیږي.
- فارورډ (لیږل). په دې زنځیر کې قواعد مشخص کوي چې د لیږل شویو پاکټونو سره څه وشي.
په پای کې، هر زنځیر یو څه عمل (هدف) لري. په عمل کې، پنځه اصلي عملونه کارول کیږي:
- ACCEPT: پاکټ ته اجازه ورکړئ چې د فایر وال له لارې تیر شي.
- ډراپ: پاکټ رد کړئ او پرته له کوم ځواب څخه یې وغورځوئ.
- رد کړئ: پاکټ رد کړئ او لیږونکي ته د ICMP خطا پیغام واستوئ.
- لوګو: پاکټ د سیسټم لاګ کې ثبت کړئ او بل عمل ترسره کړئ (د مثال په توګه، ACCEPT یا DROP).
- بیرته ستنیدل په: په اوسني زنځیر کې د قواعدو چک کول ودروئ او د زنګ وهلو زنځیر ته بیرته راشئ (که چیرې پلي شي).
د تنظیم پیل کولو لپاره، د موجوده قواعدو لیست د دې قوماندې سره خلاص کړئ:
iptables -L
د Iptables تنظیم کولو لپاره د لارښود په توګه، راځئ چې د ډیری عام کارول شوي امرونو عملي مثالونه وګورو. د اسانتیا لپاره، موږ به مثالونه په 3 ګروپونو وویشو، د ځانګړي زنځیر پورې اړه لري.
سلسله ننوتۍ:
- په پورټ ۸۰ کې د TCP پروتوکول له لارې راتلونکو ترافیکو ته اجازه ورکړئ:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
۲. په پورټ ۲۲ کې د UDP پروتوکول له لارې راتلونکو ترافیکو ته اجازه ورکړئ:
iptables -A INPUT -p udp --dport 22 -j ACCEPT
۳. د یو ځانګړي IP پتې څخه راتلونکی ټرافیک بند کړئ:
iptables -A INPUT -s 192.168.1.100 -j DROP
سلسله Output:
- په پورټ ۴۴۳ کې د TCP پروتوکول له لارې بهر ته تلونکي ترافیک ته اجازه ورکړئ:
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
۲. په پورټ ۸۰ کې د UDP پروتوکول له لارې بهر ته تلونکي ټرافیک ته اجازه ورکړئ:
iptables -A OUTPUT -p udp --dport 80 -j ACCEPT
۳. یو ځانګړي بندر ته د وتلو ټرافیک بند کړئ (د مثال په توګه، ۲۱):
iptables -A OUTPUT -p tcp --dport 21 -j DROP
سلسله وړاندې:
- د IP پتې د یوې ځانګړې لړۍ څخه لیږل شوي ټرافیک بند کړئ:
iptables -A FORWARD -s 172.16.0.0/24 -j DROP
۲. د یو ځانګړي شبکې انٹرفیس څخه د پیکټونو لیږل بند کړئ:
iptables -A FORWARD -i eth1 -j DROP
۳. د یو ځانګړي پورټ لپاره د یو وخت اړیکو شمیر محدود کړئ (په دې مثال کې، په ۸۰ پورټ کې په یوه دقیقه کې ۱۰ اړیکې):
iptables -A INPUT -p tcp --dport 80 -m limit --limit 10/minute -j ACCEPT
لکه څنګه چې تاسو لیدلی شئ، په هره جلا قضیه کې، یو اضافي دلیل (کمانډ) کارول کیږي. د ممکنه دلیلونو بشپړ لیست او د وسیلې د فعالیت لپاره عمومي ملاتړ ترلاسه کولو لپاره، داخل کړئ:
iptables -h
د دې لپاره چې ډاډ ترلاسه شي چې ترتیبات سم دي، د قواعدو لیست لیدلو لپاره کمانډ بیا دننه کړئ:
iptables -L
د یو ځانګړي قانون د حذف کولو لپاره، دا کمانډ وکاروئ:
iptables -D chain rule_number
د مثال په توګه، که تاسو غواړئ د INPUT زنځیر څخه د قانون نمبر 1 حذف کړئ، نو قومانده به داسې ښکاري:
iptables -D INPUT 1
د یوې قوماندې سره د ټولو قوانینو د حذف کولو لپاره:
iptables -F
مهم یادښت: د iptables قواعد د سیسټم یا خدمت له بیا پیلولو وروسته په اتوماتيک ډول نه خوندي کیږي. د قواعدو د خوندي کولو لپاره، دوی باید د ترتیب فایل ته اضافه شي او د بیا پیلولو وروسته بیرته راګرځول شي. د iptables-خوندي کول او iptables-restore اسانتیاوې کولی شي پدې کې مرسته وکړي. د قواعدو خوندي کولو لپاره، کمانډ دننه کړئ:
iptables-save > /etc/iptables/rules.v4
دا د iptables اوسني قواعد په rules.v4 فایل کې خوندي کوي. د ریبوټ وروسته د بیا رغونې لپاره، داخل کړئ:
iptables-restore < /etc/iptables/rules.v4
دا قومانده د rules.v4 فایل څخه قواعد بیرته راګرځوي.
پایله
په لینکس کې د firewalld یا iptables په کارولو سره د فایر وال تنظیم کول د سرور امنیت ډاډمن کولو لپاره یو مهم اړخ دی. دواړه وسیلې د شبکې ترافیک اداره کولو او د غیر مجاز لاسرسي او سایبري بریدونو څخه د سیسټم ساتنې لپاره د باور وړ وسیلې وړاندې کوي. د firewalld او iptables ترمنځ انتخاب د کارونکي ځانګړو اړتیاو او غوره توبونو پورې اړه لري، د دوی مختلف فعالیت او ځواک په پام کې نیولو سره.