Aciu. "ABLomas" <abl@ablomas.com> wrote in message news:ikgnom$coj$1@trimpas.omnitel.net... > On 2011.02.28 15:20, Info wrote: >> Ar yra kazkoks budas uzdropinti visus ip adresus, iskyrus tik lietuvos, >> pvz. noriu uzblokuoti 80 porta, kad tik is lietuvos ip galetu jungtis 80 >> portu. > > Na tai žinoma kad yra.... > >> kokia iptables taisykle naudoti... > > Vien su iptables išsiversi, bet paskui užsipi$i mantainint.... > > O ne paprasčiau yra kad ir su kokiu perlo skriptuku, kuris konvertina iš > RIPE paduodamo formato pasigamint ipset rinkinį, kurį paskui jau paprasta > tvarkyt? Pvz. kad ir taip: > > #!/usr/bin/perl > use Net::Netmask; > > my $ipset = "/usr/sbin/ipset"; # Naudojau ir savo kompilinta versija > my $lt_net = "lt_networks"; # potinklio, kur bus sudedami visi lt > networkai pavadinimas > my $net = "ALLOCATED PA"; # Skiriamasis pozymis RIPE DB > > system "$ipset --destroy $lt_net"; > system "$ipset --create $lt_net nethash"; > open ALIST, "<", "alloclist.txt" or die $!; > while(<ALIST>) > { > $text .= $_; > } > close(ALIST); > $ltnet= $1 if $text =~ m|^lt\.(.*)^lt\.|ms; > @nets = split(/\n/, $ltnet); > foreach (@nets) { > if ($_ =~ m/$net$/){ > split; > $sysnet = new Net::Netmask ($_[1]); > system "$ipset --add $lt_net $sysnet"; > } > } > > (sąrašus gali iš RIPE FTP pasiimt su wget, ar kad ir tuo pačiu perl'u: > Use LWP::Simple; > getstore("ftp://ftp.ripe.net/pub/stats/ripencc/membership/alloclist.txt", > "alloclist.txt") > ) > > O toliau jau paprasta... > > iptables -I OUTPUT -p icmp -m set --set \! lt_networks dst -j > LOG --log-prefix "NOT LT NET: " > iptables -I OUTPUT -p icmp -m set --set lt_networks dst -j > LOG --log-prefix "LT NETWORK: " > > Ką daryt su gatavom ipset rūšiavimo taisyklėm manau susiprasi...