- 论坛徽章:
- 0
|
本帖最后由 yuhuohu 于 2010-11-30 11:08 编辑
前人种树,后人乘凉,开源世界,自由分享
做系统管理的不可能单纯的仅接触solaris,unix大同小异,完全可以从solaris出发达到触类旁通的目的。近日有空,看些Linux的管理文档,主要是看Linux和Solaris的区别点,顺手发些心得,这是第七篇:安全与加固
从Linux到Solaris (updating)
目录:
第七章:安全与加固
安全啊安全,兄弟们,任何一台挂在网络上的系统都需要进行安全加固滴,否则后果自负!
系统的安全性涉及许多方面,从初步加固到对补丁和漏洞进行审查等等,但根本目的都是为了保证数据的三性:完整性(一致性)、保密性、可用性。关于安全方面的内容你可能需要到专门的安全论坛获取专业资料,本文仅讨论一些管理员所必须知道的概念性的常识。
内容包括:
- 加固工具
- 最低权限
- 审计工具
- 加固和删除服务
- 内核安全性优化
本文中涉及到安全加固的思想/思路同样也适用于其他的任何一种已联网的操作系统(虽然具体操作不同),包括windows,linux,aix,hp-ux.....
1、加固工具通用工具
著名的安全访问控制工具,可通过/etc/hosts.allow,hosts.deny对允许受访的服务以及来访的源进行控制,并记录源IP,账号名等登录成功/失败信息。Solaris 9 &10和Linux均已内置这个功能,Solaris中对应的软件包名为SUNWtcpd
防火墙
- Linux常用iptable
- Solaris常用ipfilter,Solaris 10已内置这个软件包
Solaris常见的一些加固工具SST(Solaris安全性工具箱)的前身为JASS(Jumpstart Architecture and Security Scripts)。SST能够以一种自动的,可扩展的,可伸缩的机制维护一个安全的Solaris系统。JASS脚本可以审计并加固solaris.
详见:http://www.sun.com/software/security/jass/
- Role Based Access Control
RBAC实用工具可让管理员通过分配角色和特权给系统中的普通用户达到管理任务分散的目地,同时这些管理任务不再需要使用root账号从而降低了安全风险。
详见:http://www.sun.com/bigadmin/feat ... east_privilege.html
- Basic Auditing and Reporting Tool
BART(基本审计和报告工具)的设计目的是为了监视文件系统并查看文件的内容变换情况。BART能够查看系统中的文件并记录它们的信息从而得知文件是否有变化。
BART的功能类似于商业版本的Tripwire软件(著名的文件完整性检查监控软件)的简化版
详见bart的manpage.
作者保留版权,转载请注明出处,来自cu-yuhuohu.
2、最低权限Unix系统中通常有大量进程需要以完全root权限运行,这些进程需要访问设备,修改进行,处理受限的文件,以及访问其他受限的资源等等
如果所有的这些进程均以完全root权限运行会导致潜在的安全威胁。这些进程的任一个进程如果被攻击者控制,攻击者将获得对系统的完全root权限。
- Solaris 10设计了最低权限运行的策略。最低权限特性能够让管理员以满足一个应用程序正常运作的最低权限运行该应用,并把其他无需的特权全部删除。一个进程可设置的特权大约有50种。
关于Solaris 10的最低权限功能及可用的特权说明,详见:
- http://www.sun.com/bigadmin/features/articles/least_privilege.html
3、审计工具可以在Linux上使用的审计工具大部分也都有for Solaris的版本。比如
- http://www.sun.com/software/security/tripwire/
- crack and John the Ripper 主要用于检查弱密码问题(复杂性不够,长度不够等等)
- ftp://ftp.cert.dfn.de/pub/tools/password/Crack/
- http://www.openwall.com/john/
4、加固和删除服务加固Linux或Solaris机器的步骤基本相同
- 如果不想启动哪项服务,就把在/etc/rc*.d/目录下对应的文件删除(当然建议你先备份)
- 如果是受inetd控制的服务,可把相关配置从Inetd的配置中删除或注释
- solaris 9的inetd配置文件为/etc/inetd.conf
- solaris10可直接用inetadm -d service_name or svcadm disable service_name命令禁用相应的服务
5、内核安全性调整solaris有两种方法可防止堆栈缓冲溢出
- 全局性设置:在/etc/system中设置noexec_user_stack.所有的应用将均采用这个选项的设置运行
- 个别性设置:对单独某个应用,可将其和/usr/lib/ld/map.noexstk映射文件建立关联。
关于/etc/system文件的noexec_user_stack选项的设置,详见:《Solaris 可调参数参考手册》
作者保留版权,转载请注明出处,来自cu-yuhuohu.
先写给从非Solaris版来的哥们看,其他章节内容正在努力修订中
[ 本帖最后由 yuhuohu 于 2009-7-4 20:31 编辑 ] |
|