13 Viðtalsspurningar um Linux iptables eldvegg


Nishita Agarwal, tíður Tecmint-gestur deildi reynslu sinni (Spurning og svar) með okkur varðandi atvinnuviðtalið sem hún var nýbúin að veita í hýsingarfyrirtæki í einkaeigu í Pune á Indlandi. Hún var spurð margra spurninga um margvísleg efni en hún er sérfræðingur í iptables og hún vildi deila þessum spurningum og svari þeirra (hún gaf) tengdum iptables til annarra sem gætu verið að fara í viðtal á næstunni.

Allar spurningarnar og svar þeirra eru endurskrifaðar út frá minningu Nishita Agarwal.

\Sælir vinir! Ég heiti Nishita Agarwal. Ég hef stundað BA gráðu í tæknifræði. Sérsvið mitt er UNIX og afbrigði af UNIX (BSD, Linux) heillar mig síðan ég heyrði það. Ég hef 1+ ára reynslu í geymslu. Ég var að leita að vinnuskipti sem endaði með hýsingarfyrirtæki í Pune á Indlandi.“

Hér er safn af því sem ég var spurður að í viðtalinu. Ég hef aðeins skráð þessar spurningar og svar þeirra sem tengdust iptables byggt á minni mínu. Vona að þetta hjálpi þér við að sprunga viðtalið þitt.

Svar : Ég hef notað iptables í nokkuð langan tíma og ég er meðvitaður um bæði iptables og eldvegg. Iptables er forritaforrit að mestu skrifað á C forritunarmáli og er gefið út undir GNU General Public License. Skrifað fyrir kerfisstjórnunarsjónarmið, nýjasta stöðuga útgáfan ef iptables 1.4.21.iptables geta talist eldveggur fyrir UNIX eins stýrikerfi sem hægt er að kalla íptables/netfilter, réttara sagt. Stjórnandinn hefur samskipti við iptables í gegnum console/GUI framendaverkfæri til að bæta við og skilgreina eldveggsreglur í fyrirfram skilgreindar töflur. Netfilter er eining sem er byggð inni í kjarna sem sinnir því að sía.

Firewalld er nýjasta útfærslan á síunarreglum í RHEL/CentOS 7 (gæti verið útfært í öðrum dreifingum sem ég veit kannski ekki um). Það hefur komið í stað iptables tengi og tengist netfilter.

Svar : Þó að ég hafi notað bæði GUI byggt framendaverkfæri fyrir iptables eins og Webmin í GUI og beinan aðgang að iptables í gegnum stjórnborðið.Og ég verð að viðurkenna að beinn aðgangur að iptables í gegnum Linux stjórnborðið gefur notanda gríðarlegan kraft í formi meiri sveigjanleika og betri skilnings á því sem er að gerast í bakgrunninum, ef ekki eitthvað annað. GUI er fyrir nýliða stjórnanda á meðan stjórnborðið er fyrir reyndan.

Svar : iptables og firewalld þjóna sama tilgangi (Packet Filtering) en með mismunandi nálgun. iptables skola allar reglurnar sem settar eru í hvert sinn sem breyting er gerð ólíkt eldvegg. Venjulega er staðsetning iptables stillingar á '/etc/sysconfig/iptables' en stillingar eldveggs liggur á '/etc/firewalld/', sem er sett af XML skrám.Stilling á XML byggt eldvegg. er auðveldara samanborið við uppsetningu iptables, en sama verkefni er hægt að ná með því að nota bæði pakkasíunarforritið, þ.e. iptables og eldvegg. Firewalld keyrir iptables undir hettunni ásamt eigin skipanalínuviðmóti og stillingarskrá sem er XML byggð og sagði hér að ofan.

Svar : Ég kannast við iptables og það virkar og ef það er ekkert sem krefst kraftmikillar þáttar eldveggsins virðist engin ástæða til að flytja allar stillingar mínar úr iptables yfir í eldvegg.Í flestum tilfellum, hingað til hef ég aldrei séð iptables búa til vandamál. Einnig segir almenna reglan um upplýsingatækni „af hverju laga ef hún er ekki biluð“. Hins vegar er þetta mín persónulega hugsun og ég myndi aldrei nenna að innleiða eldvegg ef stofnunin ætlar að skipta út iptables fyrir eldvegg.

