Linux 系统安全维护

尚无读者喜欢此内容。
Is Occupy Wall St. really an "open source protest?"

Opensource.com

最近,Lee Brian 在我的父亲、Linux 和我中撰写了一篇关于她个人 Linux 故事的精彩文章。在对该文章的一些评论中,引发了关于病毒和 Linux 的讨论。虽然大多数 Linux 社区都认为病毒在 Linux 中不如在其他一些操作系统中那么严重,但我们与之共享文件的一些人会受到病毒和其他恶意软件的影响。

也许您的计算机上有一个 Microsoft Windows 用户可以访问的共享文件夹。也许您所在单位的 IT 部门要求在您网络上的所有计算机上安装防病毒软件。在这种环境中,我们如何保护他们和我们自己?

这就是开源防病毒引擎 ClamAV 的用武之地。我已经在 Mac OS X 和 Linux 上使用 ClamAV 近 10 年了,发现它是特洛伊木马、病毒和恶意软件的有效威慑。它的源代码在 GitHub 上以 GNU 通用公共许可证提供。

在 Linux 服务器上,ClamAV 可以作为守护程序运行。它可以为扫描来自其他进程发送的文件的请求提供服务。这些可能包括垃圾邮件过滤器或 Samba 共享上的文件。ClamAV 通常从命令行运行,但也有第三方开发人员为其创建了图形用户界面。

在 Fedora 上

dnf -y install clamav clamav-update

在 Ubuntu 上

sudo apt-get install clamav

对于其他版本的 Linux 和 Unix,说明 可用。

安装 ClamAV 后,可以通过使用 "su" 或 "sudo" 切换到 root 并在命令行输入 "freshclam" 来获取更新。更新病毒定义后,您就可以扫描您的系统了。扫描时可以使用许多选项,您可以参考 此手册页 以了解选项。

我个人最喜欢的命令是 clamscan --infected --remove --recursive /home,它递归扫描我的主目录并打印出受感染的文件。

与维护系统完整性同等重要的是检测 rootkit。根据 维基百科,“Rootkit 是一组计算机软件,通常是恶意的,旨在允许访问通常不允许的计算机(例如,未经授权的用户),同时掩盖其存在或其他软件的存在。”

我发现 ClamAV 并非总是能有效地检测和消除 rootkit。幸运的是,开源 Rootkit Hunter 可供下载,并且易于安装。只需使用您选择的软件包管理器安装 rkhunter 软件包即可。rkhunter 有一个手册页,您需要查阅它以选择各种使用选项。我选择采用默认设置,并直接从命令行运行它,'sudo rkhunter --checkall.' Ubuntu 社区提供了一个 非常完善的帮助页面。Rootkit Hunter 在 GNU 通用公共许可证下获得许可,Rootkit Hunter 的源文件位于 Sourceforge 上。

更新:将 “sudo rkhunter -checkall” 更改为 “sudo rkhunter --checkall”(添加了连字符)。感谢读者在评论中提供的反馈!-rikki 

User profile image.
教育家、企业家、开源倡导者、终身学习者、Python 教师。教育心理学硕士,教育领导学硕士,Linux 系统管理员。

17 条评论

您好

在全新安装 clamav 后,我发出 freshclam 命令,

[root@localhost ~]# freshclam
错误:请编辑示例配置文件 /etc/freshclam.conf
错误:无法打开/解析配置文件 /etc/freshclam.conf]

并且应用程序警告我“数据库已过时”

我该如何解决这个问题...?

谢谢。

感谢这篇简短易懂的文章。

这正是我开始使用 ClamAV 和 Rootkit Hunter 所需要的。

我的 Kubuntu 上没有安装任何防病毒软件,老实说,自从几年前离开 Windows 后,我就忘记了 AV 和 Rootkit。

现在它已安装,我的第一次扫描显示没有 Rootkit,也没有小病毒。
但现在我更安全了,并希望为即将到来的第一个 Linux 病毒做好准备。

Br Hans

@Ganzalo

安装 clamav-deamon:sudo apt-get install clamav-daemon

/Br Hans

