[SOLVED] Iptables odblokowanie strony tylko dla wybranego usera

Instalacja i konfiguracja oprogramowania sieciowego.
d80k
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 cze 2008, 17:18
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

[SOLVED] Iptables odblokowanie strony tylko dla wybranego usera

Post autor: d80k »

Witam,

Musze zablokować dostęp do jednej strony wszystkim poza trzem użytkownikom

iptables -t nat -A PREROUTING -s 0/0 -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination INNY_ADRES

powyższa regułka przekierowuje mi użytkowników do strony z odpowiednim komunikatem.
Jak teraz odblokować dostęp dla wybranego użytkownika? Próbowałem różnych regułek ale cały czas mam przekierowanie dla wszystkich

Pozdawiam
D80k

PS. Przy okazji jak ktoś ma dobry i sprawdzony opis jak zainstalować i skonfigurować IPP2P i Layer7 to również poproszę bo przy tym też siedzę .
Awatar użytkownika
nithathak
Wytworny Kaczor
Wytworny Kaczor
Posty: 330
Rejestracja: 07 kwie 2007, 19:29
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: Iptables odblokowanie strony tylko dla wybranego usera

Post autor: nithathak »

Masz na myśli użytkowników na ubuntu, czy użytkowników w twojej sieci którzy mają swoje IP prywatne a ubuntu jest dla nich bramą.
Jeżeli ubuntu jest bramą, to przypisujesz delikwentom statycznie prywatne IP.

Kod: Zaznacz cały

iptables -t nat -A PREROUTING -s ADRES_IP_BLOKOWANEGO_USERA -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination INNY_ADRES
d80k
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 cze 2008, 17:18
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

Odp: Iptables odblokowanie strony tylko dla wybranego usera

Post autor: d80k »

sory, nie sprecyzowałem, ubuntu jest bramą, użytkownicy to stacje robocze z ip,
oczywiście znam IP/MAC które mam dopuścić.
Awatar użytkownika
nithathak
Wytworny Kaczor
Wytworny Kaczor
Posty: 330
Rejestracja: 07 kwie 2007, 19:29
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: Iptables odblokowanie strony tylko dla wybranego usera

Post autor: nithathak »

Możesz zrobić tak jak w edytowanym poście wyżej dla każdego blokowanego IP usera, albo użyć jakiegoś wyrażenia regularnego w tamtym miejscu (nie znam go) zwracającego wszystkie adresy poza twoim. Musiałbyś sobie poszukać. Dla 3 użytkowników i statycznych IP to ma sens ale już dla dużych sieci z dhcp męka w administrowaniu, lepiej dla dużych sieci będzie przekierować wszystkich a wybranych pozostawić w spokoju.
d80k
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 cze 2008, 17:18
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

Odp: Iptables odblokowanie strony tylko dla wybranego usera

Post autor: d80k »

no tak, ale jest to rozwiązanie którego wolał bym uniknąć,
mając np: 100 użytkowników którym chce coś zablokować i tylko 3 którym chce na coś zezwolić, to zamiast powielać regułkę 100x zmieniając IP użytkownika to chciałbym przekierować wszystkich (dlatego zamiast jak jest u Ciebie: ADRES_IP_BLOKOWANEGO_USERA zastąpiłem 0/0 ) i teraz odblokować tylko tych trzech pozostałych.

u mnie jest dhcp ale zafixowane na stale IP dla każdego MAC

pzdr
Awatar użytkownika
nithathak
Wytworny Kaczor
Wytworny Kaczor
Posty: 330
Rejestracja: 07 kwie 2007, 19:29
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: Iptables odblokowanie strony tylko dla wybranego usera

Post autor: nithathak »

To rozwiązanie będzie działąć.
Musisz tylko nie blokowanych mieć koło siebie abyś mógł jednym IP i maską objąć wszystkich nie blokowanych, i żadnego blokowanego.

Kod: Zaznacz cały

iptables -t nat -A PREROUTING -s ! PULA_ADRESÓW_IP_NIE_BLOKOWANYCH_USERÓW -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination INNY_ADRES
Powiedzmy że nie blokowane to 192.168.1.100 , 192.168.1.101, 192.168.1.102, 192.168.1.103 nie przydzielony, wtedy:

Kod: Zaznacz cały

iptables -t nat -A PREROUTING -s ! 192.168.100/30 -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination INNY_ADRES

Nie mogę doszukać się operatorów logicznych w manalu dla tej sekcji, więc druga propozycja może nie działać ale po znalezieniu składni AND ta propozycja jest lepsza bo nie wymaga by adresy nie blokowane były koło siebie.
możesz spróbować "AND" lub "&&" lub poszukać innych możliwych reprezentacji.

Kod: Zaznacz cały

iptables -t nat -A PREROUTING -s ! IP_NIE_BLOKOWANEGO_USERA1 AND ! IP_NIE_BLOKOWANEGO_USERA2 AND ! IP_NIE_BLOKOWANEGO_USERA3 -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination INNY_ADRES
d80k
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 cze 2008, 17:18
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

Odp: Iptables odblokowanie strony tylko dla wybranego usera

Post autor: d80k »

dzięki bardzo za pomoc

właśnie sprawdziłem, działa
jeśli IP są obok siebie można użyć grupowania:

iptables -t nat -A PREROUTING -m iprange ! --src-range x.x.x-150-x.x.x.200 -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination ADRES_PRZEKIEROWANIA

jeżeli nie można zrobić tak:

iptables -t nat -A PREROUTING -s x.x.x.150 -j ACCEPT
iptables -t nat -A PREROUTING -s x.x.x.180 -j ACCEPT
...
iptables -t nat -A PREROUTING -p tcp -d BLOKOWANY_ADRES -j DNAT --to-destination ADRES_PRZEKIEROWANIA

jeszcze nie mogę odnaleźć jak używać operatorów logicznych, bo można by w tedy zrobić to w jednej linii, jakby ktoś wiedział niech da znać

jeszcze raz dzieki !
ODPOWIEDZ

Wróć do „Sieci, serwery, Internet”

Kto jest online

Użytkownicy przeglądający to forum: Bing [Bot] i 9 gości