https://code.google.com/p/google-authenticator/ 是google提供的OTP解决方案。

http://www.multiotp.net/ 是一个开源otp验证解决方案,继承了google的OTP方案, 可以通过pam模块与Radius验证服务器集成,安装包已经包括了Radius和Google OTP 模块。

安装比较简单,下载之后解压。选择这个是因为公司内网,不能在linux下运行各种apt-get/yum类的命令获取包,还是找个集成好的windows一体包比较方便。

另外一个google auth免费解决方案也不错,不过是基于linux的,所以放弃。

以admin方式运行radius_install.cmd ,这个脚本会安装一个radius服务器到

系统中,默认端口1812。.

装好后可以NTRadPing这个软件来测试。

multiOTP配置安装-LMLPHP

radius的用户在multiOTP\radius\etc\raddb\users里:

#
# This is an entry for a user with a space in their name.
# Note the double quotes surrounding the name.
# testuser Cleartext-Password := "testpw"
Reply-Message = "Hello, %{User-Name}"

这里使用默认用户。

multiOTP也需要创建一个同名用户:

  E:\App\multiOTP>multiotp -fastcreate testuser

建好后用命令生成token序列:

E:\App\multiOTP>multiotp -scratchlist testuser
964655
232904
841466
584584
472148
571943
927968
152811
832039
465996

使用的顺序只能从上到下, 上面用过的序列就不能用了。

还有一个multiOTP cp的软件,能让multiOTP与windows系统集成:

https://code.google.com/p/multi-one-time-password--credential-provider/

测试时候要小心,一旦安装好后锁屏了,就需要输入OTP密码了。一旦锁屏了没有密码,需要尝试进入windows的安全模式,卸载掉这个程序才行,

安全模式下默认windows installer service没启动,输入以下命令启动:

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\MSIServer" /VE /T REG_SZ /F /D "Service"

net start msiserver

04-13 13:12