IPMASQADM(8) | IPMASQADM(8) |
NAZWA¶
ipmasqadm - administracja dodatkowymi modułami IP Masquerading
SKŁADNIA¶
ipmasqadm <moduł>
[opcje-specyficzne-dla-modułu]
ipmasqadm <moduł> -h
ipmasqadm autofw opcje
ipmasqadm portfw opcje
ipmasqadm mfw opcje
OPIS¶
Ipmasqadm używane jest do konfigurowania dodatkowych udogodnień maskowania IP, zazwyczaj wspieranych przez dodatkowe moduły jądra.
Wszystkie przekierowania wewnątrz-firewallowe są realizowane przez maskowanieodwrotne(zang.reverse-masquerading) tak więc musisz stworzyć reguły ścianki ogniowej, które muszą pasować do wytworzonego przekierowania wedle połączenia wychodzącego (zamiast przychodzącego).
Jądro musi być skompilowane z opcjami
CONFIG_EXPERIMENTAL=y
CONFIG_IP_MASQUERADE=y
CONFIG_IP_MASQUERADE_MOD=y
i
CONFIG_IP_MASQUERADE_IPAUTOFW=y/m
CONFIG_IP_MASQUERADE_IPPORTFW=y/m
CONFIG_IP_MASQUERADE_MFW=y/m
dla odpowiednich modułów.
Jeśli potrzebujesz przekierować jeden (lub więcej) wewnętrznych portów do hostów wewnętrznych rozważ użycie modułu o nazwie mfw
W skrócie:
Krótki | moduł | moduł | opcja |
opis | ipmasqadm | jądra | jądra |
Auto | autofw.so | ip_masq_autofw.o | CONFIG_IP_MASQUERADE_IPAUTOFW |
Port | portfw.so | ip_masq_portfw.o | CONFIG_IP_MASQUERADE_IPPORTFW |
Fwmark | mfw.so | ip_masq_mfw.o | CONFIG_IP_MASQUERADE_MFW |
MODUŁ autofw - Auto-forwarding¶
Moduł ten jest, w pewnych okolicznościach, zdolny do
przechwytywania protokołów aplikacji, które nie
mają wsparcia jako specyficzne (dedykowane) moduły
maskujące. Jądro musi być skompilowane z opcją
CONFIG_IP_MASQUERADE_IPAUTOFW=y/m
autofw -h¶
Po mnóstwo użytecznych informacji dotyczących używania autofw proszę zajrzeć do http://ipmasq.home.ml.org
MODUŁ portfw - Port-forwarding¶
Ten moduł jest w stanie przekierować pakiety do-firewalla do wewnętrznych hostów, bazując na adresie i numerze portu.
portfw -h¶
MODUŁ mfw - fwmark-forwarding¶
Moduł ten pozwala przekierować pakiety do-firewalla do wewnętrznych hostów, bazując na pasującym znaczniku fwmark . Obejrzyj podręcznik ipchains(8) aby dowiedzieć się jak ustawiać reguły firewall-a używając fwmarkowania. Także zauważ proszę, że ponieważ moduł ten działa tylko przy pierwszym pakiecie połączenia, więc ma tutaj sens dodanie przełącznika -y polecenia ipchains do reguł TCP przy obsłudze znaczników.
KOMENDY¶
- mfw -A -m fwmark -r adres [port] [-p waga]
- Dołącza jedną regułę do końca
listy fwmark hostów podlegających przekierowaniu.
Pakiety fwmarkowane wytworzą tunel-maskujący by nim przekazywać późniejszy ruch połączeń do adresu i portu.
Nastąpi to co najmniej waga razy przed kolejkowaniem kolejnej pozycji z taką samą wartością fwmark .
Jeśli nie podano portu to zostanie użyte przekierowanie z oryginalnym adresem docelowym pakietu.
- mfw -I -m fwmark -r adres [port] [-p waga]
- Działa tak samo jak opcja -A z wyjątkiem tego, że reguła jest wstawiana na początek listy.
- mfw -D -m fwmark [-r adres [port] ]
- Usuwa podane reguły (podaną regułę).
- mfw -E -m fwmark [-r address [port] ] -p pref
- Edycja podanych reguł, obecnie można zmieniać wartość -p .
- mfw -S -m fwmark
- Wymuś kolejkowanie w pozycjach przekierowań fwmark .
- mfw -F
- Opróżnij (skasuj) wszystkie reguły.
- mfw -L [-n]
- Wyświetl reguły, opcjonalnie pokazując tylko adresy (bez nazw).
PRZYKŁADY¶
Przekieruj cały ruch Web do wewnętrznych maszyn hostA i hostB, gdzie hostB będzie obsługiwał 2 razy połączenia hostA. Reguły przekazu już maskują wewnętrzne maszyny na zewnątrz (typowe).
ipchains -I input -p tcp -y -d twoja.domena.com/32 80 -m 1
ipmasqadm mfw -I -m 1 -r hostA 80 -p 10
ipmasqadm mfw -I -m 1 -r hostB 80 -p 20
Przekieruj ruch ssh z zewnętrznego klienta klientA do wewnętrznego hostB, a także pokaż regułę maskującą by pozwolić na połączenia przychodzące do portu ssh tylko dla maszyny hostB.
ipchains -I forward -p tcp -d klientA/32 -s hostB/32 22 -j MASQ
ipchains -I input -p tcp -y -s klientA/32 -d 0/0 22 -m 2
ipmasqadm mfw -I -m 2 -r hostB 22
Przekieruj cały ruch z zewnętrznego klientaA do wewnętrznego hostB, a także pokaż regułę maskującą by pozwolić maszynie hostB tylko (wyraźnie, prosto, ... po prostu *zielono*)
ipchains -I forward -d klientA/32 -s hostB/32 -j MASQ
ipchains -I input -s klientA/32 -m 3
ipmasqadm mfw -I -m 3 -r hostB
PLIKI¶
- /usr/lib/ipmasqadm/*.so
- Moduły używane przez interfejs jądra do ipmasqadm.
- /proc/net/ipmasq/*
- Wewnętrzne pliki stanu modułów maskujących.
USTERKI¶
W jądrach 2.2 nie ma możliwości by współdzielić numery portów z normalnymi gniazdami. Obecnie moduły maskujące biorą priorytet nad gniazdami.
Ponieważ przekierowania są obecnie maskującymi tunelami mają one takie same właściwości: czasy bezczynności, maksymalne liczby wpisów, itd.
Automatyczne ładowanie modułów przez jądro zadziała dla przełączników -A i -I , ale nie dla -L, więc ujrzysz ostrzeżenia o brakujących wpisach list /proc/net/ip_masq/... kiedy moduł nie jest (automatycznie) załadowany. Zmieni się to w przyszłych wydaniach.
PRZESTROGI¶
Protokoły, które używają kontroli i wytwarzają połączenie są zawsze kłopotliwe przy przekraczaniu ścianek ogniowych. Przykładami mogą tutaj być ftp, irc, real audio, itd Ponieważ mamy tu do czynienia z przekazywaniem odwrotnego-maskowania problemy się też odwracają; na przykład: ftp przekazywane z zewnątrz do wewnątrz i serwer już nie zadziała w trybie PASV ponieważ serwer wyśle swój wewnętrzny adres do klienta na zewnątrz, w przeciwieństwie do tradycyjnych nie-pasywnych połączeń, które się powiodą (pomyśl trochę nad tym, proszę). Trwają pracę nad wsparciem dla modułów dwukierunkowych .
UWAGI¶
To jest moja pierwsza strona man, tak w razie gdybyś nie zauważył ... ;)
Ostrzegam przed jej jakością pre-alpha.
ZOBACZ TAKŻE¶
AUTOR¶
Juan Jose Ciarlante <jjciarla@raiz.uncu.edu.ar>
Grudnia 1998 |