Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2023-09-15 13:11:43

  time2deb - Nowy użytkownik

time2deb
Nowy użytkownik
Zarejestrowany: 2023-09-15

iptables - PREROUTING

Dzień dobry wszystkim forumowiczom :)

długo wahałem się z postem, ale poległem i czegoś nie rozumiem lub nie dostrzegam, stąd prośba o pomoc, wskazówki etc.

Po lekturze forum i blogów niektórych userów z tego portalu postanowiłem zainteresować się w końcu modułem ipset i bardziej szczegółowym uszczelnieniem firewalla.
Wkleję fragment swojego firewalla i poproszę o wskazówki i pomoc.

Łańcuchy OUTPUT wypuszczają wszystko z routera, FORWARD na razie wypuszcza z podsieci wszystko bez ograniczeń, więc pomijam te fragmentu kodu.
Więc sprawa wygląda tak. Jestem zalogowany przez ssh z wewnątrz sieci na interfejs LAN routera i tak wygląda początek skryptu:

Kod:

iptables -F
iptables -F -t nat
iptables -F -t mangle
iptables -F -t filter
iptables -F -t raw

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

Teraz tworzę set:

Kod:

ipset create getout hash:net family inet maxelem 1000 timeout 86400

3 porty wystawione na interfejsie WAN: 8001, 8002, 51025

Zatem chciałbym łapać wcześniej intruzów zanim dotrą do łańcucha INPUT:

Kod:

iptables -t raw -A PREROUTING -i mojEthWAN -p tcp -s 0/0 --sport 1024: -d mojZewIP -m multiport ! --dports 8001,8002,51025 -j SET --add-set getout src --exist --timeout 86400

OK, można powiedzieć, że set działa, intruzi łapani, ale są dwa ale i nie wiem, gdzie robię błąd.
Przy powyższej regule jak połączę się z LANu z przekierowaniem ssh (tzw. bieda vpn) poleceniem

Kod:

ssh -fN -L 13389:192.168.1.10 user@IP_WAN_innego_serwera -p 51025

lub poprzez odpowiednie ustawienia w putty, to owszem, połączenie ssh nastąpi, ale ten IP_WAN_innego_serwera ląduje w secie, ale RDP działa bez problemu.
A jeżeli dołożę do tego

Kod:

iptables -t raw -A PREROUTING -i mojEthWAN -m set --match-set getout src -j DROP

to odcinam sobie dostęp do sieci internet.

Doradźcie proszę co robię nie tak.
Pozdrawiam ;)

Offline

 

#2  2023-09-15 15:17:16

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: iptables - PREROUTING


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2023-09-15 18:07:08

  time2deb - Nowy użytkownik

time2deb
Nowy użytkownik
Zarejestrowany: 2023-09-15

Re: iptables - PREROUTING

No właśnie na tym się wzorowałem i jak widać popełniam gdzieś błąd. Naprowadzisz?
Poczytam raz jeszcze i spróbuje zrobić inaczej, Wkleję tu, sprawdzisz?

Ostatnio edytowany przez time2deb (2023-09-15 18:25:19)

Offline

 

#4  2023-09-16 15:57:37

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: iptables - PREROUTING

Czego nie rozumiesz?

Kod:

ipset create wypad hash:net maxelem 65535 timeout 3600
iptables -t raw  -A PREROUTING -m set --match-set wypad src -j SET --add-set wypad src --exist --timeout 86400
iptables -t raw  -A PREROUTING ! -i lo -p tcp -m multiport --dports 22,113,445,1433,1512,2175,2176,3306,5432 -j SET --add-set wypad src --timeout 3600
iptables -t raw  -A PREROUTING -m set --match-set wypad src -j DROP

A tu masz przykład działania na interfejsie z publicznym IP podpiętym do domeny internetowej:
https://forum.dug.net.pl/viewtopic.php?pid=269383#p269383

EDIT:
Dziś na moim routerku:

Kod:

# Router ###  23:30  Router : ~ 

 root ~> date
Sat Sep 16 23:32:09 CEST 2023

# Router ###  23:30  Router : ~ 

 root ~> ipset list wypad
