!_30
Membru
 Din: Ploiesti
Inregistrat: acum 20 ani
Postari: 716
|
|
Un mic tutorial celor nou veniti in acest domeniu , pe intelesul tuturor  service iptables stop/restart/status/start ( respectiv stoparea , restartarea statusu ( ce scrie prin cele trei tabele de decizi ) si pornirea iptables , bineinteles daca le avem compilate , instalate prin kernel).
Iptables sunt folosite pentur mai multe servici precum : translatare de adrese sursa sau destinatie (NAT) , port forwading sau pur si simplu rejectare sau forwadare de pachete .
Iptables folosesc default trei tabele : FILTER ( default table) , NAT si MANGLE.
FILTER : INPUT , OUTPUT , FORWARD. NAT : PREROUTING , POSTROUTING,OUTPUT MANGLE : PREROUTING , POSTROUTING , INPUT , OUTPUT
argumente folosite in structura comenzilor iptables 
-t ( specifica tabelul folosit : NAT , MANGLE sau FILTER , daca nu este specificat nici un tabel se considera default FILTER). -j ( pentru punerea anumitor concluzi , etc de genu : ACCEPT , REJECT , DROP , TTL) -F ( sterge toate regulile din tabel),-L ( afiseaza toate reglule din tabel) -A ( apendeaza regula , adica o pune la sfarsitul chainului respectiv cu reguli , chain este per example INPUT din tabelul FILTER). -D ( sterge regula) -R ( modifica regula) , -I ( insereaza regula) , -Z ( reseteaza la zero counterele , cu erori , cu pachtete trimise , primite , etc) -N ( nou chain) , -X (sterge chain ),-E ( rename chain) , chain = un set de reguli  -p procotocol ( tcp , udp , icmp), -s sursa , -d destinatie , -i interfata de intrare , -o interfata de iesire
pentur a specifica un port sau o grupa de orturi de la un anumit protocol dintre cele specificate mai sus ( TCP, UDP , ICMP) -p tcp --sport 22 ( port sursa ) sau --dport 22 ( port destinatie) sau mai multe protocoale -p udp --sport 22:100 sau --dport 45:130
pentru detalii man iptables 
pentru salvarea regulilor iptables-save -c -t ( din ce tabel vrem sa salvam) > fisier pentru restore : iptables-restore -c < fisier
Pentru marcarea unei anumite adrese MAC :
iptables -A INPUT -m mac --mac-source ....... ( match pachete cu sursa MAC denumita)
DNAT : rescrie destinatia pachetului :
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.1 --dport 80 -j DNAT --to-destination 10.10.10.3
aceasta are rolul de a retrimite toate datele care vin la 192.168.1.1 ( presupunem ca asta e serverul ) , care vin pe portul 80 ( HTTP ) , la IP-ul 10.10.10.3 , normla ca tot la portul 80 ( se schimba din header numai IP-ul destinatie nu si portul , TCP care este la Layer 4 ).
SNAT : rescrie sursa IP pachetului :
iptables -t nat -A POSTROUTING -p tcp -o eth0 - SNAT --to-source 195.13.12.1
( este folosit atunci cand avem una sau mai multe adrese publice si dorim sa folosim mai multe computere odata pe Internet de cate IP-uri publice avem )
P.S. daca la --to-source 193.1.1.1-193.1.1.4 avem mai multe IP-uri publiceun stream de pachete va avea mereu acelasi IP sursa , insa acelasi host , nu va avea de fiecare data aceasi adresa sursa translatata.
SAME : rescrie sursa IP pachet :
ceva de genu SNAT ( insa va incerca ca acelasi host , sa aiba mereu aceasi adresa sursa trasnaltata in afara , cu acelasi IP public , spre deosebire de SNAT),P.S. aceasta regula se pune in tabelul mangle.
IPTABLES -t mangle -A PREROUTING -s 192.168.1.0/24 -j SAME --to 193.1.1.1-192.1.1.4 ( la fel ca la SNAT se pot translata cu unul sau mai multe IP-rui publice , IP-urile interne din reteaua privata).
MASQUERADE : rescrie sursa IP pachet :
tot ca SNAT , insa difera prin faptul ca SNAT , are de la inceput ''pe veci'' pana schimba regula --to-source un Ip sau mai multe . pe cand MASQUERADE se va uita mereu la configuratie sa vada cu ce IP sa faca transatarea ( procesul mai lent insa folsitor cand adresa publica cu care se face trasnalatarea se schimba des , si nu stam sa o schimbam si noi la fel de des , per example dial-up (PPP , SLIP ) , sau chiar DHCP )).
iptabables -t nat -A POSTROUTING -p tcp -j MASQUERADE
NETMAP : rescrie sursa IP pachet :
ceva de genu SNAT , insa de aceasta data NAT se face unu la unu , default avem atatea IP-uri publice , cat private , ( bine , bine o sa spuneti , dar de ce nu punem ip-uri publice direct, sa zicem ca avem o retea de 10.000 de insi , stam sa schimbam la fiecare IP-uir , mai bine facem NETMAP , si se schimba 1:1 fiecare IP intern cu unul Public , asociat lui 
-dinnou ca si la SAME , aceasta regula se pune in tabelul mangle :
iptables -t mangle -A PREROUTING -s 192.168.1.0/24 -j NETMAP --to 193.1.2.0/24
REDIRECT : redirecteaza pachete primite pe un anume port de LOCALHOST ,catre al port de pe LOCALHOST , spre deosebire de DNAT , care redirectioneaza pachete primite pe un anume prt de server , pe acelasi port pe alta masina.
iptables -t nat -A PREROUTING -p tcp -dport 80 -j REDIRECT --to-port 8080 ( redirectionaza toate pachetele primite de server e portul 80 pe portul 8080 de pe acelasi server ).
-j REJECT diferit fata de -j DROP , REJECT trimite si mesaj de eroare pe cand DROP , arunca pachetul fara sa mai trimita nici un mesaj de eroare 
Daca aveti ISP-uri mai nesimtite , care vad ca folsoiti acelasi IP pe mai multe pc-uri ( dupa TTL stiti cand trece printr-un server , FW per example la noi care translateaza pachetele , schimba sursa sau destinatia pachetului se modifica TTL-ul default scade cu 1 ).
iptables -t mangle -A PREROUTING -i eth0 -j TTL --ttl-set 64 / --ttl-dec n / --ttl-inc n prima regula modifa TTL-ul inapoi la 64 , cealalta scade TTL-ul cu n , si cealalta creste TTL-ul cu n 
Deasemenea pentru a scapa , cum alti zic ''pingul morti'' cand se trimite d la un terminal 65000 de bytes pe secunda , putem sa numai aceptam aceste pachete ase de mari , defualt un pachet normal are de la 1400 la 150 de bytes :
iptables ... -m length --length 1400:1500 ( sunt aceptate numai pachete intre 1400 si 1500 de byte's).
Toate exemplele sunt demonstratii , pentru o ma buna functionare a acestui procedeu , nu ma fac responsabil pentru anumite greseli . Bafta !

_______________________________________ Portal educational :
Best art Nude Photos website
|
|