48.5. 管理用户的公共 SSH 密钥
身份管理允许您将公共 SSH 密钥上传到用户条目。有权访问相应私有 SSH 密钥的用户可以使用 SSH 登录到 IdM 机器,而无需使用 Kerberos 凭证。请注意,如果用户从没有私有 SSH 密钥文件的机器登录,则用户仍然可以通过提供 Kerberos 凭据来进行身份验证。
48.5.1. 使用 IdM Web UI 上传用户的 SSH 密钥
身份管理允许您将公共 SSH 密钥上传到用户条目。有权访问相应私有 SSH 密钥的用户可以使用 SSH 登录到 IdM 机器,而无需使用 Kerberos 凭证。
先决条件
- 管理 IdM Web UI 或用户管理员角色的管理员特权。
流程
- 登录到 IdM Web UI。
-
进入到
Identity>Users
选项卡。 - 单击要编辑的用户的名称。
-
在
Account Settings
部分中,点 SSH 公钥Add
按钮。 -
将 Base 64 编码的公钥字符串粘贴到
SSH public key
字段中。 -
点
Set
。 -
点 IdM Web UI 窗口顶部的
Save
。
验证
-
在
Accounts Settings
部分下,验证密钥是否列在SSH public keys
下。
48.5.2. 使用 IdM CLI 上传用户的 SSH 密钥
身份管理允许您将公共 SSH 密钥上传到用户条目。有权访问相应私有 SSH 密钥的用户可以使用 SSH 登录到 IdM 机器,而无需使用 Kerberos 凭证。
先决条件
- 管理 IdM CLI 的管理员特权或用户管理员角色。
流程
使用
--sshpubkey
选项运行ipa user-mod
命令,来将 base64 编码的公钥上传到用户条目。$ ipa user-mod user --sshpubkey="ssh-rsa AAAAB3Nza...SNc5dv== client.example.com"
请注意,在这个示例中,您将密钥类型、密钥和主机名标识符上传到用户条目。
要上传多个密钥,请多次使用
--sshpubkey
。例如,要上传两个 SSH 密钥:--sshpubkey="AAAAB3Nza...SNc5dv==" --sshpubkey="RjlzYQo...ZEt0TAo="
要使用命令重定向,并指向包含密钥的文件而不是手动粘贴密钥字符串,请使用以下命令:
ipa user-mod user --sshpubkey="$(cat ~/.ssh/id_rsa.pub)" --sshpubkey="$(cat ~/.ssh/id_rsa2.pub)"
验证
运行
ipa user-show
命令来验证 SSH 公钥是否与指定的用户关联:$ ipa user-show user User login: user First name: user Last name: user Home directory: /home/user Login shell: /bin/sh Principal name: user@IPA.TEST Principal alias: user@IPA.TEST Email address: user@ipa.test UID: 1118800019 GID: 1118800019 SSH public key fingerprint: SHA256:qGaqTZM60YPFTngFX0PtNPCKbIuudwf1D2LqmDeOcuA user@IPA.TEST (ssh-rsa) Account disabled: False Password: False Member of groups: ipausers Subordinate ids: 3167b7cc-8497-4ff2-ab4b-6fcb3cb1b047 Kerberos keys available: False
48.5.3. 使用 IdM Web UI 删除用户的 SSH 密钥
按照以下流程,在 IdM Web UI 中从用户配置文件中删除 SSH 密钥。
先决条件
- 管理 IdM Web UI 或用户管理员角色的管理员特权。
流程
- 登录到 IdM Web UI。
-
进入到
Identity>Users
选项卡。 - 单击要编辑的用户的名称。
-
在
Account Settings
部分下,在SSH public key
下,单击您要删除的密钥旁边的Delete
。 -
点页面顶部的
Save
。
验证
-
在
Account Settings
部分下,验证密钥是否不再列在SSH public keys
下。
48.5.4. 使用 IdM CLI 删除用户的 SSH 密钥
按照以下流程,使用 IdM CLI 从用户配置文件中删除 SSH 密钥。
先决条件
- 管理 IdM CLI 的管理员特权或用户管理员角色。
流程
要删除分配给用户帐户的所有 SSH 密钥,请在
ipa user-mod
命令中添加--sshpubkey
选项,而不指定任何密钥:$ ipa user-mod user --sshpubkey=
-
要只删除特定的 SSH 密钥或密钥,请使用
--sshpubkey
选项指定您要保留的密钥,省略您要删除的密钥。
验证
运行
ipa user-show
命令来验证 SSH 公钥是否不再与指定的用户关联:$ ipa user-show user User login: user First name: user Last name: user Home directory: /home/user Login shell: /bin/sh Principal name: user@IPA.TEST Principal alias: user@IPA.TEST Email address: user@ipa.test UID: 1118800019 GID: 1118800019 Account disabled: False Password: False Member of groups: ipausers Subordinate ids: 3167b7cc-8497-4ff2-ab4b-6fcb3cb1b047 Kerberos keys available: False