Тармакты Iptables менен камсыз кылуу - Прокси - NAT - IDS: 1 БӨЛҮК

Бул пост тармактар ​​кандай иштээри жана Linux жабдыктарыбызды Роутерге айландыруу жөнүндө бир аз тактоого аракет кылабыз, мейли үйдө, мейли бизнесте дагы биздин тармакты камсыз кылат. Ошентип, бизнеске киришели:

Бул мазмун "Linux - Системалык Башкаруу жана Тармак Кызматтарынын Операциясы" китебине негизделген - Sébastien BOBILLIER

Маршруттоо жана чыпкалоо

Маршрутизация жөнүндө сүйлөшүү жана түшүнүү үчүн алгач роутердин функциясы эмне экендигин аныктай алабыз? Бул үчүн роутер тармакты түзүүдөн жана башка жабдуулар менен байланышууга мүмкүнчүлүк берүүдөн тышкары (биз аны AP, Switch, Hub же башкалар менен жасай аларыбызды) эки башка тармакты бири-бирине туташтыруу мүмкүнчүлүгүнө ээ деп айта алабыз.

роутер

Сүрөттө көрүнүп тургандай, роутер тарабынан түзүлгөн жана анын эки интерфейсинин бирине жеткен "10.0.1.0" локалдык тармагы бар. Андан кийин, башка интерфейсиндеги роутерде дагы бир тармак бар, ал Интернетке туташтырыла турган коомдук IP менен. Маршруттоо функциясы, негизинен, ушул эки тармактын ортосунда ортомчу болуп, алар менен байланышууга мүмкүнчүлүк берет.

Linux роутер катары.

Албетте, Linux ядросу буга чейин "багыттоону" жасай алат, бирок демейки шартта ал өчүрүлөт, андыктан биздин Linux бул ишти жасашын кааласак, анда файлга өтүшүбүз керек.

/proc/sys/net/ipv4/ip_forward

Ал жерден бир гана нөл "0" камтыган файл экендигин байкайбыз, бул жүрүм-турумду активдештирүү үчүн, аны бир "1" кылып өзгөртүү керек. Тилекке каршы, биз компьютерди өчүрүп-күйгүзгөндө, аны өчүрүп салабыз, демейки шартта, аны иштетүү үчүн, биз төмөнкү буйрукту колдонушубуз керек:

sysctl net.ipv4.ip_forward=1

Же аны түздөн-түз файлда түзөтүңүз /etc/sysctl.conf. Таркатылышына жараша бул конфигурация файлдагы болушу мүмкүн  /etc/sysctl.d/.

Демейки боюнча, биздин Linux маршруттоо жадыбалына ээ болушу керек, ал жалпысынан биздин lan тармагынын конфигурациясы жана роутерге туташуу. Бул маршрутту көргүбүз келсе, эки буйрукту колдонсо болот:

route -n

o

netstat -nr

Эки буйрук дагы бирдей кайтарылышы керек.

2014-09-30 18:23:06 дан скриншот

Жалпысынан, бул конфигурация сиздин Linux үчүн шлюз катары кызмат кылышы үчүн жетиштүү жана башка компьютерлер биздин компьютерде чабыттай алат. Эми, эгерде биздин Linux эки же андан көп тармакты байланыштырышын кааласак, мисалы, жергиликтүү болобу, жокпу, статикалык каттамдарды колдоно алабыз.

Менин Linuxтун эки тармактык интерфейси бар дейли, биринчисинде 172.26.0.0, экинчисинде (10.0.0.0) башка локалдык тармактын компьютерлери бар Интернет байланышы бар. Эгер пакеттерди ошол башка тармакка багыттагыбыз келсе, анда төмөнкүлөрдү колдоно алабыз:

route add -net 10.0.0.0 netmask 255.0.0.0 gw 172.26.0.8

Жалпысынан бул:

route add -net REDDESTINO netmask MASCARA gw IPDELLINUX

биз берсек маршрут -n бул тармак бар же жок экендигине карабастан, бул маршруттоо биздин таблицада белгиленет.

2014-09-30 18:31:35 дан скриншот

Эгерде биз айтылган маршрутту жок кылгыбыз келсе, анда биз колдоно алабыз

route del -net 10.0.0.0 netmask 255.0.0.0

Iptables.

