Linux系统安全优化之文件和文件系统安全优化文件系统层次的安全优化
1. 合理规划系统分区
建议划分为独立分区的目录
/boot :大小建议在200M以上。
/home :该目录是用户默认宿主目录所在的上一级文件夹,若服务器用户数量较多,通常无法预知每个用户所使用的磁盘空间大小
/var : 该目录用于保存系统日志、运行状态、用户邮箱目录等,文件读写频繁。占用空间可能会较多
/opt : 用于安装服务器的附加应用程序及其他可选工具,方便扩展使用
2. 通过挂载选项禁止执行set位程序、二进制程序
使/var分区中程序文件的执行(x)权限失效,禁止直接执行该分区中二进制程序
- # vi /etc/fstab
- /dev/sdc1 /var ext3 defaults,noexec 1 2
- # mount -o remount /var
如果想要从文件系统层面禁止文件的suid 或 sgid位权限,将上边的noexec改为nosuid即可
3. 锁定不希望更改的系统文件
使用 +i 属性锁定service 、passwd、grub.conf 文件(将不能正常添加系统用户)
# chattr +i /etc/service /etc/passd /boot/grub.conf
解除/etc/passwd文件的 +i 锁定属性
- # lsattr /etc/passwd //查看文件的属性状态
- # chattr -i /etc/passwd
Linux系统安全优化之应用程序和服务
1. 关闭不必要的系统服务
2. 禁止普通用户执行init.d目录中的脚本
- # chmod -R o-rwx /etc/init.d
- 或
- # chmod -R 750 /etc/init.d
3. 禁止普通用户执行控制台程序
/etc/security/console.apps/目录下每一文件对应一个系统程序,如果不希望普通用户调用这些控制台程序,可以将对应的配置文件移除
- # cd /etc/security/console.apps/
- # tar jcpvf /etc/conhlp.pw.tar.bz2 poweroff halt reboot - - remove
4. 去除程序文件中非必需的set-uid 或 set-gid 附加权限
查找系统中设置了set-uid或set-gid权限的文件,并结合 –exec 选项显示这些文件的详细权限属性
# find / -type f perm +6000 -exec ls -lh { } \ ;
去掉程序文件的suid/sgid位权限
# chmod a-s /tmp/back.vim
编写shell脚本,检查系统中新增加的带有suid或者sgid位权限的程序文件
(1) 在系统处于干净状态时,建立合法suid/sgid文件的列表,作为是否有新增可疑suid文件的比较依据
- # find / -type f -prem +6000 > /etc/sfilelist
- # chmod 600 /etc/sfilelist
(2) 建立chksfile脚本文件,与sfilelist比较,输出新增的带suid/sgid属性的文件
- # vi /usr/sbin/chksfile
- #!/bin/bash
- OLD_LIST=/etc/sfilelist
- for i in ` find / -type -prem +6000 `
- do
- grep -F “$i” $OLD_LIST > /dev/null
- [ $? -ne 0 ] && ls -lh $i
- done
- # chmod 700 /usr/bin/chkfile
(3) 执行chkfile脚本,检查是否有新增suid/sgid文件
- # cp /bin/touch /bin/mytouch //建立测试用程序文件
- # chmod 4755 /bin/mytouch
- # chksfile //执行程序脚本,输出检查结果
Linux系统安全优化中文件和文件系统安全优化文件系统层次的安全优化的配置就向大家介绍完了,希望大家已经掌握。
【编辑推荐】