Ciekawy problem na KVM GAME z iptables

vps
zabezpieczenia
kvm
Tagi: #<Tag:0x00007f14a0788a28> #<Tag:0x00007f14a0788898> #<Tag:0x00007f14a0788668>

#1

Hejka, mam całkiem dziwny problem z przepuszczeniem adresu w iptables dla zablokowanego portu. Otóż zablokowałem port Query dla TS 10011
iptables -I INPUT -p tcp --dport 10011 -j DROP
Następnie pododawałem wyjątki dla adresów gametrackera czy swojego, wszystko działa.
Później chciałem odblokować port dla mojej strony www hostowanej u hekko, toteż go dodałem
iptables -I INPUT -s 195.242.116.62 -p tcp --dport 10011 -j ACCEPT
Okazało się że mimo dodania wyjątku, www nie może nawiązać połączenia przez querego. Co ciekawe dokładnie taką samą zasadę posiadam na innym vpsie i tam zasada ta działa poprawnie :thinking:

Ma ktoś może pomysł dlaczego tak się dzieje?


#2

Jako ciekawostkę dodam, że podobnie mam przy pakiecie ufw. Tylko w lvlup mam takie dziwne twory, odkryłem wczoraj.


#3

O to widzę że błąd nie występuje tylko u mnie, ciekawe w czym dokładnie leży problem


#4

Dodam też ciekawe zjawisko z którym też się nie spotkałem na innych vpsach. Po dodaniu zasady dla localhosta z dostępem do porta 10011 też wyjątek nie działał. Zaczął działać dopiero gdy dodałem zasade dla adresu ip serwera, chociaż wszędzie indziej działał na localhoscie :thinking: Ale to w sumie tylko taka mała zagwostka


#5

Na backendzie ufw w sumie też jest iptables, na jedno wychodzi.

Próbowaliście czy włączenie/wyłączenie whitelisty UDP coś zmienia w tej kwestii?


#6

Tak, dalej to samo, nie chce wpuścić adresu z hekko


#7

a spróbuj usunąć reguły wszystkie i sprawdź… czy działa potem

iptables -I INPUT -s 195.242.116.62 -p tcp --dport 10011 -j ACCEPT

i zobacz czy działa i potem

iptables -I INPUT -p tcp --dport 10011 -j DROP

#8

Jest jakiś szybki sposób żeby zapisać aktualne reguły i później je przywrócić? Żebym nie musiał ich znowu ustawać po tym teście


#9

zapisać gdzieś i najprościej zrobić jakiś prosty skrypt ( jak znajdę to podrzucę )

bo te reguły będą działać tylko w tej sesji a po reboot nic nie będzie :wink:

i dodać skrypt ( znaczy ścieżkę gdzie jest skrypt ) do /etc/rc.local


#10

Gdy wprowadziłem iptables -D INPUT -p tcp --dport 10011 -j DROP a więc usunąłem zasadę to serwer z hekko może nawiązać połączenie


#11

Nic a nic.


#12

Czyli jak wyczyścisz iptables to działa a jak przywrócisz reguły w iptables to znów nie działa?
W takim razie wygląda to na kwestię Twoich reguł, nie czegoś po stronie sieci lvlup czy OVH.


#13
#!/bin/sh

# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -t mangle -F
iptables -t mangle -X

# dodanie 
iptables -I INPUT -s 195.242.116.62 -p tcp --dport 10011 -j ACCEPT

# dodanie
iptables -I INPUT -p tcp --dport 10011 -j DROP

echo "Start Blokady..."

tak na szybko możesz coś jeszcze pokombinować :wink:


jeszcze mały dodatek :wink:

tak dla potomnych bo nie każdy korzysta z wiki :slight_smile:


#14

No tak, ale gdy dodaje
iptables -D INPUT -p tcp --dport 10011 -j DROP
A następnie wpuszczam swój adres powiedzmy taki jak poniżej
iptables -I INPUT -s 178.240.81.44 -p tcp --dport 10011 -j ACCEPT
To reguła działa i mogę połączyć się przez query, tak samo wszystkie inne adresy które dodam. Nie wpuszcza jedynie reguł które zawierają adresy serwera hostowanego u hello. Taka sama konfiguracja na innym vps wpuszcza bezproblemowo hekko


#15
#!/bin/sh

# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -t mangle -F
iptables -t mangle -X

# blokowanie
iptables -I INPUT -p tcp --dport 10011 -j DROP

# dodawanie zasad dla localhosta
iptables -A INPUT -i lo -j ACCEPT
iptables -I INPUT -s localhost -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 91.134.213.144 -p tcp --dport 10011 -j ACCEPT

# dodawanie zasad dla gametrackera
iptables -I INPUT -s 208.167.241.190 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 208.167.241.185 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 208.167.241.186 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 208.167.241.184 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 208.167.241.188 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 108.61.78.150 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 108.61.78.149 -p tcp --dport 10011 -j ACCEPT

# dodawanie zasad dla hekko
iptables -I INPUT -s 195.242.116.61 -p tcp --dport 10011 -j ACCEPT
iptables -I INPUT -s 195.242.116.62 -p tcp --dport 10011 -j ACCEPT

echo "Start Blokady..."

Niestety nawet z tym skryptem iptables nie wpuszcza strony od hekko, wszystkie inne wyjątki stąd działają. Dla sprawdzenia nawet wrzuciłem dwa adresy hekko, jeden wydobyty przez spingowanie domeny podłączonej do strony www oraz drugiego (61), który działał na innych vpsach


#16

ja stworzyłem sobie taki skrypt
firewall.sh

open_query(){
IP=$1
iptables -I DOCKER -s $IP -p tcp --dport 10011 -j ACCEPT
}
open_ssh(){
IP=$1
iptables -I INPUT -s $IP -p tcp --dport 22 -j ACCEPT
}
iptables -I DOCKER -p tcp --dport 10011 -j DROP
iptables -I INPUT -p tcp --dport 22 -j DROP
open_query 1.1.1.1
open_query 208.167.255.11
open_query 208.167.255.12
open_query 208.167.255.13
open_query 108.61.78.147
open_query 108.61.78.148
open_query 108.61.78.149
open_query 108.61.78.150
open_query 85.25.120.233
open_query 94.23.235.222
open_ssh 1.1.1.1

te 1.1.1.1 na swoje ip zmień


#17

Okej, udało się wreszcie rozwiązać problem. Okazało się że hekko coś pozmieniało i trzeba było wpuszczać inny adres niż ten który odpowiada za stronę (?), jedyne co mnie dziwi to to, że inny vps wpuścił normalny adres gdy ten tutaj miał problemy ale to już bez znaczenia.


#18

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.