1 (edytowany przez firefox 2007-08-01 15:40:53)

Temat: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

Na wstepie pragne dodac, ze jesli chodzi o IP tables jestem dosc zielony.
Moim celem jest przekierowac port, ktorym chodzi dropbear (SSH 22) na 1022.
Chodzi o to zeby z zewnatrz akceptowany byl port tylko 1022, a wewnatrz sieci moga byc oba 22 i 1022.

W jednym z postow tego forum widzialem, jak napisales kiedys, ze jest to alternatywa dla zmian w wielu plikach konfiguracyjnych ( w tym przypadku rzecz sie tyczy oczywiscie 1 pliku od dropbear) ale chyba nie bylo tam, badz nie zauwazylem tego rozwiazania.

moglbym np. uruchomic dropbear -p 1022, ale ja chce go miec na 22 i tylko na zewnatrz przekierowac na 1022

Interesusja mnie 2 rozwiazania :

1. Oparte na Iptables, ktore dodam do pliku /etc/firewall.user
2. Takie, ktore dodam do pliku /etc/config/firewall (po to, zeby moc je zmienic przez X-wrt - network-->firewall)

Z gory dziekuje za pomoc i wyrozumialosc, a przedewszystkim poswiecony czas smile

2

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

Ad1.
iptables -I input_rule -p tcp -d 192.168.1.1 --dport 22 -j ACCEPT
iptables -t nat -p tcp -I PREROUTING -s 0/0 --dport 1022 -m state --state NEW -j DNAT --to 192.168.1.1:22
Ad2.

Zrobić przekierowanie z portu 1022 interfejsu wan na 22 po stronie lan.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

sposob z IP tables dziala smile, ale drugim sposobem mam caly czas 'refused access' :

do /etc/config/firewall dodalem

accept:dport=1022
forward:dport=1022:192.168.1.1:22

potem oczywiscie restart firewalla /etc/init.d/S35firewall

myslalem, ze moze brakuje czegos takiego (analizujac 1 linie tego co napisales ip tables -I ...)

accept:dest=192.168.1.1 dport=22

ale nadal nie dziala ten 2 sposob.

co zle napisalem ??

4

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

Szczerze mówiąc nie wiem, czy jesteś w stanie wykreować  takie coś przy pomocy /etc/config/firewall. Przetwarzane jest przez awk (/etc/config/firewall) i robi na sztywno przez input_wan z append. Zauważ, że te są na insert (żeby były na pierwszym miejscu i obejść dziwacznie zbudowany firewall w openwrt - IMO) i w ogóle na input a nie wan.

Zrób w jednym i drugim przypadku iptables -v -L/iptables -v -L -t nat i zobacz jakie regułki powstają.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

problem polega  na tym, ze moge zalogowac sie z zewnatrz na serwer ftp (po przekierowaniu na inny port), ale serwer nie moze pobrac katalogu. Staje po komendzie "entering passive mode" i wylatuje na komendzie port
PORT moj_obecny_IP,5,51  500 Illegal port command. w czym problem ? SSH i WWW dziala zdalnie bez problemu

6

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

Nie zadziała to dla ftp. ip_contrack_ftp nie jest przystosowany do tego żeby nadzorować ciągłość połączeń na innych portach niż standardowo przypisane dla ftp.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

co to jest ten ip-contract ?? znaczy, ze niezaleznie od serwera ftp, czy bedzie to vsftpd czy proftpd, polaczenie po takim przekierowaniu nie bedzie dzialac ? nie mozna tego nigdzie zmienic ?

8

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

ip_conntrack_ftp służy do śledzenia połączeń. IMHO porty zaszyte są na stałe w kodzie, miałbyś przekompilować moduły.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

po restarcie znika przekierowanie za pomocą iptables. jak zrobic by działało po restarcie ?

10

Odp: przekierowanie np. portu 22 dla SSH na 1022 przez IP tables

Wpisać do /etc/firewall.user

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.