一:禁止root用户远程登陆
adduser admin
passwd admin
passwd=_Shanghai#15!
vim /etc/sudoers
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
admin ALL=(ALL) ALL
vim /etc/ssh/sshd_config
PermitRootLogin no
systemctl restart sshd
二:设置系统审计功能
service auditd status #查看auditd服务
auditctl -s #查看看auditd的服务状态,enabled是否为1,1为开启,0为关闭
#开启了autid服务后,所有的审计日志会记录在/var/log/audit/audit.log文件中,该文件记录格式是每行以type开头,其中红框处是事件发生的时间(代表从1970年1月1日到现在过了多久,可以用date命令转换格式),冒号后面的数字是事件ID,同一个事件ID是一样的。
#audit可以自定义对指定的文件或命令进行审计(如监视rm命令被执行、/etc/passwd文件内容被改变),只要配置好对应规则即可,配置规则可以通过命令行(临时生效)或者编辑配置文件(永久生效)两种方式来实现。
auditctl -w /bin/rm -p x -k removefile #-w指定所要监控的文件或命令 -p指定监控属性,如x执行、w修改 -k是设置一个关键词用于查询
#修改配置文件永久生效
vim /etc/audit/audit
## Set failure mode to syslog
-f 1
-w /etc/passwd -p wxa #对/etc/passwd文件监视写读执行的操作
-w /etc/at.allow -p wxa
-w /etc/at.deny -p wxa
-w /etc/inittab -p wxa
-w /etc/init.d/ -p wxa
-w /etc/init.d/auditd -p wxa
-w /etc/cron.d/ -p wxa
-w /etc/cron.daily/ -p wxa
-w /etc/cron.hourly/ -p wxa
-w /etc/cron.monthly/ -p wxa
-w /etc/cron.weekly/ -p wxa
-w /etc/crontab -p wxa
-w /etc/group -p wxa
-w /etc/passwd -p wxa
-w /etc/shadow -p wxa
-w /etc/sudoers -p wxa
-w /etc/hosts -p wxa
-w /etc/sysconfig/ -p wxa
-w /etc/sysctl.conf -p wxa
-w /etc/modprobe.d/ -p wxa
-w /etc/aliases -p wxa
-w /etc/bashrc -p wxa
-w /etc/profile -p wxa
-w /etc/profile.d/ -p wxa
-w /var/log/lastlog -p wxa
-w /var/log/yum.log -p wxa
-w /etc/issue -p wxa
-w /etc/issue.net -p wxa
-w /usr/bin/ -p wxa
-w /usr/sbin/ -p wxa
-w /bin -p wxa
-w /etc/ssh/sshd_config -p wxa
-w /bin/rm -p wxa #对rm的命令进行监视
#重启服务
service auditd restart
#查看命令的使用
auditctl -l 查看定义的规则
auditctl -D 清空定义的规则
auserach -a number #只显示事件ID为指定数字的日志信息
auserach -c commond #只显示和指定命令有关的事件auserach -c rm
auserach -i #显示出的信息更清晰,如事件时间、相关用户名都会直接显示出来,而不再是数字形式
auserach -k #显示出和之前auditctl -k所定义的关键词相匹配的事件信息
三:安装lynis系统漏洞扫描工具
yum --enablerepo=epel -y install lynis
lynis audit system #开始扫描
grep -E "^warning|^suggestion" /var/log/lynis-report.dat #扫描结果默认保存路径,过滤出警告内容
四:linux系统安装防止恶意代码软件 ClamAV
yum install -y pcre* zlib zlib-devel libssl-devel libssl openssl epel-release #安装依赖
yum install clamav clamav-server clamav-data clamav-update clamav-filesystem clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd #安装clamav组件 6和7通用
/usr/bin/freshclam #下载更新病毒库
#如果下载不了,可以wget到本地来
cd /usr/share/clamav
wget http://database.clamav.net/main.cvd
wget http://database.clamav.net/daily.cvd
wget http://database.clamav.net/bytecode.cvd
chown clamav:clamav *
#病毒扫描
clamav 有两个命令:clamdscan、clamscan
clamdscan #命令一般用 yum 安装才能使用,需要启动clamd服务,执行速度快
clamscan #命令通用,不依赖服务,命令参数较多,执行速度稍慢
clamdscan:
用clamdscan扫描,需要开始服务才能使用。速度快,不用带 -r ,默认会递归扫描子目录
systemctl start clamd
clamdscan /usr #扫描/usr目录
clamscan -r /usr #clamscan不用启动服务,默认正常文件和病毒文件都会显示,不想显示看下面的参数
clamscan --no-summary -ri /tmp
-r 递归扫描子目录
-i 只显示发现的病毒文件
--no-summary 不显示统计信息
#加入定时任务每周六晚执行
crontab -e
30 23 * * 6 clamscan -ri /usr >> /root/virus.txt