网络安全讲座之四:账号安全(4)
密码时效
按目前的形势,已有更强大的硬件大大地缩短了利用自动运行的程序来猜测密码的时间。因此在UNIX系统中防止密码被攻击的别一方法就是要经常地改变密码。很多时候,用户却不改变密码。因此一种机制用来强制规律性的更改密码是合乎要求的。这种技术称做密码时效并在很多UNIX系统上有效。
密码时效:LINUX
在LINUX系统上,密码时效是通过chage命令来管理的。
参数意思
-m 密码可更改的最小天数。如果是零代表任何时候都可以更改密码
-M 密码更改的最大天数
-W 用户密码到期前,提前收到警告信息的天数。
-e 帐号到期的日期。过了这天,此帐号将不可用。
-d 上一次更改的日期
-i 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
举个例子
% chage ?m 2 ?M 30 ?W 5 steven
此命令要求用户steven两天内不能更改密码,并且密码最长的存活期为30天,并在密码过期前5天通知他。
记录不成功的登陆企图
所有的UNIX系统都能够记录非成功的登陆企图。在LINUX中,登陆的失败是由syslog守护进程记录在/var/log/messages文件里。可以用下列命令来查找相关信息
$ grep login /var/log/messages
搜索路径(PATH)的重要性
在UNIX里,常使用的命令用来在不同的环境下查找一组特殊的目录称做PATH。想要运行当前目录包含的命令时是不需要加上一长串路径名的。在UNIX中用户经常使用”.”来表示当前的目录。如果”.”作为shell环境变量的一部分时,一个全局目录下的shell脚本或公用命令就有可能被相同目录下的伪程序所解释,而这个命令可能包含一段代码,一旦被执行后果可能是较严重的,比如是一个木马程序。在Bourne or Korn Shell里搜索路径通常这样来设置:
$ PATH=pathname1:pathname2:pathname3:
$ export PATH
在C或类似的shell里,以下列命令设置:
% set path = (pathname1 pathname2 pathname3)