Hvaða töflur eru notaðar í iptables? Gefðu stutta lýsingu á töflunum sem notaðar eru í iptables og keðjunum sem þær styðja.

Svar : Takk fyrir viðurkenninguna. Farið er yfir í spurningarhluta, það eru fjórar töflur notaðar í iptables, þær eru:

  1. Nat borð
  2. Mangle Table
  3. Síutafla
  4. Hrá borð

Nat-tafla: Nat-tafla er fyrst og fremst notuð fyrir netfangsþýðingu. Pakkar með grímugerð fá IP tölu þeirra breytt samkvæmt reglum töflunnar. Pakkar í straumnum fara aðeins einu sinni yfir Nat Table. þ.e., Ef pakki úr pakkaþotu er dulbúinn munu restin af pakkningunum í straumnum ekki fara í gegnum þessa töflu aftur. Mælt er með því að sía ekki í þessari töflu. Keðjur sem studdar eru af NAT Table eru PREROUTING keðja, POSTROUTING keðja og OUTPUT keðja.

Mangle Table: Eins og nafnið gefur til kynna, þjónar þetta borð til að mögla pakkana. Það er notað fyrir sérstakar pakkabreytingar. Það er hægt að nota til að breyta innihaldi mismunandi pakka og hausa þeirra. Ekki er hægt að nota Mangle borð fyrir Masquerading. Stuðlar keðjur eru PREROUTING Chain, OUTPUT Chain, Forward Chain, INPUT Chain, POSTROUTING Chain.

Síutafla: Síutafla er sjálfgefin tafla sem notuð er í iptables. Það er notað til að sía pakka. Ef engar reglur eru skilgreindar er Filter Tafla tekin sem sjálfgefin tafla og síun er gerð á grundvelli þessarar töflu. Stuðlar keðjur eru INPUT Chain, OUTPUT Chain, FORWARD Chain.

Raw Tafla: Raw Tafla kemur til framkvæmda þegar við viljum stilla pakka sem voru undanþegnir fyrr. Það styður PREROUTING Chain og OUTPUT Chain.

