Бяспечнае злучэнне вузлоў сеткі і абмен інфармацыяй паміж імі напрамую звязаны з адкрытымі партамі. Падключэнне і перадача трафіку вырабляецца менавіта праз пэўны порт, а калі ў сістэме ён зачынены, выканаць такі працэс не прадставіцца магчымым. З-за гэтага некаторыя карыстальнікі зацікаўлены ў пракінулі аднаго або некалькіх нумароў для наладкі ўзаемадзеяння прылад. Сёння мы пакажам, як выконваецца пастаўленая задача ў аперацыйных сістэмах, заснаваных на ядры Linux.
Адкрываем парты ў Linux
Хоць у шматлікіх дыстрыбутывах па змаўчанні прысутнічае ўбудаваны інструмент па кіраванні сеткамі, усё ж такія рашэнні часта не дазваляюць у поўнай меры ажыццявіць наладу адкрыцця партоў. Інструкцыі дадзенага артыкула будуць заснаваныя на дадатковым дадатку пад назвай Iptables - рашэнне для рэдагавання параметраў міжсеткавага экрана з выкарыстаннем правоў суперпользователя. Ва ўсіх зборках АС на Лінуксе яна працуе аднолькава, хіба што адрозніваецца каманда для ўстаноўкі, але пра гэта мы пагаворым ніжэй.
Калі вы хочаце даведацца, якія з партоў ўжо адкрыты на кампутары, вы можаце скарыстацца убудаванай або дадатковай утылітай кансолі. Дэталёвыя інструкцыі па пошуку неабходнай інфармацыі вы знойдзеце ў іншай нашай артыкуле, перайшоўшы па наступнай спасылцы, а мы ж прыступаем да пакрокавага разбору адкрыцця партоў.
Чытаць далей: Прагляд адкрытых партоў ў Ubuntu
Крок 1: Усталёўка Iptables і прагляд правілаў
Ўтыліта Iptables першапачаткова не ўваходзіць у склад аперацыйнай сістэмы, з-за чаго яе трэба самастойна ўсталяваць з афіцыйнага рэпазітара, а ўжо потым працаваць з правіламі і ўсяляк змяняць іх. Ўстаноўка не займае шмат часу і выконваецца праз стандартную кансоль.
- Адкрыйце меню і запусціце «Тэрмінал». Зрабіць гэта таксама можна, выкарыстоўваючы стандартную гарачую клавішу Ctrl + Alt + T.
- У дыстрыбутывах на базе Debian або Ubuntu прапішіце
sudo apt install iptables
для запуску ўстаноўкі, а ў зборках, заснаваных на Fedora -sudo yum install iptables
. Пасля ўводу націсніце на клавішу Enter. - Актывуйце правы суперпользователя, напісаўшы пароль ад свайго ўліковага запісу. Звярніце ўвагу, што знакі падчас уводу не адлюстроўваюцца, зроблена гэта для забеспячэння бяспекі.
- Чакайце завяршэння інсталяцыі і можаце пераканацца ў актыўнасці працы інструмента, прагледзеўшы стандартны спіс правілаў, задзейнічаўшы
sudo iptables -L
.
Як бачыце, у дыстрыбутыве зараз з'явілася камандаiptables
, Якая адказвае за кіраванне аднайменнай утылітай. Яшчэ раз нагадаем, што працуе гэты інструмент ад правоў суперпользователя, таму ў радку абавязкова павінна ўтрымлівацца прыстаўкаsudo
, А ўжо потым астатнія значэння і аргументы.
Крок 2: Дазвол абмену дадзенымі
Ніякія парты не будуць нармальна функцыянаваць, калі ўтыліта забараняе абмен інфармацыяй на ўзроўні ўласных правілаў міжсеткавага экрана. Акрамя ўсяго, адсутнасць неабходных правілаў у далейшым можа выклікаць з'яўленне розных памылак пры пракінулі, таму мы настойліва раім выканаць наступныя дзеянні:
- Пераканайцеся, што ў канфігурацыйным файле адсутнічаюць якія-небудзь правілы. Лепш адразу ж прапісаць каманду для іх выдалення, а выглядае яна так:
sudo iptables -F
. - Цяпер дадаем правіла для ўводзяцца дадзеных на лакальным кампутары, уставіўшы радок
sudo iptables -A INPUT -i lo -j ACCEPT
. - Прыкладна такая ж каманда -
sudo iptables -A OUTPUT -o lo -j ACCEPT
- адказвае за новае правіла для адпраўкі інфармацыі. - Засталося толькі забяспечыць нармальнае ўзаемадзеянне названых вышэй правілаў, каб сервер змог адпраўляць назад пакеты. Для гэтага трэба забараніць новыя злучэння, а старыя - дазволіць. Вырабляецца гэта праз
sudo iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT
.
Дзякуючы названым вышэй параметрах вы забяспечылі карэктную адпраўку і прыём дадзеных, што дазволіць без праблем узаемадзейнічаць з серверам або іншым кампутарам. Засталося толькі адкрыць парты, праз якія і будзе ажыццяўляцца то самае ўзаемадзеянне.
Крок 3: Адкрыццё неабходных партоў
Вы ўжо азнаёмленыя з тым, па якім прынцыпе дадаюцца новыя правілы ў канфігурацыю Iptables. Існуюць і некалькі аргументаў, якія дазваляюць адкрыць пэўныя парты. Давайце разбярэм гэтую працэдуру на прыкладзе папулярных партоў пад нумарамі 22 і 80.
- Запусціце кансоль і ўвядзіце туды дзьве наступныя каманды па чарзе:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
.
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT - Цяпер праверце спіс правілаў, каб пераканацца ў тым, што парты былі паспяхова проброшены. Выкарыстоўваецца для гэтага ўжо знаёмая каманда
sudo iptables -L
. - Надаць ёй чытэльным выгляд і вывесці ўсе дэталі можна з дапамогай дадатковага аргументу, тады радок будзе такі:
sudo iptables -nvL
. - Памяняйце палітыку на стандартную праз
sudo iptables -P INPUT DROP
і можаце смела прыступаць да працы паміж вузламі.
У выпадку калі ўжо адміністратар кампутара унёс свае правілы ў інструмент, арганізаваў скід пакетаў пры падыходзе да кропкі, напрыклад, празsudo iptables -A INPUT -j DROP
, Вам трэба выкарыстоўваць іншую каманду sudo iptables:-I INPUT -p tcp --dport 1924 -j ACCEPT
, дзе 1924 - нумар порта. Яна дадае неабходны порт у пачатак ланцуга, і тады пакеты ня скідаюцца.
Далей вы можаце прапісаць усё тую ж радокsudo iptables -L
і пераканацца ў тым, што усё наладжана карэктна.
Цяпер вы ведаеце, як пракідаюцца парты ў аперацыйных сістэмах Linux на прыкладзе дадатковай ўтыліты Iptables. Раім абавязкова сачыць за якія з'яўляюцца радкамі ў кансолі пры ўводзе каманд, гэта дапаможа своечасова выявіць якія-небудзь памылкі і аператыўна ліквідаваць іх.