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



如何提高Disksuite的安全性
Disksuite是系统内置的工具,用来做磁盘镜象及设置RAID 。它需要RPC的支持(在inetd中运行的

rpc.metamhd和rpc.metad) 。
1. 尽量不运行Disksuite
* 硬件RAID的好处在于不需要特殊的软件支持 。这对于对安全性要求较高的系统十分有利 。而且

当出现问题时,你会发现Disksuite并不是太容易使用的 。
* 对于象是系统盘等,数据并不会频繁变动的系统盘,作镜像(cold mirroring)就足够了,使用

脚本mirror_boot.sh可以完成此项工作 。
2. 运行Disksuite,但是停止RPC服务 。停止inetd.conf中的"metad"服务会引起以下结果:
* "metatool"将不会工作,但是命令行工具还可以运行 。为了应付系统盘的灾难性错误,最好了

解这些命令行工具 。
* Disksets-系统间共享的metadevices将不能使用 。
3. 如果使用Disksuite和RPC,使用WIEtse Venema的RPCBIND 。

* Solaris8系统自带的Sunscreen EFS Lite Firewall可以用来对rpc服务的存取进行限制 。
* IPfilter也可以用来做限制RPC服务访问的本地防火墙 。
* IPfilter可以在8以前的老版本的Solaris上运行,并且是免费的 。
* It"s doesn"t have an RPC state based engine though(so it can"t filter on RPC

program names or allow RPC to specific destinations) 。
* But it can be used to allow all localhost RPC traffic(enough for some RPC

applications such as Disksuite or CDE)and deny all remote traffice except,say,HTTP or

whatever service is provided to remote hosts 。
* 使用Wietse Venema的rpcbind(包含在Yassp的tarball里),可以提供类似tcp wrapper的访问控

制和日志记录 。Rpcbind是一种“目录”服务用来定位某一种服务(通过RPC名或者RPC号) 。因为

它并不是连接服务的中介,因此它并不能真正为RPC程序提供访问控制 。用端囗扫描器可以检测激

活的RPC服务,除非内核被定制成过滤这些连接,否则并不能防止对服务的访问 。

9、日志、Cron、许可
配置日志及pruning:
* Syslog日志:Yassp使用修改过的/etc/syslog.conf配置,开启了更多的日志记录保存在

/var/adm/messages中 。同时也安装了一个可选的/etc/syslog.conf.server,是为loGhosts设计

的并将不同的服务存在分开的log文件中 。
* Yassp关闭了root帐号cron中有关log的条目 。添加了运行"daily"脚本 。





配置Syslog
Syslog客户端:在/etc/hosts文件中指定log服务器 。
* 测试log服务器是否正常
logger -p auth.warn "test of syslog",检查是否记录在log服务器里 。
* 在log服务器及本地同时记录日志,取消/etc/syslog.conf中的下一行注释:
*.err;auth.info;kern.debug /var/adm/messages
* 如果日志记录不能正常工作,可以参照syslog.conf中的例子及提示 。
Syslog服务器(loghost):
* log服务器需要一块大的磁盘用来保存日志文件 。
* 在Solaris8系统中,Yassp将以"-t"参数启动syslog,因此它将不接受其它主机的记录日志的请

求 。如果想要设置集中的log服务器,需要在/etc/yassp.conf中设置SYSLOGFLAGS="" 。
* Yassp还安装了一个/etc/syslog.conf.server配置文件,是针对log服务器并将不同的服务产生

的日志存于/var/log目录下不同的文件中 。用它覆盖配置文件并重新启动syslog:
mv /etc/syslog.conf /etc/syslog.conf.client
cp /etc/syslog.conf.server /etc/syslog.conf
kill -l `cat /etc/syslog.pid`
* 使用rotate_log工具对日志进行管理和压缩,在root的cron中加入:
##Prune syslog logs weekly,keeping the last 6 months or so:
55 23 * * 6 /secure/rotate_log -n 40 alertlog
55 23 * * 6 /secure/rotate_log -n 40 authlog
55 23 * * 6 /secure/rotate_log -n 40 cronlog
55 23 * * 6 /secure/rotate_log -n 40 daemonlog

推荐阅读