- 配置包过滤防火墙,允许外部的 DNS、HTTPS 访问服务器
- 使用端口 8080 从外部到服务器配置 HTTP 的 PAT
- 拒绝所有其他服务
我遇到这样的问题,给客户端 IP 地址,但不输入网关,我该怎么办?我有 1 台服务器、路由器和 Debian 客户端
答案1
两者都是通过iptables
命令完成的。
首先,默认禁用传入访问。注意:如果您已连接ssh
或类似情况,请勿在命令行中输入此内容,因为您会将自己锁定在外面。
iptables -P INPUT DROP
接下来,允许已建立的连接:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
最后,打开您想要允许访问的端口;例如,对于 HTTP:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
对其他端口重复此操作。
要获得端口转换,您需要使用该nat
表:
iptables -t nat -A prerouting -p tcp --dport 80 -j REDIRECT --to-port 8080