感谢 Gonzalo 的提问。我今晚刚刚在 Ubuntu 14.04 LTS 上进行了全新安装,它可以使用 “sudo fresclam” 工作。但是,您看起来可能是在 Fedora、RHEL 或 Centos 上,我不确定您的环境。如果是在 Fedora 上,这是一个可能的解决方案,http://rpm.pbone.net/index.php3/stat/4/idpl/29284699/dir/fedora_21/com/…。我的 Ubuntu 上的 “freshclam.conf” 可能与您的系统略有不同,但如果您需要,我很乐意分享。

再次问好,Don。

是的,我忘记说明环境了,这是一个 Fedora 22 (32 位)...
查看您提供的链接,这里只有 64 位的更新...
我尝试了
[dnf install clamav-update
上次元数据过期检查于 2015 年 9 月 26 日星期六 11:47:56 在 0:31:57 前执行。
软件包 clamav-update-0.98.7-1.fc22.i686 已经安装,正在跳过。
依赖关系已解决。
无需执行任何操作。
完成!]
但是“数据库已过时”的消息仍然存在...

我尝试了 dnf upgrade clamav-update
[[root@localhost ~]# dnf upgrade clamav-update
上次元数据过期检查于 2015 年 9 月 26 日星期六 11:47:56 在 0:39:07 前执行。
依赖关系已解决。
无需执行任何操作。
完成!]

所以我不知道如何将数据库“更新到最新”...
有什么建议吗...?

谢谢

gonzalo//.

这是来自 Server.world-info 的建议。

root@localhost ~]# dnf -y install clamav clamav-update

[root@localhost ~]# vi /etc/freshclam.conf

# 第 8 行:注释掉

# Example

[root@localhost ~]# vi /etc/sysconfig/freshclam
# 末行:注释掉

#FRESHCLAM_DELAY=disabled-warn
# 更新模式文件

[root@localhot ]# freshclam

回复 ,作者:Gonzalo San Gil, PhD

@Don 对于运行 rootkit hunter,应该是 'sudo rkhunter --checkall' 而不是 'sudo rkhunter –checkall'

已将 “sudo rkhunter --checkall” 更正。谢谢您。

#!哦,我的:我需要一个 vi/vim 教程先...
我担心我会“破坏”某些重要的系统文件...

#!无论如何,谢谢您,Dan:我会将该页面加入书签以便进一步阅读,等到我准备好使用文本编辑器时...

再次感谢您...

:)

gonzalo//.

您好,
仍然是错误的,其中一个不是连字符(或减号)符号。
以下是更正后的命令
sudo rkhunter --checkall

我从我的终端复制并粘贴到文章中,我相信现在是正确的了。:)

回复 ,作者:Emil Varughese (未验证)

尊敬的 Don,

您不应该更改本文的标题吗?它有点误导性。事实上,它基本上致力于帮助人们使他们的 GNU/Linux 系统更加安全...但却让人们错误地认为他们的 GNU/Linux 系统是刀枪不入的,但我们可以保护我们运行更容易受到病毒感染的系统的朋友。

我原本期望看到一些内容涵盖消除未使用的侦听端口、强化任何需要的服务、使用数据包过滤、可能是一些 sysctl 设置等等。相反,我发现您提到了用于删除 rootkit 的一些工具。

一旦您的机器被攻陷到某种程度,以至于某些第三方完全控制了您的机器,您就不能真正依赖在该机器上运行的任何工具来检测到入侵的存在。

让我重申一下...如果我控制了您的机器...我会确保您安装的任何工具都不会检测到我的存在。这将是我 “待办事项” 列表中的第一件事。

无论如何,这只是我的想法。

谢谢,祝您愉快。

-EE

感谢分享您的想法。:)

回复 ,作者:Extradimention… (未验证)

您好 Don,
我读了您关于 ClamAV 的幼稚故事,并且您真的相信您的系统非常安全。
这是我想提醒您注意的一些事情,以便您了解计算机安全不仅仅是防病毒软件的问题

它被称为“中间人攻击”,是当今针对几乎所有人的最具攻击性的策略。它的工作方式是有人实时拦截您的计算机系统与互联网交换的所有数据包。当您下载您认为来自 Linux 存储库的软件包时,它们实际上来自“坏人”的服务器。您的系统不再运行您认为它运行的操作系统,而是看起来像它的东西。优秀的 rootkit 永远不会被检测到。

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.