Mac 防火墙软件集结号!

https://img.maoshu.cc/wp-content/uploads/2015/05/imgres1.jpg)

WireLurker恶意程序威胁非常受圈内关注,此事件让 Mac OS X 系统的安全性问题再次被公众提起,就技术层面来说,作为类UNIX系统的 OS X 安全性绝对不言而喻,但要做到万无一失,特别是提防一些后门程序悄悄的背着你做一些「坏勾当」则需要防火墙来辅助了,今天我们就来从功能层面聊聊 Mac 上都有哪些防火墙软件可以使用,笔者对于系统安全方面的知识涉足太浅,如有内容纰漏,望读者及时指出。

防火墙是啥?

防火墙指的是一个由软件和硬件设备组合而成、在内部网和外部网之间、专用网与公共网之间的界面上构造的保护屏障.是一种获取安全性方法的形象说法,它是一种计算机硬件和软件的结合,使Internet与Intranet之间建立起一个安全网关(Security Gateway),从而保护内部网免受非法用户的侵入,防火墙主要由服务访问规则、验证工具、包过滤和应用网关4个部分组成,防火墙就是一个位于计算机和它所连接的网络之间的软件或硬件。该计算机流入流出的所有网络通信和数据包均要经过此防火墙。

Mac OS X Firewall

Mac 上的防火墙其实是很厉害的,他所采用的是双防火墙架构:ALF+PF,由应用层防火墙与 UNIX 家族最常用的基于网络封包为基础的 PF防火墙(Packet Filter Firewall)共同组成,我们在系统设置里看到的「Firewall」指的就是ALF防火墙,而苹果则没有为PF防火墙配置图形管理工具,只有对命令行精通的人员才能在Mac上使用它。

Mac OS X 应用防火墙(ALF)可阻止所有传入连接,允许指定应用软件接受传入连接或是自动允许已签名的软件接收传入连接,还有就是可开启秘密行动模式,这样就会阻止 Mac 接收响应探测请求,过滤掉恶意软件,病毒的攻击,但你的 Mac 也仍会回答经授权的应用程序的传入连接。

基本上 Mac 自带防火墙的功能也就这些了,如果你想接触他身上的 PF Firewall 封印,则需要使用下面这款图形化配置工具-IceFloor
下载适配 Yosemite 的 IceFloor 2.0.2

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathIceFloor5.png)

IceFloor 是 Mac 平台第一款开源的图形化PF Firewall配置工具,也是目前最为知名的一款,她能够帮助用户添加各种规则,比如传入连接(Inbound)、传出连接(Outbound)、屏蔽IP地址,限制上传/下载带宽等等参数,需要用户对网络安全知识有一定要求,如果你不了解最好不要去添加。

我们初次安装时可选择安装Menulet,即上图中的快捷操作菜单,你在这里可以开关 PF Firewall,开启单条规则或重新加载,重置所有PF规则,设计好规则后一般不需要在这里操作了,点击菜单倒数第二项「Launch IceFloor」进入主窗口设置个性化配置:

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathIceFloor.png)

在主窗口的最后一个选项「Help」里选择「Configuration Wizard」对防火墙进行初次配置,Inbound 传入连接除 System 是必选之外像 Airplay,Mail Server,File Transfer,iTunes Sharing,Remote Login,VNC 这些连接你都可以留空,让防火墙对可以程序进行重点监控。

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathIceFloor2.png)

Outbound传出连接默认是都允许的,如果自定义的话请谨慎,可以采取排除法来限定下图中一些网络外出连接:

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathIceFloor3.png)

最后一步就是选择是否进行恶意程序的威胁记录,可以让防火墙为你记录已知的危险IP和域名,以防木马、恶意程序的攻击,总的来说,IceFloor的定位是给那些比较依赖网络安全的企业网络/网站管理员使用的,作为普通用户,笔者并不推荐,因为又许多网络规则是需要专业经验的,所以小白们最好使用 Little Snitch 这类基础工具。

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathIceFloor4.png)

