Czy mogę użyć ufw do skonfigurowania przekierowania portów?

31

Obecnie używam ufw do egzekwowania podstawowych zasad zapory. Czy można również używać ufw do przekierowania portów?

W szczególności chcę przekazać ruch przychodzący na mój serwer (ten sam komputer z uruchomionym ufw) na porcie 80 do portu 8080. (ruch HTTP przekazany do tomcat)

Th

metaliczny
źródło

Odpowiedzi:

50

Powiedzmy, że chcesz przekazać żądania idące do 80 do serwera nasłuchującego na porcie 8080.

Pamiętaj, że musisz upewnić się, że port 8080 jest dozwolony, w przeciwnym razie ufw zablokuje żądania przekierowane na 8080.

sudo ufw allow 8080/tcp

Nie ma żadnych poleceń ufw do konfigurowania przekazywania portów, więc należy to zrobić za pomocą plików konfiguracyjnych. Dodaj poniższe wiersze /etc/ufw/before.rules, przed filtersekcją, bezpośrednio u góry pliku:

*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
COMMIT

Następnie uruchom ponownie i włącz ufw, aby uruchomić przy starcie:

sudo ufw enable
ooshro
źródło
7
czy mógłbyś wyjaśnić tę linię po linii? też, czy nie ma czegoś takiego ufw forward 80 to 8080? Myślałem, że UFW jest nieskomplikowany.
Tom
4
Wygląda na to, że nie ma komend ufw do skonfigurowania portów przed, więc należy to zrobić za pomocą plików konfiguracyjnych. Bardziej szczegółowy opis składni pliku konfiguracyjnego jest dostępny na stronie: frozentux.net/iptables-tutorial/...
Juha Palomäki
Że nie działa dla mnie, otrzymują następujący komunikat /var/log/syslogpo włączeniu zalogowaniu się na: [52627.259812] [UFW BLOCK] IN=eth0 OUT= MAC=xxx SRC=xxx DST=xxx LEN=60 TOS=0x00 PREC=0x00 TTL=59 ID=59278 DF PROTO=TCP SPT=53997 DPT=8080 WINDOW=14600 RES=0x00 SYN URGP=0. Warto wiedzieć, że przede wszystkim odrzuciłem wszystkie przychodzące żądania ufw deny incomingtylko i dozwolone ssh,80,443. Czy ktoś mógłby doradzić, na czym polega problem?
Yuriy Nakonechnyy
1
@Yura Miałem ten sam problem (8080 został zablokowany, gdy spojrzałem na syslog). Bieganie sudo ufw allow 8080/tcpnaprawiło dla mnie problem.
Tim Swast,
@TimSwast Jakoś rozwiązałem lub przezwyciężyłem ten problem w tym czasie, ale i tak bardzo dziękuję za pomoc :)
Yuriy Nakonechnyy