我想设置我的新服务器(位于我的 LAN 上),以允许来自 LAN 上任何其他计算机的所有传入和传出流量,但拒绝来自 LAN 之外系统的任何连接。我的问题是,如何设置 iptables 来做到这一点?
另外,我想知道这是否会影响我从该服务器上的互联网下载文件的能力?如果我这样设置,我是否仍然可以下载服务器的安全更新?您可能已经猜到了,我对这些都还很陌生,所以请提前原谅我的无知。
谢谢,蒂姆
答案1
假设您的 LAN 是 192.168.2.0/24。运行
sudo ufw enable
sudo ufw allow from 192.168.2.0/24
它似乎默认情况下,ufw 允许出站,因此这不会影响您从互联网下载文件的能力。执行这些命令后,运行sudo iptables -L -v -n
并发布输出,我会告诉您确切的信息。
看https://help.ubuntu.com/10.04/serverguide/C/firewall.html和http://manpages.ubuntu.com/manpages/lucid/en/man8/ufw.8.html了解更多信息。
答案2
使用单接口示例安装 Shorewall。这可以通过策略文件来处理。
答案3
使用 IPtables 始终是保护服务器的最佳方式,除此之外,您还可以使用 TCP 包装器。例如,为了允许/拒绝所有客户端访问所有 tcpwrappers 服务:
ALL : ALL
/etc/hosts.deny 上的上述配置将拒绝访问所有 tcpwrappers 服务。但是 /etc/hosts.allow 上的此行将允许无限制地访问所有 tcpwrappers 服务。为了拒绝来自 IP 192.168.10.100 的 sshd 访问,可以在 /etc/hosts.deny 上使用以下配置:
sshd : 192.168.10.100
具体来说,您可以修改 /etc/hosts.allow :
ALL: 192.168.1.0/255.255.255.0
我假设你的局域网络是 192.168.1.0/24。hosts.allow 中的 ALL 允许服务器提供的所有服务。接下来你需要修改 /etc/hosts.deny:
ALL: Deny
我通常同时使用 iptables 和 tcpwrappers 来在每台机器上实现最高程度的安全性。
答案4
使用防火墙,linux内置有Iptables:
由于它非常复杂,我会使用 GuardDog(KDE)之类的工具来进行设置。 http://www.simonzone.com/software/guarddog/