第 8 章 使用智能卡进行远程向 sudo 进行身份验证
您可以使用智能卡远程对 sudo 进行身份验证。ssh-agent 服务在本地运行并且可以将 ssh-agent 套接字转发到远程计算机后,您可以使用 sudo PAM 模块中的 SSH 身份验证协议远程验证用户。
在使用智能卡进行本地登录后,您可以通过 SSH 登录到远程机器并运行 sudo 命令,而无需使用智能卡验证的 SSH 转发来提示输入密码。
在本例中,客户端通过 SSH 连接到 IPA 服务器,并在 IPA 服务器上使用保存在智能卡上的凭证运行 sudo 命令。
8.1. 在 IdM 中创建 sudo 规则 复制链接链接已复制到粘贴板!
按照以下流程在 IdM 中创建 sudo 规则,来给 <idm_user> 赋予在远程主机上运行 sudo 的权限。
在本例中,less 和 whoami 命令被添加为 sudo 命令,来测试该流程。
先决条件
-
IdM 用户已创建。在本例中,用户名为
<idm_user>。 -
您有远程运行
sudo的系统的主机名。在本示例中,主机是server.ipa.test。
流程
创建名为 <sudorule_name> 的
sudo规则,以允许用户运行命令。将 <sudorule_name> 替换为您要创建的 sudo 规则的实际名称。ipa sudorule-add <sudorule_name>
# ipa sudorule-add <sudorule_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加
less和whoami作为sudo命令:ipa sudocmd-add /usr/bin/less ipa sudocmd-add /usr/bin/whoami
# ipa sudocmd-add /usr/bin/less # ipa sudocmd-add /usr/bin/whoamiCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将
less和whoami命令添加到 <sudorule_name> 中:ipa sudorule-add-allow-command <sudorule_name> --sudocmds /usr/bin/less ipa sudorule-add-allow-command <sudorule_name> --sudocmds /usr/bin/whoami
# ipa sudorule-add-allow-command <sudorule_name> --sudocmds /usr/bin/less # ipa sudorule-add-allow-command <sudorule_name> --sudocmds /usr/bin/whoamiCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<idm_user>用户添加到 <sudorule_name> 中:ipa sudorule-add-user <sudorule_name> --users <idm_user>
# ipa sudorule-add-user <sudorule_name> --users <idm_user>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将在其上运行
sudo的主机添加到 <sudorule_name> 中:ipa sudorule-add-host <sudorule_name> --hosts server.ipa.test
# ipa sudorule-add-host <sudorule_name> --hosts server.ipa.testCopy to Clipboard Copied! Toggle word wrap Toggle overflow