Fórum Root.cz
		Hlavní témata => Sítě => Téma založeno: TkTz  10. 03. 2011, 13:45:49
		
			
			- 
				Dobry den,
 
 chci skryt pomoci iptables port MYSQL verejnemu internetu tak, aby na nej mohly pristupovat pouze tri ip adresy (tri webservery).
 
 Mam v shellovem skriptu: (promenne si prosim domyslete,IP jsou jako priklad)
 
 #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --source 111.222.333.444 --dport 3306 -j
 #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --source 222.111.222.111 --dport 3306 -j
 #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --source 333.111.222.000 --dport 3306 -j
 pristup z 111.222.333.444 a z 222.111.222.111 ve stejne siti jako db server FUNGUJE.
 ale nefunguje uz pristup ze 333.111.222.000 NEFUNGUJE.
 
 Prosim muzete mi poradit , co delam spatne ? Neexistuje neco nejaky multi-access-ip prepinac ?
 
 Dekuji za rady
 S pozdravem TkTz
- 
				Přistupuje ten třetí server ze stejného rozhraní? Nemá nějaký firewall on? Není za NATem?
 
 Můžete využít značkování packetů (MARK) podle IP adres a potom to povolovat podle oné značky. Ale pokud tyhle stroje mají přistupovat jenom na jednu službu, je to zbytečné
- 
				Ja si zvykl pouzivat spis tuhle cestu:
 iptables -N MySQLsip
 iptables -A MySQLsip -s 1.2.3.4 -j ACCEPT
 iptables -A MySQLsip -s 1.2.3.5 -j ACCEPT
 iptables -A MySQLsip -s 4.3.2.1 -j ACCEPT
 
 iptables -A INPUT -i $INET_IFACE -p tcp --dport 3306 -j MySQLsip
 
 Ale muze za to nejspis fakt, ze k MARKovani jsem se jeste nedopracoval (jeste jsem nemel duvod jej pouzit).
 
 Jinak k puvodnimu dotazu mam stejnou otazku jako Sten. Tedy za predpokladu ze behem "zprikladovani" nedoslo k zakryti nejake jine botky.
- 
				1) Pravidlo, ktore pouzivate nie je kompletne
 2) Kolko sietovych rozhrani na db server?
 3) troubleshooting? :)
- 
				TO Sten: server pristupuje pres stejne rozhrani, s jeho firewallem by promel byt nemel protoze kdyz vypnu vsechna pravidla v iptables tak se ten server na DB normalne pripoji, za NATem nevim jestli je avsak kdyz dam na tu IP traceroute tak to po 13. stanici zacne vypisovat hvezdicky .
 
 TO kmarty: tva cesta nepomohla , stejny problem jako s mou konfiguraci . treti server se nepripoji .
 
 Jsem z toho dosti nestastny , google nic neporadi a otevreny  mysql port celemu svetu zrovna neni stastne reseni.
 
- 
				Takze zkousel jsme to z vice verejnych IP adres a pokazde to pristup na port 3306 projde . Takze prikaz je "relativne" spravne .. chyba je jinde , dali mi asi spatnou ip adresu ... 
 
 Nemuze to byt zpusobeno tim , ze tam maji VPS hosting ?
- 
				Clovek by rek ze bude vedet vlastni IP adresu. Ale coz. OK, prepokladejme ze neni moznost to zjistit.
 
 Hele, sice to bude mozna vypadat divne, ale tytez iptables lze vyuzit k tomu aby ses dozvedel pod kterou IP adresou se to k tobe snazi vlezt.
 Pridej si dalsi pravidlo:
 iptables -I INPUT -p tcp --dport 3306 -j LOG --log-prefix WhosThere:
 (radsi hned na zacatek, aby bylo vylouceno ze to odchytava nejaky jiny pravidlo)
 
 jukej do /var/log/kern.log (resp. tam kam si posilas kern.warning nebo jakym levelem to vlastne iptables loguji) a udelej pokus o pripojeni z onoho stroje. V logu bys mel videt, ktera IP adresa se o to snazi a s trochou stesti by to mela byt IP adresa toho stroje.
 I zadny vypis bude informace (aspon budes vedet ze ten stroj ma blokovane odchozi spojeni a proto to nejde).
 
 P.S.: Ten muj priklad byla reakce na Stenovo reseni pres MARKovani, ne ze to nutne musis delat podle mne :-).
 P.P.S.: VPS, neVPS, to na to vliv nema (nemelo by. Jestli neco blokuji/natuji/cokoliv, pak to neni vlastnost VPS, ale rozhodnuti toho poskytovatele VPS).
- 
				kmarty : dik vyzkousim to tedy logovat , jsem z toho sam jelen :) 
 IP adresu nemuzu vedet s jistotou , je to nejspis na webhostingu a hostuji to cizi lide , kteri pristupuji do nasi db kde maj data. Takze se chyba mohla vloudit i tam ...
 Kazdopadne dekuji , zkusim to logovat anebo vyresit primo s tim kdo jim poskytuje webhosting ..
 
- 
				tak zadna jine ip nez me zname tam nejsou , takze to opravdu nejak blokuji .. 
 
 Dekuji za napady a informace