使用privacyIDEA管理用于LUKS加密的Yubikeys

使用privacyIDEA管理Yubikeys进行LUKS加密


由Yubico

这个如何与你的LUKS系统混合。 所以请在实验室环境中进行,否则请确保有备份以避免烦人的数据丢失。

之前我展示了如何在挑战响应模式下使用Yubikey保护您的LUKS加密硬盘。

但是如果你有很多Yubikeys呢? 或者如果您有不同的笔记本电脑,那是不同的用户使用的?

所以今天我们将展示如何使用privacyIDEA来管理许多笔记本的许多yubikeys 。 privacyIDEA是用于双因素身份验证的身份验证系统,通常使用OTP设备。 在最近的版本中,privacyIDEA开始不仅应答身份验证请求,还增强了能够定义客户端计算机和添加信息的功能,哪个身份验证设备可以用于客户机上的应用程序。

每个机器可以分配几个令牌,用于某些应用程序。 根据应用程序,必需的身份验证信息将被传送到此客户端,以便应用程序可以使用此令牌进行访问。

今天,privacyIDEA支持两种应用程序类型:luks和ssh。 某些令牌类型与LUKS工作良好,其他令牌可以与SSH协同工作。 模块化设计允许轻松创建新的应用程序类型。

如果应用程序出现问题,生成这样的令牌的响应将被转移。

这个想法最初是由我在2014年为Chemnitzer Linuxtage发起的。您可以在这里找到一份德国文章。

设置它

您需要安装privacyIDEA。 您可以按照不同的指南来做到这一点。 请确保安装了最新版本1.2.3。 在Ubuntu 14.04你可以做:

add-apt-repository ppa:privacyidea/privacyidea
apt-get update
apt-get install privacyidea

您还应该安装privacyideaadm(1.2.2+),命令行管理客户端。 您需要将其安装在您的privacyidea服务器和客户端计算机上。 在Ubuntu你可以做:

add-apt-repository ppa:privacyidea/privacyidea
apt-get update
apt-get install privacyideaadm

创建一台机器

首先,您需要在privacyidea中创建一个客户机。 您可以使用客户机或服务器本身的命令行客户端来执行此操作:

privacyideaadm -U https://172.16.200.139:5001 --admin=admin@admin -C createmachine --name 1stclient --ip 172.16.200.105

172.16.200.139是您的privacyIDEA服务器,您的客户机是172.16.200.105name参数应该包含客户端的主机名和ip的IP地址,客户端用来与privacyIDEA服务器通信。

创建一个Yubikey

创建一个由privacyidea管理的yubikey:

privacyideaadm -U https://172.16.200.139:5001 --admin=admin@admin -C yubikey_mass_enroll --yubiCR

将Yubikey分配给客户端

现在,privacyIDEA知道yubikey,您可以将此令牌分配给客户机:

privacyideaadm -U https://172.16.200.139:5001 --admin=admin@admin -C machine_addtoken --name=1stclient --serial=UBOM00508326_2 --app=luks -option=slot=7 --option=partition=/dev/sda3

现在privacyIDEA知道,这个yubikey将在客户机1stclient上与LUKS一起使用。 privacyIDEA对LUKS有其他设置,它知道这个标记应该被注册到socket7用于分区/ dev / sda3。

安装LUKSsocket

请注意,您还需要安装yubikey-luks。 否则,您将把yubikey信息写入一个关键socket,但是grub引导加载程序将不知道如何使用它。 您可以在这里找到它或者您可以将其安装在ubuntu机器上:

apt-get install yubikey-luks

现在,您可以从privacyIDEA服务器获取身份验证信息:

privacyidea-luks-assign -U https://172.16.200.139:5001 --admin=admin@admin --name=1stclient --clearslot

这将要求您提供一个Yubikey密码,这实际上是启动时的挑战。 privacyIDEA服务器将提供对此密码的响应(挑战)。 该响应以密码形式写入LUKSsocket。 在注册过程中,您需要提供一个现有的LUKS密码,以便可以编写新的socket。

privacycidea-luks分配到某种cron作业中,可以从privacyIDEA中远程控制LUKS的身份验证。 每当您将新的令牌和应用程序分配给此机器时,它将创建一个新的LUKSsocket。

进程还不顺利。 例如,从机器上删除令牌不会从本地LUKS中删除该socket。 但是,一旦将另一个令牌分配给同一个socket,此socket将被新令牌覆盖。

想想,尝试一下,改进它。

直到:快乐认证和数据保护!

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