Негизинен iptables пакеттерди, чыгуучу, кирүүчү жана башкаларды чыпкалоо үчүн колдонулат, бул биздин тармактык трафикти башкаруунун мыкты куралы болуп саналат. Ошондой эле, iptables, трафикти бир эле компьютерден чыпкалоо мүмкүнчүлүгүнө ээ болгондой эле, ал аркылуу өткөн трафикти да чыпкалоо мүмкүнчүлүгүн берет. (Багыттоо). Iptables таблицалар, чынжырлар жана аракеттерге бөлүнөт.

  • Башкармалар:  негизинен эки стол болушу мүмкүн, чыпка, пакеттерди чыпкалоо үчүн жана  ул даректерди которуу, башкача айтканда, бир тармактан экинчи тармакка өтүү.
  • Чынжырлар: Чынжыр биз сүзгүбүз келген же сүзгүбүз келген трафиктин түрүн билдирет, башкача айтканда, таблицаларды кайсы трафикке колдонобуз? жана алар төмөнкүлөр болушу мүмкүн:  КИРГИЗҮҮ: Кирүүчү трафик, ЧЫГЫШ: тышкы трафик же АЛГА: Ал аркылуу трафик өтөт, бирок бул туура эмес байланыш.
  • Ал дагы пайда болушу мүмкүн КИЙИНКИ, пакетти жибергенден кийин аны белгилүү бир жол менен дарылоо үчүн колдонулат.
  • Аракеттер: Аракеттер негизинен чынжыр менен аткарыла турган иш-аракет. Бул аракет болушу мүмкүн ТАМЫК, бул ошол трафикти жок кылган же КАБЫЛ АЛУУ. трафик ошол аракетти жасоого мүмкүндүк берет.

IPTABLES эрежелери түзүлгөн тартипте сакталат жана аткарылат, эгер эреже мурунку эрежени жок кылса, анда буйруктагы акыркы эреже колдонулат.

Firewall Policies.

Жалпысынан, брандмауэрлер эки жол менен иштешет:

  1. , Же болбосо башка трафикке уруксат бериңиз
  2. Трафиктен башка ...

Саясатты колдонуу үчүн, колдонуңуз IPTABLES - P АРАКЕТТҮҮ ЗАҢЫ

Бул жерде трафиктин түрүн билдирген (INPUT, OUTPUT, FORWARD, POSTROUTING ...) жана аракет DROP ЖЕ КАБЫЛ АЛУУ.

Келгиле, бир мисалга токтололу.

2014-09-30 18:53:23 дан скриншот

 

Бул жерде алгач мен пинг жасай алганымды, андан кийин IPTABLESге бардык OUTPUT трафиги DROP болгонун же уруксат берилбегенин айттым. Ошондо мен IPTABLESге аны кабыл алыңыз дедим.

Эгерде биз брандмауэрди нөлдөн баштап кура турган болсок, анда биз ар дайым эрежелерди колдонушубуз керек (башка жол кыймылына жол бербеңиз ... Бул үчүн биз эрежелерди колдонобуз)

iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P АЛГА ТАРТУУ
Эгер бул саясаттар колдонулса, анда алар эч кандай байланыш түрүнө ээ болбойт
.

Кайтып келүү үчүн биз дагы ушундай жазабыз жана DROPту АКСЕПТ менен алмаштырабыз.

Бул учурда, бардык трафикке тыюу салынгандыктан, биз IPTABLESге анын кандай трафик болушу мүмкүн экендигин айта баштайбыз.

Синтаксиси:

iptables -A cadena -s ip_orgigen -d ip_destino -p protocolo --dport puerto -j acción

мында:

String = КИРҮҮ, ЧЫГУУ же АЛГА

Origin_ip = Пакеттердин келип чыгышы, бул бир эле IP же тармак болушу мүмкүн жана бул учурда биз масканы көрсөтүшүбүз керек).

көздөгөн_ип = пакеттер кайда баратат. бул бир эле IP же тармак болушу мүмкүн жана бул учурда биз масканы көрсөтүшүбүз керек).

протокол = пакеттерде колдонулган протоколду көрсөтөт (icmp, tcp, udp ...)

порт = трафиктин көздөлгөн порту.

иш-аракет = ТҮШҮРҮҮ же КАБЫЛ АЛУУ.

мисалы:

 

2014-09-30 19:26:41 дан скриншот

БАРДЫК чектелген саясат колдонулат.

2014-09-30 19:27:42 дан скриншот

Андан кийин TCP протоколу менен 80 порт HTTP жана 443 HTTPS порту аркылуу трафикке ээ болуу үчүн эрежелерди кошобуз. Андан кийин порт 53 Домендерди чечүү үчүн DNS кардары колдонулат, антпесе багыттабайсыз. Бул udp протоколу менен иштейт.

Сызык:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Бул төмөнкүлөргө байланыштуу: Мисалы, HTTP суроосун бергенде, сиз сервердин 80-портуна туташасыз, бирок маалыматты кайтарып берүү үчүн сервер сизге каалаган порт аркылуу туташышы керек. (Жалпысынан 1024төн жогору).

Бардык портторубуз жабык болгондуктан, 1024төн жогору портторду ачпасак, буга жетише албайбыз (Жаман идея). Мунун мааниси, мен өзүм орноткон туташуудан келип түшкөн бардык трафик кабыл алынат. Айтайын дегеним, негизинен мен баштаган байланыш.

