linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > article > unix > unix提高 >
栏目导栏
资料搜索
热门文章
·20%的SOLARIS知识解决80%的问题
·Solaris启动过程详解 zt
·查看Solaris系统硬件配置的命令
·STRUTS 源码学习笔记
·Unix系列shell程序编写(中)
·SOLARIS技巧篇
·snort源码分析
·Unix系列shell程序编写(下)
·在solaris 10/x86下安装oracle
·Apache源代码分析——关于模块
·solaris 10 硬盘安装
·Solaris安全配置手册
·HP-UX基本指令快速参考
· Tomcat Server源码启动分析
·Solaris8 双网卡配置(路由器用
最新文章
·solaris系统安全配置
·RHEL5.0操作系统下NFS服务的配
·Solaris Linux 9下Vsftpd的配置
·在HP-UX下建立只归属于某个目录
·SolarWinds2002使用说明
·从外部存储划盘并加入vg,为fs扩
·因带库问题导致系统光纤卡报错
·Unix下多线程中条件变量的使用
·UNIX和Linux中信号的个数
·不同的类UNIX操作系统密码破解
·AIX系统下Domino邮件服务器安装
·限制ROOT用户远程登陆UNIX系统
·Unix操作系统入侵追踪反击战
·AIX CDE不能启动的故障一般性解
·CentOS4.4用VSFTPD架设FTP服务
Google
 
Solaris安全配置手册
[ 作者:Linux联盟收集  加入时间:2006-09-13 13:53:34  来自:loveunix ]
:针对solaris7,8操作系统的一个完全的安全配置手册,供系统管理员参考。HvyLinux联盟
HvyLinux联盟
Solaris安全配置流程1HvyLinux联盟
一,solaris系统安装3HvyLinux联盟
系统patch3HvyLinux联盟
建立/var分区3HvyLinux联盟
二,系统4HvyLinux联盟
eeprom安全4HvyLinux联盟
置核心大小为零4HvyLinux联盟
三,用户管理4HvyLinux联盟
禁止所有的系统账户(system accounts)4HvyLinux联盟
用强壮的密码设置程序5HvyLinux联盟
设置默认的密码参数5HvyLinux联盟
设置密码的最大生存周期5HvyLinux联盟
设定离用户密码过期的天数,当系统启动时提醒用户。5HvyLinux联盟
设定最小用户密码长度6HvyLinux联盟
防止远程的root登陆6HvyLinux联盟
纪录所有root的登陆情况6HvyLinux联盟
设置登陆会话超时时间6HvyLinux联盟
设置默认的屏蔽掩码6HvyLinux联盟
设置root的umask6HvyLinux联盟
确定登陆需要密码验证7HvyLinux联盟
设置shell的环境变量7HvyLinux联盟
检查每个用户的密码档设置7HvyLinux联盟
去掉所有path环境变量里的“.”7HvyLinux联盟
限制su命令,添加可以su的用户到sugroup里7HvyLinux联盟
四,inetd超级进程8HvyLinux联盟
注释掉所有确实不需要的服务8HvyLinux联盟
对inetd的服务实现TCP wrapper8HvyLinux联盟
加固inetd8HvyLinux联盟
关于xinetd8HvyLinux联盟
五,系统启动服务(rc.X)9HvyLinux联盟
去掉不需要的启动服务9HvyLinux联盟
禁止DMI服务9HvyLinux联盟
禁止默认的mounting suid features9HvyLinux联盟
检查所有的.rhosts文件10HvyLinux联盟
禁止基于rhosts的用户认证10HvyLinux联盟
检查信任关系10HvyLinux联盟
启动服务脚本的屏蔽掩码10HvyLinux联盟
六,网络接口的调整和安全11HvyLinux联盟
缩短ARP缓存的存在周期11HvyLinux联盟
缩短条目在arp-table里刷新的时间11HvyLinux联盟
禁止回应广播的的请求来防止一些特殊的具有危害性的ping包11HvyLinux联盟
启动时禁止源路由11HvyLinux联盟
防止系统在启动时启动ip转发11HvyLinux联盟
设置系统禁止ip包转发12HvyLinux联盟
设置系统精确的多路寻址12HvyLinux联盟
保证系统不响应icmp网络掩码请求12HvyLinux联盟
防止系统响应icmp的时间戳请求12HvyLinux联盟
防止系统响应icmp时间戳广播12HvyLinux联盟
防止系统发送icmp转发信息13HvyLinux联盟
改变TCP初始序列号生成参数13HvyLinux联盟
设置in.routed在静态模式13HvyLinux联盟
禁止路由13HvyLinux联盟
八,小型服务14HvyLinux联盟
1,NFS14HvyLinux联盟
2,NIS,NIS+15HvyLinux联盟
3,MAIL15HvyLinux联盟
4,FTP16HvyLinux联盟
5,TELNET17HvyLinux联盟
九,X-Windows17HvyLinux联盟
十,文件许可权限18HvyLinux联盟
去掉不用的suid文件18HvyLinux联盟
去掉不用的sgid程序18HvyLinux联盟
删除一切/etc目录下的组用户可写的文件19HvyLinux联盟
移除/etc目录下一切对用户可写的文件19HvyLinux联盟
改变所有文件的rw-rw-rw权限为rw-r-r-19HvyLinux联盟
改变文件的rwxrwx???19HvyLinux联盟
找出可写的目录20HvyLinux联盟
确定所有应用服务的启动脚本的用户属主和用户组是root20HvyLinux联盟
打开cron程序的记账20HvyLinux联盟
检查utmp,utmpx的权限20HvyLinux联盟
寻找没有用户关联的文件21HvyLinux联盟
寻找没有组关联的文件21HvyLinux联盟
检查/var/cron的权限21HvyLinux联盟
十一,登录和记账21HvyLinux联盟
设置cronlogfile的保存空间为2m21HvyLinux联盟
记账所有的inetd服务22HvyLinux联盟
修改syslog.conf文件22HvyLinux联盟
安装tripwire22HvyLinux联盟
IDS22HvyLinux联盟
日志文件观察者(swatch)22HvyLinux联盟
禁止telnet远程管理,用ssh23HvyLinux联盟
十二,其他23HvyLinux联盟
设置启动标示23HvyLinux联盟
HvyLinux联盟
一 solaris系统安装HvyLinux联盟
系统patchHvyLinux联盟
解决方案:HvyLinux联盟
连接站点http://sunsolve.sun.com寻找solaris的最新补丁路径HvyLinux联盟
showrev -p [安装的补丁列表命令]HvyLinux联盟
建立/var分区HvyLinux联盟
解决方法:HvyLinux联盟
/var分区是存放logfile以及系统变动文件的文件系统,因为它的易变化性,以及在系统运作过程中的不断扩大,所以不要把/var文件系统包括再root分区里,以免有恶意程序恶意扩大日志文件来dos根分区。HvyLinux联盟
1)在系统安装之初解决这个问题。HvyLinux联盟
2)划分较小的独立的文件系统给/varHvyLinux联盟
3)并挂接在/下。HvyLinux联盟
HvyLinux联盟
二 系统HvyLinux联盟
eeprom安全HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
先解释一下openboot安全级别:HvyLinux联盟
none 不需要任何口令HvyLinux联盟
command 除了boot和go之外的所有命令都需要口令。HvyLinux联盟
Full 除了go命令之外的所有openboot命令都需要openboot口令HvyLinux联盟
好!用# eeprom security-mode=command命令来改变openboot的安全级别到command级。当然,你首先得要用# eeprom security-password命令来给openboot设置强壮口令。HvyLinux联盟
为什么要这样做:因为能够访问openboot的用户可以从几乎所有的scsi设备(外部硬盘或cdrom)上引导系统,这样用户如果从他们自己的媒体来引导系统的话,就等于完全控制了系统。同样,用户能够用stop-A停止系统,可以修改所有openboot环境变量。这是非常危险的事情。HvyLinux联盟
HvyLinux联盟
HvyLinux联盟
置核心大小为零HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加行到:/etc/system文件里:HvyLinux联盟
set sys:coredumpsize = 0HvyLinux联盟
我建议这样做,因为你需要去分析内核,这样做可以防止由于你的误操作而损坏你的硬盘。HvyLinux联盟
参考脚本:HvyLinux联盟
disable-core.shHvyLinux联盟
HvyLinux联盟
HvyLinux联盟
三 用户管理HvyLinux联盟
禁止所有的系统账户(system accounts)HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
编辑/etc/passwd文件使所有系统账户没有shell。如:noaccess:x 60002:60002:No Access User:/:/sbin/noshellHvyLinux联盟
noshell.c应该这样写:HvyLinux联盟
#include <stdio.h>HvyLinux联盟
void main() {HvyLinux联盟
printf(“sorry!no shell with this account\n”);HvyLinux联盟
return 0;HvyLinux联盟
}HvyLinux联盟
gcc -o ./noshell ./noshell. cHvyLinux联盟
cp /sbin/noshell /sbin/noshell.solarisHvyLinux联盟
cp ~/noshell /sbin/noshellHvyLinux联盟
禁止不需要的系统账户,在/etc/shadow文件中用NP标志放在那些用户的密码段,这样那些用户就被禁止了。HvyLinux联盟
基本的sys V unix系统账户:HvyLinux联盟
bin, daemon,adm,lp,smtp,sys,uucp,nuucp,nobody,noaccessHvyLinux联盟
用强壮的密码设置程序HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
对于所有用户账户而言都应该用强壮的密码,在solaris下有一个叫npasswd的工具运行的很好,利用npasswd代替passwd程序来让用户设置密码,它附带了一个配置文件,可以让用户设定密码的长度,字符,期限等控制信息。HvyLinux联盟
设置默认的密码参数HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/passwd文件如下入口:HvyLinux联盟
PWMIN= 1 #密码可以被改变的最小时段HvyLinux联盟
设置密码的最大生存周期HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/passwd文件如下入口:HvyLinux联盟
PWMAX= 13 #密码的最大生存周期HvyLinux联盟
设定离用户密码过期的天数,当系统启动时提醒用户。HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/passwd文件如下入口:HvyLinux联盟
PWWARN= 4HvyLinux联盟
设定最小用户密码长度HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/passwd文件如下入口:HvyLinux联盟
PWLEN= 8 #设定最小用户密码长度为8位HvyLinux联盟
防止远程的root登陆HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/login文件如下入口:HvyLinux联盟
LCONSOLE=/dev/console #这样root只能从/dev/console这个设备登陆HvyLinux联盟
纪录所有root的登陆情况HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/login文件如下入口:HvyLinux联盟
LSYSLOG= YES #syslog纪录root的登陆失败,成功的情况HvyLinux联盟
设置登陆会话超时时间HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/login文件如下入口:HvyLinux联盟
LTIMEOUT= 120HvyLinux联盟
设置默认的屏蔽掩码HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/login文件如下入口:HvyLinux联盟
LUMASK= 027 #这将设定标准掩码为:750,也可以将这行加到/etc/.login /etc/profile /etc/skel/local.cshrc /etc/skel/local.login /etc/skel/local.profile这些文件里HvyLinux联盟
设置root的umaskHvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
确定root的umask是027或077HvyLinux联盟
检查root的.profileHvyLinux联盟
确定登陆需要密码验证HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/login文件如下入口:HvyLinux联盟
LPASSREQ= YESHvyLinux联盟
设置shell的环境变量HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
添加或编辑/etc/default/login文件如下入口:HvyLinux联盟
LALTSHELL= YESHvyLinux联盟
检查每个用户的密码档设置HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
检查/etc/passwd;/etc/shadow文件里的每个用户的加密行,如:HvyLinux联盟
user:lRs.8R9EfQXx.:11137:0:10000::::HvyLinux联盟
加密段有无被修改的迹象HvyLinux联盟
去掉所有path环境变量里的“.”HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
从用户及root的初始化脚本中的path变量里去除“.”,比如如下脚本:HvyLinux联盟
/.login /etc/.login /etc/default/login /.cshrc /etc/skel/local.cshrcHvyLinux联盟
/etc/skel/local.login /etc/skel/local.profile /.profile /etc/profileHvyLinux联盟
限制su命令,添加可以su的用户到sugroup里HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
1)在/etc/group文件里建立一个特殊的组HvyLinux联盟
2)使你的admin账号在这个组里HvyLinux联盟
3)改变/bin/su的权限为:r-sr-sr-x 1 root sugroupHvyLinux联盟
# chmod 550 /bin/suHvyLinux联盟
# chmod +s /bin/suHvyLinux联盟
# chown root:sugroup /bin/suHvyLinux联盟
# ls -al /bin/suHvyLinux联盟
-r-sr-s--- 1 root sugroup 18360 Jan 15 1998 /bin/suHvyLinux联盟
# grep sugroup /etc/groupHvyLinux联盟
sugroup::600:root,httpadm,wsphereHvyLinux联盟
只有是sugroup组里的用户才可以使用su命令HvyLinux联盟
HvyLinux联盟
四 inetd超级进程HvyLinux联盟
注释掉所有确实不需要的服务HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
用grep -v “^#”/etc/inetd.conf命令来察看你当前没有注释的服务HvyLinux联盟
去掉一切你不是真正需要的服务,并且是那些没有注释的服务保护在tcp_wrapper之下。HvyLinux联盟
对inetd的服务实现TCP wrapperHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
编译安装tcpd到/usr/local/bin目录下,编辑/etc/inetd.conf如下:HvyLinux联盟
ftp stream tcp nowait root /usr/local/bin/ tcpd in.ftpdHvyLinux联盟
telnet stream tcp nowait root /usr/local/bin/ tcpd in.telnetdHvyLinux联盟
加固inetdHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
检查/etc/hosts.deny和/etc/hosts.allow文件,确定如下格式:HvyLinux联盟
/etc/hosts.denyHvyLinux联盟
ALL:ALLHvyLinux联盟
开启的服务:HvyLinux联盟
/etc/hosts.allowHvyLinux联盟
<service>:<source-ip>HvyLinux联盟
关于xinetdHvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
xinetd有这比inetd更强大的灵活性和安全性,所以尽量用xinetd来代替inetd。HvyLinux联盟
HvyLinux联盟
五 系统启动服务(rc.X)HvyLinux联盟
去掉不需要的启动服务HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
用mv命令来去掉不需要的启动服务,一个例子如下:HvyLinux联盟
mv /etc/rc3.d/S92volmgt /etc/rc2.d/not_usedS92volmgtHvyLinux联盟
这样vlomgt这个服务就被禁止启动了HvyLinux联盟
下面一些服务最好禁止启动(不过具体情况具体决定):HvyLinux联盟
snmpdxHvyLinux联盟
autofs(Automounter)HvyLinux联盟
volmgt(Volume Deamon)HvyLinux联盟
lpsched(LP print service)HvyLinux联盟
nscd (Name Service Cache Daemon)HvyLinux联盟
SendmailHvyLinux联盟
KeyservHvyLinux联盟
禁止rpcbind服务,如果它不是一定需要的话。(以上列表可以代表所有不需要的服务,但具体情况请进入到rc.X目录里自行决定哪些服务需要,哪些不需要)HvyLinux联盟
禁止DMI服务HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
禁止所有的dmi服务:mv /etc/rc3.d/S??dmi /etc/rc3.d/D??dmiHvyLinux联盟
DMI服务通过/etc/init.d/init.dmi里的几个bin文件来运行:HvyLinux联盟
/usr/lib/dmi/dmispdHvyLinux联盟
/usr/lib/dmi/snmpXdmidHvyLinux联盟
/etc/dmi/ciagent/ciinvokeHvyLinux联盟
禁止默认的mounting suid featuresHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
在/etc/rmmount.Conf文件里添加行:HvyLinux联盟
mount hsfs -o nosuidHvyLinux联盟
mount ufs -o nosuidHvyLinux联盟
检查所有的.rhosts文件HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
.rhosts文件允许用户或远程主机访问系统而不经过密码验证。假如一台远程的主机被攻破,这将成为极大的安全隐患。建议禁止任何.rhosts文件。HvyLinux联盟
禁止基于rhosts的用户认证HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
更改并删除/etc/pam.conf文件里的:HvyLinux联盟
rlogin auth sufficient /usr/lib/security/pam_rhosts_auth.so.1HvyLinux联盟
改变rsh行:HvyLinux联盟
rsh auth required /usr/lib/security/pam_unix.so.1HvyLinux联盟
参考脚本:HvyLinux联盟
pam-rhosts-2. 6.shHvyLinux联盟
检查信任关系HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
确定/etc/hosts.equiv文件为空。HvyLinux联盟
启动服务脚本的屏蔽掩码HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
在每个rc.X目录中建立S00umask文件:HvyLinux联盟
/etc/rc0.d/S00umask.shHvyLinux联盟
/etc/rc1.d/S00umask.shHvyLinux联盟
/etc/rc2.d/S00umask.shHvyLinux联盟
/etc/rc3.d/S00umask.shHvyLinux联盟
/etc/rcS.d/S00umask.shHvyLinux联盟
/etc/init.d/umaskHvyLinux联盟
参考脚本:HvyLinux联盟
add-umask.shHvyLinux联盟
HvyLinux联盟
六 网络接口的调整和安全HvyLinux联盟
缩短ARP缓存的存在周期HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
在/etc/rc2.d/S??inet脚本中添加如下:HvyLinux联盟
ndd -set /dev/arp arp_cleanup_interval 60000 /* 1 min (default is 5 min)*/HvyLinux联盟
缩短条目在arp-table里刷新的时间HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
在/etc/rc2.d/S??inet脚本中添加如下:HvyLinux联盟
ndd -set /dev/ip ip_ire_flush_interval 60000 /* 1 min (default is 20 min)*/HvyLinux联盟
禁止回应广播的的请求来防止一些特殊的具有危害性的ping包HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_respond_to_echo_broadcast 0 # default is 1HvyLinux联盟
启动时禁止源路由HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_forward_src_routed 0 # default is 1HvyLinux联盟
防止系统在启动时启动ip转发HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_forwarding 0 # default is 1HvyLinux联盟
设置系统禁止ip包转发HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_ignore_redirect 1 # default is 0HvyLinux联盟
(adds it into /etc/init.d/nddconfig)HvyLinux联盟
设置系统精确的多路寻址HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_strict_dst_multihoming 1 # default is 0HvyLinux联盟
(adds it into /etc/init.d/nddconfig)HvyLinux联盟
保证系统不响应icmp网络掩码请求HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_respond_to_address_mask_broadcast= 0 # default is 0HvyLinux联盟
(adds it into /etc/init.d/nddconfig)HvyLinux联盟
防止系统响应icmp的时间戳请求HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_ip_respond_to_timestamp= 0 # default is 1HvyLinux联盟
(adds it into /etc/init.d/nddconfig)HvyLinux联盟
防止系统响应icmp时间戳广播HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_ip_respond_to_timestamp_broadcast= 0 # default is 1HvyLinux联盟
(adds it into /etc/init.d/nddconfig)HvyLinux联盟
防止系统发送icmp转发信息HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加或修改/etc/rc2.d/S??inet如下:HvyLinux联盟
ndd -set /dev/ip ip_send_redirects= 0 # default is 1HvyLinux联盟
(adds it into /etc/init.d/nddconfig)HvyLinux联盟
改变TCP初始序列号生成参数HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
改变/etc/default/inetinit文件的条目:HvyLinux联盟
TCP_STRONG_ISS= 2HvyLinux联盟
设置in.routed在静态模式HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
按如下步骤建立in.routed -q(静态模式):HvyLinux联盟
mv /usr/sbin/in.routed to /usr/sbin/in.routed.origHvyLinux联盟
建立/usr/sbin/in.routed如下内容:HvyLinux联盟
#! /bin/shHvyLinux联盟
/usr/sbin/in.routed.orig -qHvyLinux联盟
更改这个文件的权限:HvyLinux联盟
chmod 0755 /usr/sbin/in.routedHvyLinux联盟
#动态的路由模式容易遭受到恶意的路由信息的亲篇和攻击,所以建议宁愿用静态路由,(路由的增加通过启动文件的route命令)也不建议用动态路由守护进程HvyLinux联盟
禁止路由HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
touch /etc/notrouterHvyLinux联盟
HvyLinux联盟
八,小型服务HvyLinux联盟
1,NFSHvyLinux联盟
移除NFSHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
建议在DMZ中不要运行NFS服务,所以如果它运行着的话,建议移除它。如下步骤:HvyLinux联盟
移除/etc/dfs/dfstab中的所有共享定义HvyLinux联盟
杀掉NFS守护进程:lockd, nfsd, statd, mountdHvyLinux联盟
重命名NFS的启动脚本:/etc/rc3.d/S??nfs.server 和 /etc/rc2.d/S??nfs.clientHvyLinux联盟
HvyLinux联盟
设置NFS的特定tcp端口HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
执行如下命令:HvyLinux联盟
ndd -set /dev/tcp tcp_extra_priv_ports_add 2049HvyLinux联盟
HvyLinux联盟
设置NFS的特定udp端口HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
执行如下命令:HvyLinux联盟
ndd -set /dev/udp udp_extra_priv_ports_add 2049HvyLinux联盟
HvyLinux联盟
开启NFS端口监听HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
添加行到/etc/system文件:HvyLinux联盟
set nfssrv: nfs_portmon = 1HvyLinux联盟
set nfs: nfs_portmon = 1HvyLinux联盟
确定你的/etc/system文件的访问权限为644:HvyLinux联盟
# chmod 644 /etc/systemHvyLinux联盟
HvyLinux联盟
一些nfs相关的服务HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
关掉如下服务:HvyLinux联盟
nfsdHvyLinux联盟
mountdHvyLinux联盟
rpc.bootHvyLinux联盟
in.rarpdHvyLinux联盟
rpldHvyLinux联盟
2,NIS,NIS+HvyLinux联盟
去除NIS,NIS+HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
我们建议不要运行NIS,NIS+服务,所以按一下步骤移除它:HvyLinux联盟
在文件/etc/domainname里移除域名:HvyLinux联盟
你可以察看NIS大体的服务列表:HvyLinux联盟
# pkginfo |grep NISHvyLinux联盟
# pkgrm <NIS-Package>HvyLinux联盟
system SUNWypr NIS Server for Solaris (root)HvyLinux联盟
system SUNWypu NIS Server for Solaris (usr)HvyLinux联盟
HvyLinux联盟
移除NIS,NIS+,DNS LookupHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
编辑/etc/nsswitch.conf如下:HvyLinux联盟
passwd: filesHvyLinux联盟
group: filesHvyLinux联盟
hosts: filesHvyLinux联盟
networks: filesHvyLinux联盟
protocols: filesHvyLinux联盟
rpc: filesHvyLinux联盟
ethers: filesHvyLinux联盟
netmasks: filesHvyLinux联盟
bootparams: filesHvyLinux联盟
publickey: filesHvyLinux联盟
netgroup: filesHvyLinux联盟
automount: filesHvyLinux联盟
aliases: filesHvyLinux联盟
services: filesHvyLinux联盟
sendmailvars: filesHvyLinux联盟
如果需要dns的话,可以再次修改这个文件HvyLinux联盟
3,MAILHvyLinux联盟
停止绑定在25端口的sendmail服务HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
禁止sendmail服务,你的用户依然可以发信。意思是,sendmail仍然安装了,只是不要作为守护进程存在,你可以在sendmail.cf文件里限制你的用户的权限。HvyLinux联盟
mv /etc/rc2.d/S88sendmail /etc/rc2.d/not_usedS88sendmailHvyLinux联盟
HvyLinux联盟
注释所有的并行邮件别名HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
检查 /ect/aliases |可以并列。用#号注解。HvyLinux联盟
HvyLinux联盟
限制sendmail的expn和vrfy两个命令来收集系统信息HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
在/etc/senmmail.cf文件中修改如下限制远程连接25端口使用expn和vrfy命令:HvyLinux联盟
# O PrivacyOptions=authwarnings, goawayHvyLinux联盟
OpgoawayHvyLinux联盟
# O PrivacyOptions=noexpn, novrfy, authwarningsHvyLinux联盟
O LogLevel=5HvyLinux联盟
HvyLinux联盟
隐藏smtp版本信息HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
在/etc/mail/sendmail.cf文件里找到smtp版本信息,修改如下:HvyLinux联盟
# SMTP login messageHvyLinux联盟
HvyLinux联盟
禁止邮件转发HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
普通用户不可以选择转发者,而root可以通过/usr/local/forward/.forward.$u来控制邮件转发,修改/etc/sendmail.cf如下行:HvyLinux联盟
O ForwardPath=/usr/local/forward/.forward.$uHvyLinux联盟
设置/usr/local/forward正确的权限HvyLinux联盟
HvyLinux联盟
接收邮件HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
如果真要在自己的系统上接收外来的邮件(监听在25端口)。我们建议利用spam或smtpd/smtpfwdd来保证邮件服务的安全(加上anti-spam,安全配置)。HvyLinux联盟
HvyLinux联盟
4,FTPHvyLinux联盟
安全FTPHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
建立或修改/etc/default/ftpd文件增加屏蔽码和ftp标志信息:HvyLinux联盟
UMASK= 077HvyLinux联盟
BANNER="/bin/cat /etc/ftp-banner"HvyLinux联盟
修改/etc/default/ftpd权限:HvyLinux联盟
chmod 644 /etc/default/ftpdHvyLinux联盟
HvyLinux联盟
建立ftp标示信息HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
建立/etc/ftp-banner文件满足如下:HvyLinux联盟
例如:This system is for authorized users only. Monitoring may occurHvyLinux联盟
修改/etc/ftp-banner文件的权限:HvyLinux联盟
chmod 644 /etc/ftp-bannerHvyLinux联盟
HvyLinux联盟
创建/etc/ftpusers文件HvyLinux联盟
安全层面:远程:HvyLinux联盟
解决方法:HvyLinux联盟
创建/etc/ftpusers文件,把所有的系统账户加入到这个文件里HvyLinux联盟
例如如下账户:HvyLinux联盟
root daemon sys bin adm lp smtp uucp nuucp listenHvyLinux联盟
nobody noaccess news ingres audit admin sync nobody4HvyLinux联盟
修改/etc/ftpuser文件的权限:HvyLinux联盟
chmod 644 /etc/ftpusersHvyLinux联盟
5,TELNETHvyLinux联盟
防止telnet程序现实系统版本信息HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
移除/etc/default/telnetd文件里的信息:HvyLinux联盟
Banner=””HvyLinux联盟
加入/etc/default/telnetd文件不存在,按如下步骤操作:HvyLinux联盟
touch /etc/default/telnetdHvyLinux联盟
echo "BANNER=\"\"">> /etc/default/telnetdHvyLinux联盟
chmod 444 /etc/default/telnetdHvyLinux联盟
九,X-WindowsHvyLinux联盟
设置CDE为不接受任何XDMCP登陆连接HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
假如/usr/dt/config/Xaccess存在,则如下操作:HvyLinux联盟
cat <<EOF >/usr/dt/config/XaccessHvyLinux联盟
# disable all XDMCP connectionsHvyLinux联盟
!*HvyLinux联盟
EOFHvyLinux联盟
假如/etc/dt/config/Xaccess存在,则如下操作:HvyLinux联盟
cat <<EOF >/etc/dt/config/XaccessHvyLinux联盟
# disable all XDMCP connectionsHvyLinux联盟
!*HvyLinux联盟
EOFHvyLinux联盟
十,文件许可权限HvyLinux联盟
去掉不用的suid文件HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
许多运行在solaris上的suid程序都只属于root,检查这些程序,有没有是属于其他用户的:HvyLinux联盟
步骤:HvyLinux联盟
1)找出所有的suid程序HvyLinux联盟
2)创建备3)份目录(如:/opt/backup/usr/local/bin)HvyLinux联盟
4)把这些suid程序备5)份在以上目录里HvyLinux联盟
6)把这些程序用tar打成包(使find程序在备7)份目录里找不8)到这些程序)HvyLinux联盟
9)删掉备10)份目录HvyLinux联盟
11)去掉所有的suid程序的s权位HvyLinux联盟
12)只保留一些必须的suid程序。如:passwd,13)su等HvyLinux联盟
14)再次执行一遍find程序,15)看看输出情况HvyLinux联盟
必须用到的一些命令:HvyLinux联盟
find / -type f\( -perm -4000 \) |xargs ls -aHvyLinux联盟
find / -type f\( -perm -4000 \) |xargs chmod -sHvyLinux联盟
HvyLinux联盟
去掉不用的sgid程序HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
许多运行在solaris上的sgid程序都只属于root,检查这些程序,有没有是属于其他用户的:HvyLinux联盟
1)出所有的sgid程序HvyLinux联盟
2)创建备3)份目录(如:/opt/backup/usr/local/bin)HvyLinux联盟
4)把这些sgid程序备5)份在以上目录里HvyLinux联盟
6)把这些程序用tar打成包(使find程序在备7)份目录里找不8)到这些程序)HvyLinux联盟
9)删掉备10)份目录HvyLinux联盟
11)去掉所有的sgid程序的s权位HvyLinux联盟
12)只保留一些必须的sgid程序。如:passwd,13)su等HvyLinux联盟
14)再次执行一遍find程序,15)看看输出情况HvyLinux联盟
必须用到的一些命令:HvyLinux联盟
find / -type f\( -perm -2000 \) |xargs ls -aHvyLinux联盟
find / -type f\( -perm -2000 \) |xargs chmod -sHvyLinux联盟
HvyLinux联盟
删除一切/etc目录下的组用户可写的文件HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
检查/etc目录下所有的组可写文件:HvyLinux联盟
find /etc -type f\( -perm 20 \) | xargs ls -lasHvyLinux联盟
不需要组的可写权限,修改如下:HvyLinux联盟
find /etc -type f\( -perm 20 \) | xargs chmod g-wHvyLinux联盟
HvyLinux联盟
移除/etc目录下一切对用户可写的文件HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
检查/etc目录下对用户可写文件:HvyLinux联盟
find /etc -type f\( -perm 2 \) | xargs ls -lasHvyLinux联盟
不需要用户的可写权限,修改如下:HvyLinux联盟
find /etc -type f\( -perm 2 \) | xargs chmod g-wHvyLinux联盟
改变所有文件的rw-rw-rw权限为rw-r-r-HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
首先列出文件:HvyLinux联盟
find / -type f -perm 666 |xargs ls -al > perm-666-before-change.txtHvyLinux联盟
改变权限:HvyLinux联盟
find / -type f -perm 666 |xargs chmod 644HvyLinux联盟
find / -type f -perm 666 |xargs ls -al > perm-666-after-change.txtHvyLinux联盟
改变文件的rwxrwx???HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
首先列出文件:HvyLinux联盟
find / -type f -perm 777 |xargs ls -al > perm-777-before-change.txtHvyLinux联盟
改变权限:HvyLinux联盟
find / -type f -perm 777 |xargs chmod 755HvyLinux联盟
find / -type f -perm 777 |xargs ls -al > perm-777-after-change.txtHvyLinux联盟
找出可写的目录HvyLinux联盟
安全层面:HvyLinux联盟
本地HvyLinux联盟
解决方法:HvyLinux联盟
find / -type d\( -perm 2 \)HvyLinux联盟
改变你所需要的权限设置HvyLinux联盟
HvyLinux联盟
确定所有应用服务的启动脚本的用户属主和用户组是rootHvyLinux联盟
(这些可以影响补丁的程序和出错信息)HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
检查启动脚本的文件属主:HvyLinux联盟
find /etc -type f -print | grep rc | egrep -v "skel|tty|mail|snmp|Mail" | xargs ls -al > rc-files-before-change.txtHvyLinux联盟
改变这些文件的文件属主:HvyLinux联盟
find /etc -type f -print | grep rc | egrep -v "skel|tty|mail|snmp|Mail" | xargs chownHvyLinux联盟
root:rootHvyLinux联盟
find /etc -type f -print | grep rc | egrep -v "skel|tty|mail|snmp|Mail" | xargs ls -al > rc-files-after-change.txtHvyLinux联盟
ls -al /etc/ init. d > etc-init.d-before.change.txtHvyLinux联盟
chown root:root /etc/ nit.dHvyLinux联盟
ls -al /etc/init.d > etc-init.d-after-change.txtHvyLinux联盟
经过这样的改变,所有的rcX.d里的脚本的文件属主都为root,所有的/etc/init.d目录里的脚本的文件属主文件组都是root了,为了防止特洛伊木马。HvyLinux联盟
打开cron程序的记账HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
确定/etc/default/cron文件里有如下行:HvyLinux联盟
CRONLOG=YESHvyLinux联盟
检查utmp,utmpx的权限HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
检查/var/adm目录下的文件权限:HvyLinux联盟
find /var/adm -type f\( -perm 2 \) | xargs ls -lasHvyLinux联盟
修改文件:HvyLinux联盟
chmod 644 /var/adm/utmpHvyLinux联盟
寻找没有用户关联的文件HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
find / -type f -nouserHvyLinux联盟
如下步骤:HvyLinux联盟
1) find / -type f -nouser > files-nouser-before-changeHvyLinux联盟
2) find / -type f -nouser | xargs chwon nobody:nobodyHvyLinux联盟
3) find / -type f -nouser > files-nouser-after-changeHvyLinux联盟
寻找没有组关联的文件HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
find / -type f -nogroupHvyLinux联盟
如下步骤:HvyLinux联盟
1) find / -type f -nogroup > files-nogroup-before-changeHvyLinux联盟
2) find / -type f -nogroup | xargs chgrp nobodyHvyLinux联盟
3) find / -type f -nogroup > files-nogroup-after-changeHvyLinux联盟
检查/var/cron的权限HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
如果/etc/cron文件的文件属主不是root,组不是sys,修改该文件的权限:HvyLinux联盟
chmod 700 /var/cron && chown root /var/cron && chgrp sys /var/cronHvyLinux联盟
十一,登录和记账HvyLinux联盟
设置cronlogfile的保存空间为2mHvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
修改/etc/cron.d/logchecker如下:HvyLinux联盟
LIMIT=4096HvyLinux联盟
记账所有的inetd服务HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
修改/etc/init.d/inetsvc文件如下:HvyLinux联盟
/usr/sbin/ifconfig -au netmask + broadcast +HvyLinux联盟
/usr/ bin/inetd -s -tHvyLinux联盟
假如你运行了named,dhcpd, multicast,你必须作如上改动HvyLinux联盟
修改syslog.conf文件HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
编辑/etc/syslog.conf文件,让日志进程纪录更多的系统信息。HvyLinux联盟
添加如下行:HvyLinux联盟
*.debug /var/adm/compass.messagesHvyLinux联盟
安装tripwireHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
tripwire是一个特洛伊木马检查程序,他工作在提供的二进制文件的md5码的数据库以及你的配置上,建议每6个小时运行一次tripwire。HvyLinux联盟
IDSHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
建议安装运行snort工具来监测你的网络可能收到的如下攻击:HvyLinux联盟
- cgi-scanHvyLinux联盟
- portscansHvyLinux联盟
- virusHvyLinux联盟
根据你的需要参看/root/config/snort.rules文件。HvyLinux联盟
日志文件观察者(swatch)HvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
建议安装运行swatch工具来监测你的日志文件,你可以在你的系统上启动多个监测进程,例如:HvyLinux联盟
- /var/adm/compass.messagesHvyLinux联盟
- /var /adm/snort_portscan.logHvyLinux联盟
- /opt/AppServer/WebSphere/log/????HvyLinux联盟
Swatch是一个用perl写的工具,所以你必须安装PERL MODULES。HvyLinux联盟
禁止telnet远程管理,用sshHvyLinux联盟
安全层面:远程HvyLinux联盟
解决方法:HvyLinux联盟
安装openssl,openssh的最新版本来代替telnetd,密切关注最新版本的security report。HvyLinux联盟
十二,其他HvyLinux联盟
设置启动标示HvyLinux联盟
安全层面:本地HvyLinux联盟
解决方法:HvyLinux联盟
修改/etc/default/telnetd文件设置启动banner,格式如下:HvyLinux联盟
BANNER=”…..”HvyLinux联盟
创建/etc/issue文件编辑启动信息。 Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息