如何注册并使用具有privacyIDEA的Yubikey
获取privacyIDEA
我们使用最新的0.9.1的privacyIDEA 。
通过pip或github获取privacyidea服务器:
$ git clone https://github.com/privacyidea/privacyidea.git
在主目录中,您可以使用paster命令简单地启动服务器:
$ python setup.py build
$ paster serve config/privacyidea.ini.example
Starting server in PID 29608.
serving on 0.0.0.0:5001 view at http://127.0.0.1:5001
privacyIDEA为管理用户使用集成身份验证。 管理员帐号位于config / admin-users中。
在git repo中有一个admin(密码:test)和一个admin2(密码:secret)。 您应该删除此文件并创建一个新的管理员:
$ tools/privacyidea-create-pwidresolver-user -u admin -p yourPassword -i 1000 > config/admin-users
现在,您可以使用用户“admin @ admin”和密码“yourPassword”登录到http:// localhost:5001
的管理界面。
注册Yubikey
获取隐私权管理客户端。 要注册Yubikey,你需要pyusb和python-yubico模块。
$ git clone https://github.com/privacyidea/privacyidea.git
现在你可以调用命令来注册yubikey。 客户端将组成密钥,将其存储在yubikey上,并将密钥发送到服务器以创建新的令牌:
$ ./privacyideaadm -U http://localhost:5001 --admin=admin@admin -C yubikey_mass_enroll --yubislot=1
Please enter password for 'admin@admin':
Please insert the next yubikey.
Found Yubikey with serial '00508326'
{ u'status': True, u'value': True}
Please insert the next yubikey.^C
在网页管理中,您将看到一个令牌与串行UBOM ...,意思是“Yubikey,誓言模式”。 按Yubikey按钮将发出6位OTP值。 尝试一下!
我的用户在哪里?
将浏览器指向privacyIDEA管理http:// localhost:5001
。 您将看到一个登录表单。 普通用户使用此登录访问自助服务门户,也可由管理员访问令牌管理界面。
使用管理员帐户登录,您创建。 记住要添加一个@admin,所以如果你创建一个使用superruth,你应该登录为superruth @ admin
现在,您创建了第一个Resolver,其实是一种指向用户所在位置的指针。
转到privacyIDEA配置 - > useridresolvers
选择“新”,并从/ etc / passwd
创建一个“平面文件”解析器
现在你把解析器放到一个领域。 转到privacyIDEA config - >领域
,创建一个新的领域,输入一个领域名称,然后选择刚创建的解析器。
您可以在“用户视图”选项卡中查看用户。
选择用户并选择令牌。 点击左侧的“分配”按钮。 令牌现在属于用户,您可以输入其他PIN,如“测试”。
一探究竟!
当令牌现在属于用户时,用户现在可以使用该令牌进行身份验证。
重新插入yubikey。
我们将使用Web API来测试身份验证。 在您的浏览器中,您可以致电:
http://localhost:5001/validate/check?user=bin&pass=test......
这将给你以下结果:
{ "version": "privacyIDEA 0.9", "jsonrpc": "2.0", "result": { "status": true, "value": true }, "id": 0 }
“value”:“true”
表示验证成功。
作为LinOTP的分支,截至目前,privacyIDEA使用与LinOTP相同的响应相同的API。 也可以使用也可以用于LinOTP的身份验证模块/插件。
如果一切都出错,您应该看看审核标签。
生产
对于高效的使用,您应该使用MySQL或PostgreSQL和Apache或nginx网络服务器而不是Paster的数据库。 这将是下一个howto的一部分。