Чыгуу эрежелерине киргизилгенде, бул каралып жаткан жабдууларга гана тиешелүү болот, эгерде биз ушул жабдууларды ушул байланыштарга уруксат берүү үчүн роутер катары колдонсок, анда биз ЧЫГЫШТЫ АЛГА деп өзгөртүшүбүз керек. Анткени трафик компьютер аркылуу өтөт, бирок ал тарабынан демилгеленбейт
Бул эрежелердин бардыгы өчүрүлүп-күйгүзүлгөндөн кийин жок кылынат, андыктан сценарийлерди демейки шартта башташ керек. Бирок биз муну кийинкиде көрөбүз

Бул маалымат сизге жакты деп үмүттөнөм. Кийинкиде мен NAT, Proxy жана Firewal үчүн скрипттер жөнүндө сөз кылам.


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

12 комментарий, өзүңүздүкүн калтырыңыз

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.

  1.   Rogelio pinto ал мындай деди:

    Көпчүлүк ишкерлер өзүлөрүнүн брандмауэрлерин өндүрүү үчүн ушул негизди алышат, ошондуктан рынокто кыналган линукс менен орнотулган брандмауэрлердин бренддери көп, алардын айрымдары жакшы, башкалары анчалык деле көп эмес.

  2.   Хебер ал мындай деди:

    Мыкты макала. Экинчи бөлүгүн чыдамсыздык менен күтөм.

  3.   Милтон ал мындай деди:

    Абдан жакшы түшүндүрмө, бул менин ишимдин ишенимдүү өкүлүн түшүнүүгө жардам берди. Рахмат сага

  4.   фаустод ал мындай деди:

    Салам Jlcmux,

    Мыкты, мага аябай жакты, башка тарап качан болот?

    Салам жана бөлүшкөнүңүз үчүн рахмат

    1.    @Jlcmux ал мындай деди:

      Комментарий үчүн рахмат.

      Башка бөлүгүн кечээ жөнөттүм, күндүн ичинде алар жарыялайт деп ойлойм.

      Салам.

  5.   Израиль ал мындай деди:

    Абдан жакшы макаланын досу @ Jlcmux, мен аны менен чынында эле тааныштым, анткени ал бир нече убакытка чейин болгон күмөндөрүмдү тактады, айтмакчы, макаланын булагынын китебин, Себастьен БОБИЛЛЬЕРДИ, ошондой эле slau2s жана азырынча бөлүшкүңүз келбейт. 2-бөлүктү караңыз, salu2s.

    1.    @Jlcmux ал мындай деди:

      Салам Израилге комментарий бергениңиз үчүн рахмат.

      Менин колумда физикалык формадагы китеп бар экен. Бирок мен бул шилтемени Google Китептеринен таптым. http://books.google.com.co/books?id=zxASM3ii4GYC&pg=PA356&lpg=PA356&dq=S%C3%A9bastien+BOBILLIER+Linux+%E2%80%93+Administraci%C3%B3n+del+sistema+y+explotaci%C3%B3n+de+los+servicios+de+red#v=onepage&q=

      Менимче, ал толугу менен.

  6.   Ариэл ал мындай деди:

    Абдан жакшы макала, мен дагы бир суроону кошумчалайм: эгерде ага арналган жабдыкка карата, эгерде бар болсо, роутер катары линукс колдонуунун артыкчылыгы эмнеде? Же жөн гана машыгуу үчүнбү? Мен атайын дистрибуция бар экендигин билем, бирок алар эски компьютерлерди сактап калуу же конфигурацияда көбүрөөк ийкемдүүлүктү камсыздоо керекпи, билбейм.

    1.    @Jlcmux ал мындай деди:

      Артыкчылыктары менен кемчиликтери сиз аны ишке ашыра турган сценарийден көз каранды деп ойлойм. Эмне үчүн сиз UTM же ушул сыяктуу нерселерди үйүңүзгө сатып албайсыз? А балким ага мүмкүнчүлүгү жок чакан бизнес үчүн дагы. Бул көнүгүү катары да пайдалуу, анткени мунун логикасын түшүнүүгө жардам берет жана сиз атайын FWall конфигурациясын жасай аласыз. Мындан тышкары, бул шаймандардын дээрлик бардыгы, аларда камтылган Linux.

      Салам.

  7.   Ариэл ал мындай деди:

    Салам, суроо, сиз тармактар ​​арасында ушундай маршрутташтыруу үчүн Linuxта "жасалма" интерфейс түзө аласызбы? (пакет издөө стили) виртуалдык машиналар менен иштөө үчүн? мисалы, эгерде менде eth0 (албетте, менин жалгыз карточкам бар болсо), мен дагы бир тармак түзүү үчүн eth1 түзө аламбы? Абдан жакшы тарбиячы!

    1.    элав ал мындай деди:

      Албетте, Linuxта виртуалдык интерфейстерди түзсө болот. Эгерде сизде eth0 болсо, анда сизде eth0: 0, eth0: 1, eth0: 2 ... ж.б.у.с.

  8.   chinoloco ал мындай деди:

    Ошентип, жакшы, бөлүшкөнүңүз үчүн рахмат