Name: wypad
Type: hash:net
Revision: 7
Header: family inet hashsize 1024 maxelem 65535 timeout 3600 bucketsize 12 initval 0xc0d18bd7
Size in memory: 31424
References: 6
Number of entries: 110
Members:
41.77.138.90 timeout 48080
92.118.39.246 timeout 84463
140.249.43.69 timeout 70331
92.63.197.90 timeout 85737
111.192.186.118 timeout 73043
54.185.59.80 timeout 3449
79.124.62.86 timeout 85832
92.63.196.54 timeout 72726
45.128.232.125 timeout 1230
92.63.197.97 timeout 85817
185.233.19.242 timeout 82709
134.122.19.182 timeout 523
185.91.47.2 timeout 49123
132.148.76.25 timeout 79233
103.228.74.153 timeout 72067
45.88.90.23 timeout 33189
68.178.163.67 timeout 3571
62.171.152.61 timeout 22892
194.180.49.165 timeout 78722
141.98.7.19 timeout 59240
222.215.159.14 timeout 9736
89.248.165.252 timeout 59574
185.103.44.2 timeout 48825
45.124.136.76 timeout 22589
82.157.53.252 timeout 70519
157.0.133.66 timeout 70167
45.136.162.2 timeout 49883
185.103.45.2 timeout 49704
45.58.118.202 timeout 49226
80.66.83.77 timeout 85142
185.45.195.12 timeout 74452
45.136.163.2 timeout 49972
158.58.172.238 timeout 50173
193.35.18.15 timeout 85571
205.210.31.242 timeout 72476
91.191.209.198 timeout 67017
89.248.163.200 timeout 83389
209.58.168.107 timeout 48740
31.220.3.140 timeout 12705
183.136.225.46 timeout 69787
167.94.145.89 timeout 35969
183.136.225.44 timeout 18332
79.124.62.62 timeout 78695
185.169.64.13 timeout 48791
141.98.11.60 timeout 61028
167.94.146.31 timeout 3503
5.10.250.241 timeout 13380
152.89.198.244 timeout 71632
89.248.168.42 timeout 86099
34.165.37.120 timeout 84079
79.124.62.82 timeout 86146
198.57.44.221 timeout 25816
178.164.27.6 timeout 15747
185.103.46.2 timeout 48651
185.233.19.198 timeout 61516
128.90.129.134 timeout 19906
185.103.47.2 timeout 49792
183.237.175.97 timeout 52871
193.35.18.27 timeout 43086
185.91.46.2 timeout 49598
172.104.209.214 timeout 52488
193.163.125.19 timeout 86055
94.136.160.2 timeout 50076
185.36.81.33 timeout 84234
183.136.225.9 timeout 65817
176.111.174.30 timeout 39741
198.235.24.167 timeout 9352
23.95.94.202 timeout 68559
183.136.225.32 timeout 74244
51.222.253.20 timeout 23350
78.109.28.237 timeout 47512
162.216.243.218 timeout 81596
185.224.128.184 timeout 996
202.55.132.102 timeout 739
179.43.191.194 timeout 83351
62.204.41.80 timeout 81986
119.17.228.18 timeout 31708
192.241.195.40 timeout 974
104.167.222.2 timeout 74593
176.111.174.29 timeout 38869
47.245.41.175 timeout 55830
194.26.135.123 timeout 85076
220.171.91.61 timeout 2308
94.136.163.2 timeout 48961
179.97.113.150 timeout 51108
51.11.244.129 timeout 23137
77.90.185.157 timeout 86389
118.123.105.93 timeout 81600
64.62.197.141 timeout 63933
121.5.90.216 timeout 55881
94.136.161.2 timeout 49343
217.107.34.211 timeout 50154
152.32.170.17 timeout 524
134.209.42.3 timeout 38985
95.214.55.115 timeout 77876
194.165.16.76 timeout 62883
80.66.83.52 timeout 83648
167.99.198.163 timeout 56338
79.124.62.130 timeout 77010
92.63.197.153 timeout 66185
43.135.159.156 timeout 25840
185.161.248.87 timeout 80187
62.122.184.251 timeout 69481
79.124.62.78 timeout 85780
45.136.160.2 timeout 48930
193.163.125.11 timeout 57250
109.205.213.94 timeout 81379
177.250.26.179 timeout 72769
45.136.161.2 timeout 50394
139.180.198.122 timeout 37590

xD

Ostatnio edytowany przez Jacekalex (2023-09-17 00:25:15)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2023-09-17 23:12:11

  time2deb - Nowy użytkownik

time2deb
Nowy użytkownik
Zarejestrowany: 2023-09-15

Re: iptables - PREROUTING

Ano tego:

Kod:

#ipset create getout hash:net family inet maxelem 2700 timeout 14400
# iptables -t raw -S
-P PREROUTING ACCEPT
-P OUTPUT ACCEPT
-A PREROUTING -m set --match-set getout src -j SET --add-set getout src --exist --timeout 14400
-A PREROUTING -d moje_zewnetrzne_IP -i mójWAN_interfejs -p tcp --sport 1024:65535 -m multiport ! --dports 8001,8002,51025 -j SET --add-set getout src --exist --timeout 14400
-A PREROUTING -i mójWAN_interfejs -m set --match-set getout src -j DROP

Idea ma być taka, że porty na moim routerze 8001,8002,51025 mają być dostępne z zewnątrz dla określonych IP, które mam zdefiniowane w INPUT.
Ale w powyższej konfiguracji nie mogę się połączyć z LANu jak i bezpośrednio z routera na inne zewnętrzne IP na te same porty 8001,8002,51025.
I nie mogę dojść, gdzie mam błąd.

PS. No i za jakiś czas brak internetu z LANu.
Poddaję się z tą tablicą i łańcuchem.

Ostatnio edytowany przez time2deb (2023-09-17 23:44:42)

Offline

 

#6  2023-09-21 20:12:05

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: iptables - PREROUTING

Masz w iptables opcję multiport to wyłącz z DROP te porty, które potrzebujesz otwarte.

Kod:

-A PREROUTING -d moje_zewnetrzne_IP -i mójWAN_interfejs -p tcp --sport 1024:65535 -m multiport ! --dports 8001,8002,51025 -j SET --add-set getout src --exist --timeout 14400

Kod:

 --sport 1024:65535

To nie jest potrzebne do niczego.

Kod:

iptables -t raw -A PREROUTING -p tcp -m multiport ! --dports 5222,5269 -m set --match-set wypad src -j DROP

Tak u mnie w routerze wygląda dropowanie banowanych adresów z ipset wypad.

A jak masz jakieś adresy, które chcesz wpuszczać, to przed regułami z celem SET je po prostu wpuść, cel ACCEPT kończy przetwarzanie pakietu, i nie będą wpadały do ipseta blokującego.


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#7  2023-09-22 18:29:15

  time2deb - Nowy użytkownik

time2deb
Nowy użytkownik
Zarejestrowany: 2023-09-15

Re: iptables - PREROUTING

Sprawdzę w weekend Twoją sugestię.
Zastanawiam się dlaczego wg mojego listingu firewalla traciłem połączenie z netem z LANu?

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)