上节我们讲到在freebsd下面的一次性密码登陆机制,其实在linux下面麻烦一点,不能像freebsd那样系统自动创建相关的配置文件如/etc/opieaccess /etc/pam.d/sshd等等。这节我们就开始讲述在linuxi我们怎么实现一次性密码登陆问题。

        1,必须安装相关文件opie-server opie-client libpam-opie怎么安装我就不详细说了,在debian下我们可以aptitude install libpam-opie opie-server opie-client就OK 了。

       2,和freebas下一样我们产生第一个一次性密码:opiepasswd -c

     上面的KNOW IRA FUR MESH SAN BILL(注意,中间的空格也是要保留的不能省略)就是我们得到的第一个一次性密码,编号为499 对应的种子为 xi9933 对应的账号为root !

    3,好了我们开始批量产生大量的密码,做好记录或者发送到安全的email上去。随时调用查看。命令为:opiekey -f -n 10 498 xi9933 (注意-n 10是产生10个 498为最后一个密码的编号,ix9933就是初始化时的种子)

     好了10个密码产生了,不够再加,,对了“ Enter secret pass phrase”安全短语一定要和初始化时用的一样!!这样我们就可以把密码通过手机短信发送给需要的人了,或者安全电子邮件也可。

   4,和freebsd不一样在linux下面我们要手动更改ssh 配置文件和pam文件:

    把/etc/ssh/sshd_config中的ChallengeResponseAuthentication 设置为YES

     把/etc/pam.d/sshd 增加auth required pam_opie.so no_fake_prompts 到第一行(这样登陆流程是首先进行opie认证成功后再进行普通UNIX认证非常安全),如果只想要opie认证则把require改成sufficient .

    如果是想要把所有登陆全部改成opie(不光是ssh,普通UNIX)则修改/etc/pam.d/common-auth 把上面的指令加进去就可以了!

  其实也没什么难的,你可以对比freebsd,把他的设置套用到linux是一样的,只不过是freebsd的opieaccess模块在linux中是没有独立存在的,嵌入到了pam-access中去了,我们一般不用,直接通过pam来控制!

  到此就算是完整的一次性密码登陆了,是不是很简单呢,可是给***带来了非常郁闷的破解难度。。密码随时动态改!!