我可以使用ufw设置端口转发吗?


31

我目前正在使用ufw来实施一些基本的防火墙规则。是否也可以使用ufw进行端口转发?

我特别想将传入的流量通过端口80转发到我的服务器(运行ufw的同一台机器)上的端口8080。(http流量转发到tomcat)

Answers:


50

假设您要将转发到80的请求转发到侦听端口8080的服务器。

请注意,您将需要确保允许使用端口8080,否则ufw将阻止重定向到8080的请求。

sudo ufw allow 8080/tcp

没有用于设置端口转发的ufw命令,因此必须通过配置文件来完成。将以下行添加到/etc/ufw/before.rules,在本filter节之前,文件顶部的右侧:

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

然后重新启动并启用ufw以在启动时启动:

sudo ufw enable

7
你能逐行解释一下吗?另外,有没有类似的东西ufw forward 80 to 8080?我以为UFW并不复杂。
汤姆(Tom)

4
似乎没有用于设置端口转发器的ufw命令,因此必须通过配置文件来完成。关于配置文件的语法更详细的说明,请访问:frozentux.net/iptables-tutorial/...
尤哈Palomäki

这对我不起作用,/var/log/syslog打开登录后,我收到以下消息:[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。了解所有内容之前,我使用ufw deny incoming和拒绝了所有传入请求,这可能很有用ssh,80,443。有人可以请教出什么问题吗?
Yuriy Nakonechnyy 2014年

1
@Yura我遇到了同样的问题(当我查看syslog时,8080被阻止了)。运行sudo ufw allow 8080/tcp为我解决了这个问题。
Tim Swast

@TimSwast我当时以某种方式解决了或克服了这个问题,但是无论如何,非常感谢您的帮助:)
Yuriy Nakonechnyy
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.