我的桌面需要防火墙吗?

我的桌面需要防火墙吗?

我没有路由器,但我主要使用台式机进行网上购物和下载种子。那么,我必须启用防火墙吗?我希望不需要,因为我真的很笨,我不认为我能配置防火墙。

答案1

那么,我必须启用防火墙吗?我希望不需要,因为我真的很笨,我不认为我能配置防火墙。

好吧,如果你这么说,我建议你不要触碰任何防火墙设置。但是,听我说完。您将面临互联网上各种威胁。如果系统开始出现异常,或者您的 PC 充斥着垃圾邮件/广告,您从未安装过的软件也会出现,或者您发现您的银行账户空了,请不要害怕。这不是 FUD。如果没有任何保护措施,他的系统(和他自己)将容易受到来自互联网的各种攻击。

如果您不知道如何设置防火墙并且没有路由器,我建议您阅读:

答案2

简而言之:运行防火墙可能是一个好主意,但如果您注意不运行任何服务器,则可能不需要它。

这个问题的答案取决于你是否在计算机上运行服务器应用程序。

让我解释一下:防火墙通常配置为允许所有传出流量,但将传入流量限制到某些端口或某些源 IP 地址。

允许所有传出流量的原因是,编写允许连接的程序和目的地的综合白名单非常繁琐,而且除非计算机上有间谍软件,否则传出流量无论如何都是由用户直接引起的,或由合法程序(例如检查更新的更新管理器)引起的。换句话说:懒惰。这也是 Windows 自带防火墙的默认设置。

限制传入流量是为了确保只有某些计算机可以与某些服务器程序通信。一个典型的用例是 Web 服务器,其中仅应允许来自同一网络中的计算机通过 SSH 进行远程控制访问,而网站应在任何计算机上都可见。为此,允许访问端口 22(SSH 端口)的源 IP 范围设置为本地网络 IP,而对于端口 80(HTTP 端口),则允许所有传入流量。

这就引出了以下问题:如果计算机上没有运行任何服务器程序,并且所有传出流量都应该被允许,那么它是否需要防火墙?不,不需要。如果没有服务器监听传入连接,那么无论是否有防火墙,连接都会失败。

那么,是否有任何服务器正在运行?在大多数 GNU/Linux 系统上,默认情况下没有。但是,如果您启用打印机或文件共享,则有,并且如果这些服务器存在安全问题或配置不安全,则您的系统易受攻击。检查正在运行的服务器的一种简单方法是使用 netstat 实用程序。为了查看哪些程序正在侦听传入连接,请运行sudo netstat -tulp。这将列出所有侦听传入 (t)cp 和 (u)dp 连接的 (p)rocesses。在不需要防火墙的系统上,只有侦听来自本地主机的连接的程序才会在列表中。以我的电脑为例:

root@hplj4:/home/andi# netstat -tulp
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 *:50189                 *:*                     LISTEN      1822/rpc.statd  
tcp        0      0 *:sunrpc                *:*                     LISTEN      1780/rpcbind    
tcp        0      0 *:ssh                   *:*                     LISTEN      3075/sshd       
tcp        0      0 localhost:ipp           *:*                     LISTEN      2618/cupsd      
tcp        0      0 localhost:smtp          *:*                     LISTEN      2856/exim4      
tcp6       0      0 [::]:56398              [::]:*                  LISTEN      1822/rpc.statd  
tcp6       0      0 [::]:sunrpc             [::]:*                  LISTEN      1780/rpcbind    
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      3075/sshd       
tcp6       0      0 localhost:ipp           [::]:*                  LISTEN      2618/cupsd      
tcp6       0      0 localhost:smtp          [::]:*                  LISTEN      2856/exim4      
udp        0      0 *:44539                 *:*                                 2569/avahi-daemon: 
udp        0      0 *:sunrpc                *:*                                 1780/rpcbind    
udp        0      0 *:ipp                   *:*                                 2618/cupsd      
udp        0      0 *:683                   *:*                                 1780/rpcbind    
udp        0      0 localhost:726           *:*                                 1822/rpc.statd  
udp        0      0 *:mdns                  *:*                                 2569/avahi-daemon: 
udp        0      0 *:1900                  *:*                                 2978/minissdpd  
udp        0      0 *:38900                 *:*                                 1822/rpc.statd  
udp6       0      0 [::]:35567              [::]:*                              1822/rpc.statd  
udp6       0      0 [::]:sunrpc             [::]:*                              1780/rpcbind    
udp6       0      0 [::]:683                [::]:*                              1780/rpcbind    
udp6       0      0 [::]:mdns               [::]:*                              2569/avahi-daemon: 
udp6       0      0 [::]:54799              [::]:*                              2569/avahi-daemon: 

如您所见,打印机守护程序和邮件服务器仅监听来自 localhost 的连接(如果在 netstat 命令中添加 -n,您将看到它们仅监听环回接口 127.0.0.1),因此它们不会有问题。ssh 服务器被有意设置为允许来自任何地方的连接(不太安全,但是我需要这样)。如果只有这些服务,则防火墙就没有必要了。但是,由于端口映射器 (rpcbind) 和 UPNP 守护程序 (avahi-daemon) 正在监听任何传入流量,因此需要重新配置、禁用它们或通过防火墙保护它们,以便不会接受来自互联网的恶意连接。

答案3

我发现 Ubuntu Wiki 的这篇文章很有帮助!

https://help.ubuntu.com/community/DoINeedAFirewall

答案4

您还可以安装firestarter...只需转到ubuntu software center

端口漏洞也存在.. 这是一种利用协议的方式:) 也许你有一些服务器,它们当然正在监听端口.. 为什么你允许它们公开?

所以..只需安装firestarter并让它运行:)您无需做任何事情...

相关内容