linux服务器基线安全审计-阿里云开发者社区

开发者社区> 开发与运维> 正文

linux服务器基线安全审计

简介: 小榕

一:禁止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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章