Svar : Eftirfarandi eru markgildin sem við getum tilgreint í target í iptables:

    1. SAMÞYKKJA: Samþykkja pakka
    2. BÖÐRÖÐ: Paas pakki í notendarými (staður þar sem forrit og ökumenn eru)
    3. DROP: Slepptu pökkum
    4. RETURN: Skilaðu stjórninni í hringingarkeðju og hættu að framkvæma næsta sett af reglum fyrir núverandi pakka í keðjunni.

    Hvernig muntu athuga iptables rpm sem þarf til að setja upp iptables í CentOS?.

    Svar : rpm iptables eru innifalin í venjulegri CentOS uppsetningu og við þurfum ekki að setja það upp sérstaklega. Við getum athugað snúninga á mínútu sem:

    # rpm -qa iptables
    
    iptables-1.4.21-13.el7.x86_64
    

    Ef þú þarft að setja það upp gætirðu gert namm til að fá það.

    # yum install iptables-services
    

    Svar : Til að athuga stöðu iptables geturðu keyrt eftirfarandi skipun á flugstöðinni.

    # service iptables status			[On CentOS 6/5]
    # systemctl status iptables			[On CentOS 7]
    

    Ef það er ekki í gangi gæti skipunin hér að neðan verið keyrð.

    ---------------- On CentOS 6/5 ---------------- 
    # chkconfig --level 35 iptables on
    # service iptables start
    
    ---------------- On CentOS 7 ---------------- 
    # systemctl enable iptables 
    # systemctl start iptables 
    

    Við gætum líka athugað hvort iptables einingin sé hlaðin eða ekki, eins og:

    # lsmod | grep ip_tables
    

    Svar : Núverandi reglur í iptables geta verið endurskoðaðar eins einfaldar og:

    # iptables -L
    

    Sýnishorn úttak

    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination         
    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
    ACCEPT     icmp --  anywhere             anywhere            
    ACCEPT     all  --  anywhere             anywhere            
    ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
    REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
    
    Chain FORWARD (policy ACCEPT)
    target     prot opt source               destination         
    REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
    
    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination
    

    Svar : Til að skola tiltekna iptables keðju geturðu notað eftirfarandi skipanir.

     
    # iptables --flush OUTPUT
    

    Til að skola allar iptables reglurnar.

    # iptables --flush
    

    Svar : Hægt er að ná ofangreindri atburðarás einfaldlega með því að keyra skipunina hér að neðan.

    # iptables -A INPUT -s 192.168.0.7 -j ACCEPT 
    

    Við gætum haft venjulegt skástrik eða undirnetsgrímu í upprunanum sem:

    # iptables -A INPUT -s 192.168.0.7/24 -j ACCEPT 
    # iptables -A INPUT -s 192.168.0.7/255.255.255.0 -j ACCEPT
    

    Svar : Vonandi að ssh sé í gangi á höfn 22, sem er líka sjálfgefna höfnin fyrir ssh, getum við bætt reglu við iptables sem:

    Til að SAMÞYKKJA tcp pakka fyrir ssh þjónustu (gátt 22).

    # iptables -A INPUT -s -p tcp --dport 22 -j ACCEPT 
    

    Til að HAFA tcp pökkum fyrir ssh þjónustu (gátt 22).

    # iptables -A INPUT -s -p tcp --dport 22 -j REJECT
    

    Til að NEJA tcp pökkum fyrir ssh þjónustu (gátt 22).

     
    # iptables -A INPUT -s -p tcp --dport 22 -j DENY
    

    Til að SLEPPA tcp pakka fyrir ssh þjónustu (gátt 22).

     
    # iptables -A INPUT -s -p tcp --dport 22 -j DROP
    

    Svar : Jæja, það eina sem ég þarf að nota er 'multiport' valmöguleikinn með iptables fylgt eftir af gáttanúmerum sem á að loka á og ofangreind atburðarás er hægt að ná í einu lagi.

    # iptables -A INPUT -s 192.168.0.6 -p tcp -m multiport --dport 21,22,23,80 -j DROP
    

    Skrifaðar reglur er hægt að athuga með því að nota skipunina hér að neðan.

    # iptables -L
    
    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination         
    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
    ACCEPT     icmp --  anywhere             anywhere            
    ACCEPT     all  --  anywhere             anywhere            
    ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
    REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
    DROP       tcp  --  192.168.0.6          anywhere             multiport dports ssh,telnet,http,webcache
    
    Chain FORWARD (policy ACCEPT)
    target     prot opt source               destination         
    REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
    
    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination
    

    Spyrjandi: Þetta var allt sem ég vildi spyrja. Þú ert dýrmætur starfsmaður sem við viljum ekki missa af. Ég mun mæla með nafni þínu við HR. Ef þú hefur einhverjar spurningar máttu spyrja mig.

    Sem frambjóðandi vildi ég ekki drepa samtalið og haltu því áfram að spyrja um verkefnin sem ég myndi takast á við ef ég yrði valin og hver eru önnur opnun í fyrirtækinu. Svo ekki sé minnst á HR umferð var ekki erfitt að sprunga og ég fékk tækifærið.

    Einnig vil ég þakka Avishek og Ravi (sem ég er vinur síðan lengi) fyrir að gefa sér tíma til að skjalfesta viðtalið mitt.

    Vinir! Ef þú hefðir veitt slíkt viðtal og þú myndir vilja deila viðtalsupplifun þinni með milljónum Tecmint lesenda um allan heim? sendu síðan spurningar þínar og svör til [email  eða þú getur sent inn viðtalsupplifun þína með því að nota eftirfarandi eyðublað.

    Þakka þér fyrir! Haltu í sambandi. Láttu mig líka vita ef ég hefði getað svarað spurningu réttara en ég gerði.