二、Skey

您认为您的密码安全吗?即使您的密码很长,有很多特殊字符,解密工具很难破解,但您的密码在网络中传送时是以明文形式的,在以太网中随便一个嗅探器就可以截取您的密码。现在在交换环境中也能实现这种技术。在这种情况下,skey 对您来说是一个选择。

Skey 是一次性口令的一个工具。它是一个基于客户\服务器的应用程序。首先在服务器端可以用 keyinit 命令为每个用户建立一个 skey 客户,这个命令需要指定一个秘密口令,然后就可以为客户端的用户产生一次性口令列表。当用户通过 telnet,ftp 等与服务器进行连接时就可以按照一次性口令列表中的口令顺序输入自己的密码,下次再连接时候密码就换成了列表中的下一个。

可以从下面的网址获得 skey:ftp://ftp.cc.gatech.edu/ac121/linux/system/network/sunacm/other/skey

skey 的服务器端使用有下面的步骤:

1.使用下面的命令初始化用户 mary:

keyinit mary

keyinit 每次为用户生成 99 个一次性口令,这时就会在 /etc/skeykeys 文件建立这个用户,该文件中保存了服务器端计算下一个一次性口令的一些信息。用上面的 keyinit 命令时就会在 /etc/skeykeys 中有下面的记录:

mary 0099 to25065 be9406d891ac86fb Mar 11, 2001 04:23:12

上面的记录中从左到右依次是用户名,要使用的一次性口令序号,口令的种类,16 进制表示的口令,日期和时间。

2.将一次性口令列表提供给 mary

您可以打印出口令列表然后送给 mary。这样比较安全,密码不会在网络中传递。

3.为 mary 修改缺省的登陆 shell 为 /usr/local/bin/keysh

由于 PAM 的作用,mary 登陆时要输入密码,她输入这个一次性口令后服务器端要对这个口令进行校验,校验通过连接就被许可了。

可能有些用户不喜欢书面的口令列表,用户可以使用 key 命令在自己的客户端得到一次性口令。您可以通过开两个窗口,一个对服务器进行连接获得一次性口令的种类和序号,然后在另一个窗口用 key 命令根据口令的种类和序号获得所要的密码。但是必须提醒您,您这样的方便是以一定的危险性为代价的。

如果您的缺省的 99 个口令用完了,您可以使用 keyinit -s 刷新口令列表。

在 /usr/src/skey/misc 目录中有许多其他的替换 keysh 的提供其他服务的程序,例如:su,login,ftp 等等。这样您可以应付不同的服务的连接请求了。

为了安全,您最好设置一下/etc/skeykeys 文件的属性和权限。

  1. Linux安全访问控制模型应用及方案设计 
  2. Linux安全攻略 如何才能让内存不再/泄漏
  3. Windows与Linux安全性权威比较


相关内容