分类: LINUX
2010-02-23 14:45:34
linux是一个优秀的、日益成熟的操作系统,它支持多用户、多进程及多线程,实时性好,功能强大而稳定。同时它又具有良好的兼容性和可移植性,本文从linux系统中的账户、密码策略、文件权限、日志管理等方面来实现网络安全过程。
1、Linux系统的用户帐号策略
linux操作系统中提供了严格的权限管理机制,系统管理员在工作中重要的一个环节就是帐号管理,在管理linux主机帐号时,一方面确保每一个UID仅仅使用一次。另外就是设置有限的登陆次数,来预防无休止的登陆攻击,通过编辑/etc/pam.d/system-auth文件,在文件中增加下面两段,例如可以设置账户最多连续登陆6次,超过6次账户将被锁定,只有管理员磁能帮助解锁。
auth required pam_tally.so deny=5
account required pam_tally.so
2、密码策略
1)口令实效和口令长度的设置
早期的linux系统中,/etc/passwd文件包含有系统每个用户的信息,当用户的口令经过一定的数字与逻辑算法后把一个运算结果(可见字符串)放到了passwd文件中,加密强度并不大。早期的黑客们只要拿到/etc/passwd这个文件,系统就已经被攻入一半了。
后来,随着安全级别的提高,出现passwd文件中口令单独加密的情况,密码加密后结果和其他一些辅助信息存到了/etc/shadow文件,至于采用何种保存形式和机密算法,可以用/usr/sbin/authconfig程序来设置。用户登陆时输入的口令经过计算后与/etc/passwd和/etc/shadow中的结果相比较,符合则允许登陆,否则拒绝登陆,
口令实效和口令长度时一种系统机制,用于强制口令在特定的时间长度后失效。对用户来说,可能有些麻烦,但是可以确保口令会定期进行更改,在win下安全方面是要修改的,也非常简单,在linux容易被忽略,而且大多数情况小linux版本并没有打开口令时效。这个就需要编辑/etc/login.defs文件,可以指定下面几个参数:
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
PASS_MAX_DAYS(设置密码过期日期)当设置口令时效的天数为99999时,实际上相当与关闭了口令时效。更明智的设定一半为60天,每60天强制更改一次密码。
PASS_MIN_DAYS(设置密码最少更改日期)参数则设定了在本次密码修改后,下次允许更改密码之前所需要的最少天数。
PASS_MIN_LEN(设置密码最小长度)时指密码设置的最小长度,一般定义为8位以上。
PASS_WARN_AGE(设置过期提前警告天数)参数指明了在口令失效前多少天开始通知用户更改密码(一般在用户登陆系统时就会收到警告通知)
2)设置账户锁定登陆失败锁定次数、锁定时间
通过编辑/etc/pam.d/system-auth设定密码重用检查方法:
#cat /etc/pam.d/system-auth查看有无auth required pam_tally.so条目设置
如果有我们可以现备份这个文件,cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak
然后编辑:
#vi /etc/pam.d/system-auth
auth required pam_tally.so onerr=fail deny=6 unlock_time=300
设置位密码连续六次锁定,锁定时间300秒;
解锁用户 faillog -u <用户名》 -r
需要PAM包的支持,对pam文件的修改应仔细检查,一旦出现错误会导致无法登陆;当系统验证出现问题时,首先应当检查/var/log/messages和/var/log/secure中的输入信息。
3、linux基本文件权限策略
linux系统中每个文件和目录都有访问许可权限,通过过设置文件权可以对文件和目录进行访问和操作。文件或目录的访问权限可分位可读(r)、可写(w)、可执行(x)三种权限。可读权限对文件而言,具有读取文件内容的权限,对目录来说,具有浏览目录的权限。可写权限对文件而言,具有新增、修改文件内容的权限,对目录来说具有删除、移动目录内文件的权限。可执行对文件而言,具有执行文件的权限,对目录来说该用具有进入目录的权限,文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限。用户也可根据需要把访问权限设置位需业娜魏巫楹稀S腥?植煌?嘈偷挠没Э啥晕募?蚰柯冀?蟹梦剩晃募??姓撸?募??糇橛没В?渌?没АN募??姓咭话闶蔽募?拇唇ㄕ撸??姓呖梢栽市硗?橛没в腥ǚ梦饰募??箍梢越?募?姆梦嗜ㄏ薷秤柘低持械钠渌?没В??鏻s -l命令显示文件或目录的详细信息时:
ls -l messages
-rw-r--r-- 1 root root 493 Feb 23 09:40 messages
最左边的一列为文件的访问权限,文件所有者具备可读(r)、可写(w)权限,文件所属组用户和其他用户分别具备可读(r)的权限。
4、linux系统日志策略
日志对系统安全来说非常重要,它纪录了系统每天发生的各种各样的事情,可以通过系统日志来检查错误发生的原因,或者受到攻击时供给者留下的痕迹。因此,保护系统日志的安全,不被内部用户和外部入侵者修改或删除显得尤为重要。
linux系统一般有3个主要得日志子系统:连接时间日志、进程统计日志和错误日志连接时间日志--有多个程序执行,把纪录分别写到/var/log/wtmp和/var/log/utmp等文件中,使系统管理员能够跟踪谁在何时登陆到系统。
进程统计日志--有系统内核执行。当一个进程终止时,为每个进程在进程统计文件(pacct或acct)中写一个纪录。进程统计的目的时为系统中的基本服务提供命令使用统计。
错误日志--由syslogd(8)执行。各种系统守护进程、用户程序和内核通过syslog(3)向文件/var/log/messages报告值得注意的事件。这里给出一写常用服务的日志:
access-log 纪录HTTP/Web的传输
acct/pacct 纪录用户命令
aculog 纪录MODEM的活动
btmp 纪录失败的纪录
lastlog 纪录最近几次成功登陆的事件和最后一次不成功的登陆
messages 从syslog中纪录信息(有的键接到syslog文件)
sudolog 纪录使用sudo发出的命令
sulog 纪录使用su命令的使用
syslog 从syslog中纪录信息(通常链到messages文件)
utmp 纪录当前登陆的每个用户
wtmp 一个用户每次登陆进入和退出事件的永久纪录
xferlog 纪录FTP会话
如果服务器支持很多用户,这些日志文件的大小也会随着而涨,必须定期做好日志备份和清除的工作是非常重要的。