Ubuntu 24.04 安装 ClamAV 完整教程
1. 安装 ClamAV 主程序和守护进程
# 更新软件包索引sudoaptupdate# 安装 clamav 和 clamav-daemon(推荐,提升扫描速度)sudoaptinstallclamav clamav-daemon-y安装
clamav-daemon可使病毒库常驻内存,避免每次扫描都重新加载库文件。
2. 更新病毒库
首次安装后病毒库为空,必须手动更新。
# 停止自动更新服务,防止冲突sudosystemctl stop clamav-freshclam# 手动下载最新病毒库(首次耗时较长)sudofreshclam# 重启自动更新服务,并设置开机自启sudosystemctlenableclamav-freshclam--now3. 验证安装是否成功
clamscan--version若正常显示版本信息,则安装成功。
4. 基本扫描命令
| 用途 | 命令示例 |
|---|---|
| 扫描单个文件 | clamscan /path/to/file |
| 递归扫描整个目录 | clamscan -r /path/to/dir |
| 扫描并显示详细信息 | clamscan -r --verbose /path |
| 扫描并自动删除感染文件(谨慎使用) | clamscan --remove /path |
| 扫描并记录日志 | clamscan -r /home --log=/var/log/clamav/scan.log |
5. (可选)解决freshclam更新后的警告
如果执行sudo freshclam后出现:
WARNING: Clamd was NOT notified: The RELOAD command is disabled.原因:freshclam更新了病毒库,但未通知clamd守护进程重载,导致clamd仍使用旧库(仅影响clamdscan或依赖clamd的应用)。
解决方法:
编辑
/etc/clamav/clamd.conf,确保存在以下配置(通常已存在):LocalSocket /var/run/clamav/clamd.ctl编辑
/etc/clamav/freshclam.conf,添加或取消注释:NotifyClamd /etc/clamav/clamd.conf重启两个服务:
sudosystemctl restart clamav-daemonsudosystemctl restart clamav-freshclam再次运行
sudo freshclam,若提示Clamd successfully notified则成功。
如果您只使用
clamscan(不依赖守护进程),则可忽略此警告。
6. (可选)修改病毒库默认存放位置
默认位置为/var/lib/clamav/。如需更改,请按以下步骤操作(必须同时修改两处配置):
修改
clamd的配置文件/etc/clamav/clamd.conf:DatabaseDirectory /自定义/路径/clamav修改
freshclam的配置文件/etc/clamav/freshclam.conf:DatabaseDirectory /自定义/路径/clamav创建新目录并赋予
clamav用户读写权限:sudomkdir-p/自定义/路径/clamavsudochown-Rclamav:clamav /自定义/路径/clamav(可选)迁移现有病毒库文件,避免重新下载:
sudomv/var/lib/clamav/* /自定义/路径/clamav/重启服务:
sudosystemctl restart clamav-daemonsudosystemctl restart clamav-freshclam
7. (可选)安装图形界面 ClamTK
sudoaptinstallclamtk-y安装后可在应用程序菜单中启动。
8. (推荐)设置定时自动扫描
使用cron计划任务实现每日自动扫描并记录日志。
# 编辑 root 的 crontabsudocrontab-e添加以下行(示例:每天凌晨 2:00 扫描/home目录,日志保存到/var/log/clamav/daily.log):
0 2 * * * clamscan -r /home --log=/var/log/clamav/daily.log9. 卸载 ClamAV
如需完全移除:
sudoaptremove--purgeclamav clamav-daemon clamtk-ysudoaptautoremove-y10. 针对 Linux 主机的深度安全增强(配合 ClamAV)
由于您主要在 Linux 环境下使用,需要明确分工:ClamAV 负责邮件/文件交换中的 Windows 病毒;本节的工具专门负责检测 Linux 系统自身的 Rootkit、后门和木马。
10.1 安装轻量级 Rootkit 检测工具:Chkrootkit
# 安装sudoaptinstallchkrootkit-y# 执行快速全盘扫描(结果直接输出至屏幕)sudochkrootkit10.2 安装功能更全面的检测工具:RKHunter
# 安装sudoaptinstallrkhunter-y# 更新本地特征库sudorkhunter--update# 执行系统全面扫描(--sk 用于跳过按 Enter 确认的交互步骤)sudorkhunter--check--sk10.3 查看扫描日志与处理误报
- RKHunter 日志位置:
/var/log/rkhunter.log - Chkrootkit 日志位置:
/var/log/chkrootkit.log(若无,可重定向:sudo chkrootkit > /var/log/chkrootkit.log)
⚠️ 关于误报(Warnings):
rkhunter和chkrootkit经常因为系统内核升级、SSH配置变更或/etc/passwd修改而报“警告”。这并不代表服务器被入侵。建议将第一次运行的结果保存为基准文件,后续通过diff对比变化,重点关注INFECTED(感染)字样。
10.4 设置定时联动扫描(每日安全巡检)
编辑 root 的 crontab:
sudocrontab-e添加以下内容(每天凌晨 3:00 依次扫描 Linux 后门、病毒库并汇总邮件通知):
0 3 * * * /usr/bin/rkhunter --check --sk --cronjob >> /var/log/rkhunter_daily.log 2>&1 0 4 * * * /usr/sbin/chkrootkit >> /var/log/chkrootkit_daily.log 2>&1 0 5 * * * /usr/bin/clamscan -r /home --log=/var/log/clamav/daily_scan.log注意事项(Linux 专用版)
- 分工明确:ClamAV 是杀毒引擎(偏向 Win 病毒),RKHunter/Chkrootkit 是主机入侵检测(偏向 Linux 后门),两者无替代关系,建议配合使用。
- 资源占用:
clamscan全盘扫描较耗 I/O,建议放在业务低峰期(如凌晨)运行。 - 误报处理:RKHunter 若频繁报
Warning,可通过sudo rkhunter --propupd更新文件属性数据库来消除已知合法变动。 - 病毒库路径权限:若修改默认路径,必须确保新目录属主为
clamav用户,否则freshclam无法写入。