SUN 系统安全实施总结 一、系统服务端口关闭 1、概述 a) 系统环境 SUN fire 280服务器,主要用途:WEB应用服务器+数据库服务器 b) SOLARIS系统有许多用不着的服务自动的处于使能状态。它们中可能存在的漏洞将使攻击者甚至不需要一个账户就能控制你的机器。关闭这些不需要的服务来保护系统。 2、实施步骤 a) 安装nmap扫描软件 b) 扫描整个系统 c) 确定要关闭的端口(只留telnet、ftp和Xwindows用到的端口) 3、实施过程 a) /etc/inetd.conf下面的端口关闭 只留telnet和ftp别的全部关闭 b) /etc/services下面的端口关闭 :只留telnet和ftp别的全部关闭 (要是觉得注释麻烦的话,作个备份,别的全部删除,只留下面俩行) ftp 21/tcp telnet 23/tcp
c) /etc/rc3.d下面的服务关闭 S开头的全部改为x开头 xS34dhcp xS76snmpdx xS80mipagent xS15nfs.server xS50apache xS77dmi d) /etc/rc2.d下面的服务关闭 # mv S70uucp xS70uucp # mv S71ldap.client xS71ldap.client # mv S72autoinstall xS72autoinstall # mv S73cachefs.daemon xS73cachefs.daemon # mv S73nfs.client xS73nfs.client # mv S74autofs xS74autofs # mv S74xntpd xS74xntpd # mv S80lp xS80lp # mv S94Wnn6 xS94Wnn6 e) 关闭Xwindows需要停止以下服务(为了便于调试,现在没有关闭Xwindows端口) # mv S71rpc x S71rpc # mv S99dtlogin xS99dtlogin 二、软件防火墙安装: 1、软件防火墙概述 a) 防火墙版本:tcp_wrappers-7.6 b) 安装目录:/usr/local/bin/tcpd c) 软件说明:在默认情况下,Solaris允许所有的服务请求。用Tcp_Wrappers来保护服务器的安全,使其免受外部的攻击 2、安装过程 a) 下载软件:tcp_wrappers-7.6-sol8-sparc-local b) 安装命令: 使用root权限:#pkgadd –d tcp_wrappers-7.6-sol8-sparc-local 3、策略制定 a) 策略说明 策略分为两部分,拒绝所有的telnet和ftp连接,对特定的IP地址和网段打开服务 b) 策略指定 拒绝:所有的连接 容许: IP地址:×××.×××. ×××.120(公司出口公网ip地址) 网段:192.0.0.(公司内网ip) 4、安全策略实施 a) 用root用户: Vi hosts.deny in.telnetd:ALL:DENY in.ftpd:ALL:DENY vi hosts.allow in.telnetd:×××.×××. ×××.120 192.0.0. in.ftpd: ×××. ×××. ×××.120 192.0.0. 5、安全测试 a) 从内网192.0.0.和×××. ×××. ×××.120可以telnet和ftp 系统。 b) 从外网别的ip地址不可以telnet和ftp系统。 c) 测试结果:防火墙运行正常 三、应用安全防护 1、oracle数据库安全防护 a) 密码策略 b) 数据库安全加强 2、BEA weblogic8.1安全防护 a) 密码加强 b) 应用安全加强 四、其他系统安全防护 1、防止堆栈缓冲益出安全策略 入侵者常常使用的一种利用系统漏洞的方式是堆栈溢出,他们在堆栈里巧妙地插入一段代码,利用它们的溢出来执行,以获得对系统的某种权限。要让你的系统在堆栈缓冲溢出攻击中更不易受侵害,你可以在/etc/system里加上如下语句: set noexec_user_stack=1 set noexec_user_stack_log =1 第一句可以防止在堆栈中执行插入的代码,第二句则是在入侵者想运行exploit的时候会做记录。 2、给系统打补丁 Solaris系统也有它的漏洞,其中的一些从性质上来说是相当严重的。SUN公司长期向客户提供各种版本的最新补丁,放在 网站。可用#showrev –p命令检查系统已打的补丁或到/var/sadm/patch目录下查已打过的补丁号,用patchadd命令给系统打补丁。
#!/sbin/sh if [ -x /usr/local/sbin/sshd ]; then /usr/local/sbin/sshd echo "sshd2 startup.." fi 5、测试 从ssh客户端连接服务器,测试成功。 6、注意: 编译ssh-3.2.9报错,在solaris8上编译时,保*.so错误。 七、系统设置完成状况 1、调试已经完成: 1)使用ssh作为远程管理工具,关闭telnet、ftp 2)关闭X windows,关闭rpc和dtlogin 2、现在系统的所开端口状况,nmap扫描结果: bash-2.03# nmap -P0 127.0.0.1
Starting nmap V. 2.54BETA28 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): (The 1547 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh
Nmap run completed -- 1 IP address (1 host up) scanned in 50 seconds bash-2.03#