C Yassp工具包安装安全的 Solaris 系统( 三 )


55 23 * * 6 /secure/rotate_log -n 40 kernlog
55 23 * * 6 /secure/rotate_log -n 40 local0log
55 23 * * 6 /secure/rotate_log -n 40 local2log
55 23 * * 6 /secure/rotate_log -n 40 local5log
55 23 * * 6 /secure/rotate_log -n 40 newslog
55 23 * * 6 /secure/rotate_log -n 40 userlog
55 23 * * 6 /secure/rotate_log -n 40 lprlog
55 23 * * 6 /secure/rotate_log -n 40 maillogd
在root的cron中加入每年清理日志文件的条目
##Empty login/logout records at year end
0 0 31 12 * /secure/wtrim.pl wtmp 20
0 0 31 12 * /secure/wtrim.pl wtmpx 20
#
#Solaris 2.x logs
0 4 * * 6 /secure/totate_log -L /var/adm -n 30 loginlog
0 4 * * 6 /secure/rotate_log -L /var/adm -n 30 sulog
0 4 * * 6 /secure/rotate_log -L /var/adm -n 2 vold.log
0 4 * * 6 /secure/rotate_cron

其它的需要在root的cron设置条目:
每天与可靠的时间源进行时间同步,使用rdate(NTP会更加精确,但会带来相应的风险)
##Synchronise the time:
0 * * * * /usr/bin/rdate YOURTIMEHOST >/dev/null 2>&1
安装检查重要进程是否运行的脚本,monitor_processes.pl并在root的cron中加入:
##Check that important processes are running during Office hours:
##[If you run 7x24,modify accordingly]
0,30 8-19 * *1-5 /secure/monitor_processes.pl sshd httpd

每次安装新的程序后,最好在文件中记录下来,如:
cat >/etc/mods<
15.10.00 james New install of Solaris8 and tools
EOF

10、限制SUID文件
设置SUID位的文件,允许用户以文件所有者的权限执行此程序 。常用来让普通用户执行只有root

能运行的程序,但是存在缓存溢出的风险 。
* Solaris有很多“SUID root”的执行程序,每一个都会带来风险,因此尽可能多的停止SUID程

序 。
* 阅读SUID的参考文件

发现系统中的SUID文件
使用find命令:
find / -perm -u s -ls
find / -perm -g s -ls 查找GUID程序

如何处理SUID文件:
* 直接删除
* 关闭程序(chmod 000 FILENAME)
* 移去SUID位(chmod ug-s FILENAME)
* 对文件回以组限制(首先移去所有人的权限 chmod o-rwx),允许组访问(chgrp MYGROUP

MYFILE) 。

哪些SUID文件需要回以限制
* 在一些具有用户帐号的敏感服务器上或者关键的进程由非root用户运行,应尽可能地减少SUID

文件 。
* 对于可靠性要求非常高的系统,建议除"pt_chmod","utmp_update"和"su"以外,其余全停 。
* Reg Quinton解释了每一个SolarisSUID程序,并给出配置建议 。
* 例子:
* 象uucp这样的工具,基本无用,可以删除
pkgrm SUNWbnuu
chmod ug-s /usr/bin/cu /usr/bin/uu* /usr/lib/uucp/*
* 另一个没有用处的工具包是kcms(Kodak Color Management System)
pkgrm SUNWkcspf SUNWcspx SUNWkcspg SUNWkcsrt
chmod ug-s /usr/openwin/bin/kcms*
* 如果不使用打印机
chmod ug-s /usr/lib/lp/bin/netpr /usr/sbin/lpmove /usr/bin/lp /usr/bin/lpset

/usr/bin/lpstat /usr/bin/cancel /etc/lp/alerts/printer
* 只允许root使用r命令
chmod ug-s /usr/bin/rcp /usr/bin/rlogin /usr/bin/rsh
* 只允许root对网络进行侦听及列出进程列表
chmod ug-s /usr/sbin/snoop /usr/sbin/devinfo /bin/rdist /usr/bin/netstat

/usr/local/bin/top /usr/sbin/traceroute /usr/local/bin/lsof /usr/bin/*/ps

/usr/ucb/*/ps /usr/sbin/*/whodo /usr/bin/*/uptime /usr/bin/*/w
* 只允许root做备份和恢复
chmod ug-s /usr/lib/fs/ufs/ufsdump /ufs/ib/fs/ufs/ufsrestore
* 假设不使用YP、NIS
chmod ug-s /usr/bin/chkey
* 只允许root使用cron和at
chmod ug-s /usr/bin/at /usr/bin/atq /usr/bin/atrm /usr/bin/crontab
* 只允许root管理系统
chmod ug-s /usr/bin/admintool /usr/lib/fs/ufs/quota /usr/bin/tip /usr/bin/fdformat

/usr/bin/eject /usr/bin/volcheck /usr/bin/volrmmount /usr/bin/rmformat
* 不使用Openwindows和CDE
chmod ug-s /usr/dt/bin/* /usr/openwin/*/*
* Sendmail:不做email服务器的主机不需要sendmail设置SUID位

推荐阅读