|
iptalbes - jak ograniczyć połączenia
d0man199 - 22-03-2010 20:56
Czy można jakoś, przez iptables ograniczyć połączenia z jednego IP. Chodzi mi o to, aby iptables ucinało 100 połączeń na minutę z jednego IP.
Kolega zrobił skonfigurował mi iptables i po jego konfiguracji nie mogę z forum wysyłać masowej korespondencji (tzn. emailing). Czy ktoś mógłby doradzić, co zrobić?
mariaczi - 22-03-2010 21:18
Można ograniczyć różnie. Pokaż wynik iptables -L -vn iptables -t mangle -L -vn
d0man199 - 22-03-2010 21:24
iptables -L -vn Chain INPUT (policy DROP 26487 packets, 1477K bytes) pkts bytes target prot opt in out source destination 2194 260K ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:53 3693 336K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 0 0 REJECT tcp -- * * 211.93.80.117 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 222.255.15.123 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 213.210.219.250 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 213.210.219.250 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 5588 336K REJECT tcp -- * * 77.242.163.238 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 222.134.77.25 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 84.124.75.250 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 8092 635K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 2841 664K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 28 1204 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 191 9664 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:25 231 11700 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:110
Chain FORWARD (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 934K packets, 93M bytes) pkts bytes target prot opt in out source destination 3693 336K ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
iptables -t mangle -L -vn Chain PREROUTING (policy ACCEPT 1392K packets, 1730M bytes) pkts bytes target prot opt in out source destination
Chain INPUT (policy ACCEPT 1392K packets, 1730M bytes) pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 938K packets, 93M bytes) pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 938K packets, 93M bytes) pkts bytes target prot opt in out source destination
mariaczi - 22-03-2010 21:28
Pokaż jeszcze
iptables -t nat -L -vn
dla profilaktyki. W tym co podałeś nigdzie nie masz ograniczenia ilości połączeń na IP.
d0man199 - 22-03-2010 21:29
No właśnie, chciałem ustawić te ograniczenia.
iptables -t nat -L -vn
Chain PREROUTING (policy ACCEPT 34760 packets, 2019K bytes) pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 10108 packets, 731K bytes) pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 10108 packets, 731K bytes) pkts bytes target prot opt in out source destination
mariaczi - 22-03-2010 21:36
Można np. tak: ilość połączeń na sekundę na IP iptables -t mangle -A FORWARD -i eth0 -m mark --mark 0x30 -m hashlimit --hashlimit-mode srcip --hashlimit 30/s --hashlimit-name PPS-limitUL -j ACCEPT iptables -t mangle -A FORWARD -o eth0 -m mark --mark 0x30 -m hashlimit --hashlimit-mode dstip --hashlimit 60/s --hashlimit-name PPS-limitDL -j ACCEPT
lub ilość połączeń dla danego IP iptables -A FORWARD -p tcp --syn -s lokalne_ip -m connlimit --connlimit-above 400 -j REJECT iptables -A FORWARD -s lokalne_ip -d 0/0 -j ACCEPT
Oczywiście to przykłady, które musisz przystosować dla siebie. Powodzenia!
d0man199 - 22-03-2010 21:43
Bardzo dziękuję. A czy wiesz może o co chodzi z moim drugim problemem. tj. Kolega zrobił skonfigurował mi iptables i po jego konfiguracji nie mogę z forum wysyłać masowej korespondencji (ang. emailing). Czy ktoś mógłby doradzić, co zrobić?
Edycja: Jeszcze jedno... Mam forum oparte na skrycie phpbb i po konfiguracji iptables forum nie łączy się z phpbb i nie sprawdza czy jest jakaś nowa wersja tego skryptu. Czy ktoś wie o co chodzi?
mariaczi - 22-03-2010 22:10
Jeśli nie przedstawisz co i jak kolega skonfigurował (czyli wyniki poleceń o jakie prosiłem wcześniej, po "uruchomieniu" konfiguracji kolegi) to ze szklanej kuli wróżyć nie będziemy... Rozbiła się :)
d0man199 - 22-03-2010 22:21
A nie dałem wyżej?
iptables -L -vn Chain INPUT (policy DROP 26487 packets, 1477K bytes) pkts bytes target prot opt in out source destination 2194 260K ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:53 3693 336K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 0 0 REJECT tcp -- * * 211.93.80.117 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 222.255.15.123 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 213.210.219.250 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 213.210.219.250 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 5588 336K REJECT tcp -- * * 77.242.163.238 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 222.134.77.25 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 0 0 REJECT tcp -- * * 84.124.75.250 0.0.0.0/0 tcp dpt:22 reject-with icmp-port-unreachable 8092 635K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 2841 664K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 28 1204 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 191 9664 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:25 231 11700 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:110
Chain FORWARD (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 934K packets, 93M bytes) pkts bytes target prot opt in out source destination 3693 336K ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
iptables -t mangle -L -vn Chain PREROUTING (policy ACCEPT 1392K packets, 1730M bytes) pkts bytes target prot opt in out source destination
Chain INPUT (policy ACCEPT 1392K packets, 1730M bytes) pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 938K packets, 93M bytes) pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 938K packets, 93M bytes) pkts bytes target prot opt in out source destination
iptables -t nat -L -vn Chain PREROUTING (policy ACCEPT 34760 packets, 2019K bytes) pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 10108 packets, 731K bytes) pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 10108 packets, 731K bytes) pkts bytes target prot opt in out source destination
mariaczi - 22-03-2010 22:44
A nie dałem wyżej?
Przepraszam, zrozumiałem, że jest to Twoja konfiguracja a kolega ustawiał reguły inaczej.
Edit: jeszcze jedno... Mam forum oparte na skrycie phpbb i po konfiguracji iptables forum nie łączy się z phpbb i nie sprawdza czy jest jakaś nowa wersja tego skryptu. Czy ktoś wie ocb?
Musisz wiedzieć po jakim porcie ten aktualizator phpbb łączy się powrotnie do maszyny z której został uruchomiony i otworzyć ten port u siebie (dodać regułkę z -j ACCEPT dla tego portu jako dport) w tabeli filter w łańcuchu INPUT.
d0man199 - 22-03-2010 22:56
Dobrze, a co z z masowym wysyłaniem korespondencji? Wiesz może o co może chodzić? Czy w ogóle ktoś się domyśla o co chodzi?
fnmirk - 22-03-2010 23:20
a co z masowym wysyłaniem korespondencji?
To nazywa się chyba spam i raczej nie propagujemy takich usług.
d0man199 - 22-03-2010 23:21
Spam? A jak mam powiadomić użytkowników że forum znowu działa?
Edit: No panowe, bez przesady.
AdeBe - 22-03-2010 23:25
To nazywa się chyba spam i raczej nie propagujemy takich usług.
Skąd takie podejrzenie? Mi się nasuwa na myśl raczej lista mailingowa lub korespondencja do klientów firmy.
fnmirk - 22-03-2010 23:33
Administrator forum posiada odpowiednie narzędzia. Wystarczy przejrzeć opcje programu pocztowego lub pakietu biurowego OpenOffice.
grzesiek - 22-03-2010 23:33
To już temat na konfigurację poczty, bo reguły masz czyste, niczego nie blokują.
d0man199 - 23-03-2010 19:53
grzesiek, dziękuję za odpowiedź. mariaczi, również bardzo dziękuje za pomoc.
Dodane: Przepraszam, że post pod postem, ale chce żeby ktoś to zobaczył. Jak można wyłączyć i włączyć z powrotem na tych samych ustawieniach iptables?
mariaczi - 23-03-2010 20:37
Jak już będziesz miał skonfigurowane iptables to możesz skorzystać z iptables-save
oraz iptables-restore
grzesiek - 23-03-2010 21:24
To ty nie masz skrypta? Powinieneś mieć taki startowy w /etc/init.d/firewall.sh
d0man199 - 23-03-2010 22:31
Ta masowa korespondencja (emailing) to iptables musi blokować... teraz dałem takie komendy # iptables -X # iptables -t nat -F # iptables -t nat -X # iptables -t mangle -F # iptables -t mangle -X # iptables -P INPUT ACCEPT # iptables -P FORWARD ACCEPT # iptables -P OUTPUT ACCEPT
I emailie wszystkie doszły do mnie (i tylko do mnie bo wysyłałem na próbe). Ktoś wie może jak będzie można odblokować?
grzesiek - 24-03-2010 09:24
5588 336K REJECT tcp -- * * 77.242.163.238 0.0.0.0/0
a co do za host?
To pokaż tego firewalla, bo w tym listingu to chyba czegoś brakuje, nie ma tam jeszcze jednej kolumny na końcu z opcjami?
mariaczi - 24-03-2010 09:41
grzesiek w podanych listingach jest wszystko. Użyj tylko suwaka w polu "kod" :)
grzesiek - 24-03-2010 12:51
:) no tak hehehe Więc 191 9664 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:25
Tu masz, że port docelowy 25 jest przepuszczany, a czy nie masz SSL na poczcie przypadkiem, przepuść jeszcze port 465. Masz domyślną politykę na DROP i wiele pakietów zostało odrzuconych ale ty nie wiesz jakie. Aby to wiedzieć ustaw na samym końcu regułę która będzie logować to co jest odrzucane. Wtedy wysyłasz pocztę i patrzysz w logi co nie poszło. Potem już ta reguła będzie zbędna. Pokaż wynik polecenia
netstat -ntlp
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|