使用Yassp工具包安装安全的Solaris系统 (四)
发布时间:2006-10-14 8:47:44   收集提供:gaoqian

11、安装完整性检测工具:如Tripwire 
应该经常对系统中文件的完整性进行检查,以确保他们没有被恶意的改变。Solaris提供了 

"pkgchk -n"命令将安装的文件大小、权限及校验与package数据库进行比较。但是检验是可以会 

欺骗的,数据库也可能会被更改。因此,真正需要的是采用安全的hashing算法的文件完整性检查 

工具。 
Yassp将在/secure/tripwire中安装tripwire。它采用多种hashing算法。 
系统安装到这个阶段,我们建议对新配置的系统及文件创建快照(snapshot),初始化tripwire的 

数据库,定期进行检查变动情况。如果有可能的话,将主数据库单独保存。 
文件完整性检查的可选功能 
* Tripwire:有免费和商业两种版本 
* 建议在中心服务器上使用商业版本,更加稳定,在其它主机上使用免费的版本。 
* PGP可用,PGP can also be used,by signing files to be protected(creating lots of 

signature files),then writing a script to check the validity of signatures.This will 

not catch permission,link,inode or modify date changes though. 
* MD5 signatures(单向hash算法)可能同样使用,但是MD5签名列表不要保存在被监视的主机上, 

除非已经加密或者PGP signed。 

使用免费Tripwirer例子: 
* Yassp安装/secure/tripwire/tripwire及缺少的配置tw.config,也可以获得源代码后自行编译 

。 
* 如果需要,编辑/secure/tripwire/tw.config,符合自己要求。 
* 接下来,做系统的初始状态。 
cd /secure/tripwire; ./tripwire -i 2 -initialise -c tw.config建立一个新的文件数据库 

。可能会有一些文件无法找到的报错信息,忽略它们。把新产生的数据库(在 

/secure/tripwire/database)复制到软盘上。在将来如果怀疑系统遭受攻击或者改动时,可以使 

用此文件。 
* 可以在cron中设置每天进行检查,也可以手工进行 
./tripwire -i 2 -c tw.config 
* 告诉tripwire,文件及目录的改变正常 
tripwire -update [/file1 /file2 /patch3.....] 
* improvements: 
* tripwire数据库如果保存在同一主机上,应压缩并加密,或者用强加密工具(如PGP)对其进行 

sign。 
* 从一台信任主机上检查其它系统,复制tripwire及其数据库,通过SSH远程运行它,检查完后, 

删除数据库文件。 
* 这样使得攻击者难于觉察系统采用了tripwire进行监控。 
* 阅读脚本trip_host.sh,过滤掉“无文件及目录”报错。它必须从‘master'主机上运行,对目 

标机有SSH信任关系。 

第一次运行 
/secure/tripwire/trip_host.sh -init HOST 
以后每次运行 
/sevure/tripwire/trip_host.sh -check HOST 

将database文件妥善保存。 

12、安装、测试、加固应用程序 
特定的应用,如FTP、DNS、Email等将在其它文章中论述。 

13、开始使用 
准备使用 
1.如果不再需要使用CD-ROM,在/etc/yassp.conf中关闭volume manager。如果在今后需要安装 

CD,手工启动vold进行新设备的检测: 
drvconfig;disks;vold &; df -k 
2.如果在安装调试的过程当中,必须将/opt及/usr分区安装成为read-write,那么此时,将它们 

mount成为read-only。 
3.重新做tripwire的初始化。 
4.将系统备份到两盘磁带上,one offsite。 
5.使用扫描器扫描系统,确保只有需要的服务开启。 
6. 请其他人做测试,避免遗漏。 
7. 详细检查-什么在工作?什么被禁止?检查控制台/log的内容,系统是否如希望那样工作?经 

常检查日志记录。 

日常维护 
* 使用Sun的Patchdiag进行补丁的检查,需要就进行升级。对于内核的补丁,要在别的机器上先 

进行测试。 
* 检查所有的错误日志及异常行为:syslog(/var/adm/messages或 

/var/log/*log),/var/cron/log,last,/var/adm/sulog,/var/adm/loginlog,application/server 

日志记录。 
* 编写脚本,报告关键进程是否正常,关键的系统是否可以ping通。 
* 运行tripwire。 
* 定期查看最新的漏洞及风险报告。 


=================================================================================== 
此文的原文在这里 
http://www.boran.com/security/sp/Solaris_hardening3.html 

我水平有限,翻译中一定有很多错误,而且也有不少不明白的地方,希望大家一起讨论,指出 
其中理解错误的地方,共同提高。 

东方 
2001.3.16 
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50