WaterRoof

下载 (OSX 10.5-10.8)

这款软件 IceFloor 出自同一开发团队之手,但自 OS X 10.8 后就不再继续更新了,作为 IPFW (FreeBSD 内建的防火墙指令) 的图形配置工具,可以负责服务器上所有进出的网络连接。Waterroof 的使用同样需要专业技术,小白勿碰。

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathWaterRoof.png)

Little Snitch

下载试用版

Little Snitch 想必许多人都有听说,著名的Mac防火墙软件之一,她也是Launchbar的同门兄弟,obdev 的两大当家花旦之一,今天我们来详细介绍一下这款防火墙软件都有哪些特色功能。

像这种软件,她只是把 OS X 自带的 PF Firewall 命令配置提炼成了普通用户能够理解的交互方式,比 IceFloor 易上手,比如当一个程序想要获得传出连接权限时,LS 都会提示用户:

如果你不常用这款程序,可以选择「Once」,并规定传出的端口和域名,如果需要经常这款程序,那就直接选择「Forever」,点「Allow」,LS就不会再次弹出审核窗口。

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathnetworkfilter.png)

每一个程序不管他是好的坏的都逃不出LS的法眼,所有incoming和outgoing的链接都要通过审核,当你对每一次应用申请链接进行批准或否定后,都在会LS后台自动生成一条Rules,这些Rules会形成一个完整的Profile作用在你当前所在的局域网上,当你每次连接这个网络时会通过Profile自动切换,直接应用规则,而不会再次让你去为每条链接做判断。

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathaps.png)

LS后台也可以手动添加Rule,你可以设定传入还是传出,规则执行所属者(管理员或其他),网络服务器地址(IP、域名,主机名),端口,协议等信息。

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathRules.png)

LS还有一个非常强大的 Network Monitoring 插件,当鼠标 Hover 在 Menubar 图标上,插件窗口就会自动显示,在这个网络监控窗口内你可以干以下工作:

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathlsnm.png)

查看从2分钟到24小时内的网络流量历史(共5个时间段),可按程序进程, 最近活动时间,主机名,网络流量排序显示进程的累积流量,峰值流量和平均带宽数据
可在一分钟到一小时内快速缩放流量变化以 PCAP 格式捕捉并记录网络流量为最近的分析结果保存快照

Little Snitch 还有许多实用的安全防护功能,由于篇幅限制,我们在这就不一一介绍了,后面我们会给LS做一期专门的介绍,敬请期待!

Hands Off!

下载试用版

Hands Off! 这款软件与 Little Snitch属于彻头彻尾的竞争关系,功能相似,唯一一点比LS有绝对优势的是她可以开关应用程序对文件的写权限,此外就是细节上的不同之处了,比如她比LS多了一个「Until Reboot」的选项,意思就是在Mac重启之前这个规则设置是有效的,重启后则需要重新设置:

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathhandsoff2.png)

初次使用HO时,系统会让你选择默认的「Preset」,这相当于LS的Profile,HO默认有3种 Preset 可选:Easy – Intermediate – Advanced;如果你不想管太多,就选「Easy」,如果想为每一个程序单独设置Preset,可以选「Intermediate」,如果要监控应用程序的网络连接和文件写入,以及系统进程的网络连接,则你需要选择最严厉的Preset 「Advanced」

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathhandsoff.png)

假如我们选择「Advanced」,则每个应用程序启动后你都需要为其规定「Network Usage」和「File Writing」权限:

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathhandsoffpreset.png)

我猜有许多朋友在选购时,会在 Hands Off! 与 Little Snitch 之间犹豫,前者比后者售价贵,Network Monitor 用起来不如后者爽,但整体性能不错,我在 Yosemite 上试用这两款软件时明显觉得 HO 更好一些,不会拖慢系统速度,而LS就要差一些了,有的朋友甚至会遇到五国的情况,基本上这两款软件都有入手价值,但从外貌角度看,我更喜欢 Little Snitch,至于安全技术这方面你就不要奢求太多了,毕竟这两款软件不是为专业用户打造的。

