Answers:
现在可能没有服务在运行,但是明天呢?您已将它们全部关闭,但是您的用户呢?Unix / windows / mac系统上的任何人都可以在他们有权访问的任何计算机上打开一个大于1024的端口。恶意软件呢?病毒呢?他们还可以开放端口并开始向世界提供信息,或者开始侦听来自网络的连接。
防火墙的主要目的不是阻止您已知已禁用的服务的端口,而是阻止您可能不知道的服务的端口。将其视为默认拒绝,只对您授权的服务打一些孔。用户启动的任何用户或程序均可在他们有权访问的系统上启动服务器,防火墙可防止其他人连接到该服务。
一个好的管理员知道需要公开哪些服务,并可以启用它们。防火墙主要是为了减轻系统或网络上运行的未知服务器带来的风险,以及从中心位置管理允许进入网络的内容。
了解您的计算机/服务器上正在运行的内容并仅启用所需的内容非常重要,但是防火墙提供了额外的保护,可防止您不了解的事情发生。
hg serve
在计算机上启动Web服务器的开发人员。关键是,无论是用作“台式机”还是“服务器”,在任何计算机上启动服务器都是很重要的。一旦服务器启动,而您对此一无所知...好了,那就是乐趣的开始了。
如果没有程序在任何端口上侦听,则您不需要防火墙,但也无法连接到服务器,因为它是从世界其他地方“密封”的。
另一方面...假设您的服务器在任何端口上都没有侦听任何本地运行的程序,但它充当其后的其他计算机的网关。在这种情况下,您可以使用防火墙来管理伪装(NAT),并且可以选择过滤有关数据包转发的内容。
/etc/ssh/sshd_config
来保护机器。PermitRootLogin
应该设置为“否”,您应该使用安全密码并使用sudo维护计算机(您可以使用具有sudo权限的帐户登录后使用sudo)。使用防火墙设置限制只是错误的工具。对于postgresql
数据库也是如此:使用数据库配置来设置和撤消权限。
但是,如果没有程序在任何端口上侦听,为什么我们需要防火墙?
如果您使用的是Single-User Desktop(而不是服务器),则没有防火墙,如果没有服务在运行,例如默认的Ubuntu安装。
Windows能够进行联网之后,有一段时间会默认运行一些服务以进行维护,更新,内部消息传递等。您无法停止它们,而不必停止运行Windows,但是它们容易受到外部攻击。因此,Windows用户需要防火墙,而每个人都需要防火墙的模因迅速传播。
当他们遇到通常是服务器管理员的Linux人员时,他们并没有说“您不需要在Linux上安装防火墙”,而是“我们拥有近十年来的免费防火墙,例如iptables”。
一个个人防火墙,坐在它的系统应保护上,是不是最好的主意无论是。
desktop
并不意味着它仍然不是一个server
字。您desktop
有很多servers
可能在其上运行,并且可能已经运行了。
t allow anything) on RedHat, start CUPS and see if you can connect to it from outside. Then look at
iptables-save`:Voila-CUPS端口已打开,但未在GUI中显示...