TCPBlock

下载

如果说 Little Snitch 这类的安全软件是巨无霸级的,那 TCPBlock 就是小而美的代表,这款软件使用起来非常简单,采取黑白名单两种方式来过滤应用程序的传入/传出连接请求,利用 OS X 系统自带通知中心推送过滤消息,支持 Hash 检查,在选取过滤目标程序时同样可以自定义网络地址,端口等数据,最重要的一点,她是免费的。

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathTCPBlock.png)

注意:TCPBlock 已不支持 Yosemite,因为新系统采用了新的系统加密方式,但你可以使用 Trim Enabler 3.3 这样的软件关闭掉系统的 Kext Signing 安全配置,具体方法请戳这里

PortsMonitor

下载试用版

PortsMonitor 是一款专门用看查看实时程序外联网络情况的软件,她可以扫描出 Mac 下所有程序进程的网络类型,端口号,IP地址,提供了按照信息项过滤监控进程的功能,可根据 IPv4,IPv6,TCP,UDP分别查看连接,可隐藏无远程连接的所有程序

监控功能可对进行四种状态标识,分别是:

  • 无色背景:代表程序连接网络稳定
  • 绿色:新连接建立
  • 黄色:状态变化
  • 红色:连接断开

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathPortsMonitor1.png)

P.M.还提供了搜索表达式编写功能,用户可以自行根据需求建立各种搜索过滤条件,并保存为「Filter Profile」,方便到任何网络能随时调用,表达式语法规则如下:

  • 字符匹配: =, contains
  • 数字匹配: =, <, >, <=, >=
  • Collection 运算符: filed in {value1, value2}
  • 逻辑运算符: and, or

可以作用的参数值包括:

  • processName, processId, protocol, localPort, localPortName, localAddress, remotePort, remotePortName, remoteAddress, remoteHostname, state, processPath,
  • 数字: localPortNumber, remotePortNumber

我们举个栗子,比如:

  • 过滤出连接到http服务器,状态为CLOSE_WAIT的程序:remotePortNumber = 80 and state = ‘CLOSE_WAIT’
  • 列出所有SNS程序:processName in {‘Adium’, ‘Twitter’}
  • 列出所有本地连接:remoteAddress contains ’192.168.1.’

你可以对可疑程序右键,跳到Finder定位应用程序所在目录,或是查看程序访问的IP物理位置,甚至能直接进入Google搜索相关信息。

https://img.maoshu.cc/wp-content/uploads/2015/05/CfakepathPorts-Monitor-Show-Info.png)

PortsMonitor 这款软件是某低调国内团队开发的,定价 8 $。

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathgeoip.png)

Radio Silence

下载试用版

Radio Silence 是专门给那些对网络安全完全不感兴趣的普通用户设计的「一刀切」工具,如果你觉得哪些程序可以或者频繁推送消息,或是耗费你的系统硬件性能,那么干脆直接拖入 R.S. 切掉好了。

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathscreenshot_lion_c.png)

Private Eye

下载

Private Eye 是专门为 Radio Silence 设计的一款伴侣型工具,就是假如你想一探究竟,看看那些可以程序到底在和哪些远程地址勾搭,P.E.是最简单的入门工具了。

https://img.maoshu.cc/wp-content/uploads/2015/05/Cfakepathscreenshot_b.png)

今天介绍的几款防火墙水平高低都有,其实这也是业界的冰山一脚,还有许多牛X的软件没有介绍到,如果你对网络安全技术比较熟悉,我们当然推荐你使用 IceFloor 这类软件,可以最大限度发挥 OS X 双架构防火墙的优势,如果你不是很了解,也可以选择 Little Snitch,Hands Off! 这类主流软件,其实本篇文章还是给像我一样的小白用户看的,如果你的 Mac 需要防火墙软件保护,那么这篇介绍或许能够帮到你

-------------本文结束感谢您的阅读-------------