如何配置 sudo 提升和 SSH 密钥
发布时间: 2016年3月
适用对象:System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager
从开始 System Center 2012 – Operations Manager, ,您可以提供以可通过使用 sudo 程序,从而允许用户运行包含另一个用户帐户的安全特权的程序提升在 UNIX 或 Linux 计算机上的无特权帐户的凭据。 您还可以为 Operations Manager 与目标的计算机之间安全通信而不是密码使用安全外壳 (SSH) 密钥。
本主题提供用于创建为低权限用户帐户、 实现 sudo,和正在运行 Red Hat Enterprise Linux Server 6 的计算机上创建 SSH 密钥的示例。 这些是仅为示例,可能不会反映您的环境。 下面的示例提供的用户有权访问完整的一组特权。
若要获取和配置 SSH 密钥从 UNIX 和 Linux 计算机上,您需要在基于 Windows 的计算机上安装以下软件:
文件传输工具例如 WinSCP 将文件从 UNIX 或 Linux 计算机传输到基于 Windows 的计算机。
PuTTY 程序或类似程序,在 UNIX 或 Linux 计算机上运行命令。
要在基于 Windows 的计算机上以 OpenSSH 格式保存 SHH 私钥的 PuTTYgen 程序。
注意 |
---|
在 UNIX 和 Linux 操作系统上的不同位置存在 sudo 程序。 若要提供统一访问 sudo,UNIX 和 Linux 代理的安装脚本会创建符号链接 /etc/opt/microsoft/scx/conf/sudodir 以指向应包含 sudo 程序的目录。 代理使用此符号链接来调用 sudo。 安装脚本会自动创建符号链接,因此您不需要标准的 UNIX 和 Linux 配置 ; 对其执行任何操作但是,如果您有 sudo 安装在非标准位置,您应更改符号链接以指向安装 sudo 的目录。 如果更改符号链接,请保留其值跨卸载、 重新安装和升级与代理的操作。 |
配置用于 sudo 提升权限的低特权帐户
通过使用以下过程创建的低特权帐户和 sudo 提升 opsuser 用户名称。
若要创建的低特权用户
-
登录到 UNIX 或 Linux 计算机作为 root。
-
将用户添加:
useradd opsuser
-
添加密码并确认密码:
passwd opsuser
现在,可以配置 sudo 提升并创建 SSH 密钥为 opsuser, ,如以下过程中所述。
若要配置低特权用户的 sudo 提升
-
登录到 UNIX 或 Linux 计算机作为 root。
-
使用 visudo 程序编辑 vi 文本编辑器中的 sudo 配置。 运行以下命令:
visudo
-
找到以下行:
root ALL=(ALL) ALL
-
在它后面插入以下行:
opsuser ALL=(ALL) NOPASSWD: ALL
-
不支持 TTY 分配。 请确保以下行注释掉:
# Defaults requiretty
重要事项 此步骤中都需要 sudo 工作。
-
保存该文件并退出 visudo:
按 esc 键 +: (冒号) 后跟 wq!, ,然后按 enter 键。
-
通过输入以下两个命令中测试配置。 结果应为在不提示输入密码的情况下的目录的列表:
su - opsuser
sudo ls /etc
您可以使用 opsuser 通过使用密码和 sudo 提升用于指定在 Operations Manager 向导中的凭据和用于配置运行方式帐户的帐户。
创建 SSH 密钥进行身份验证
以下过程创建的 SSH 密钥 opsuser 在前面的示例中创建的帐户。
若要生成 SSH 密钥
-
作为登录 opsuser。
-
通过使用数字签名算法 (DSA) 算法来生成密钥:
ssh-keygen –t dsa
如果您提供了它,注意可选密码。
ssh-keygen 创建 /home/opsuser/.ssh 目录以及私钥文件 (id_dsa) 和公钥文件 (id_dsa.pub)。 你现在可以配置的密钥必须由支持 opsuser 中下一个过程中所述。
若要配置用户帐户以支持的 SSH 密钥。
-
在命令提示符下键入以下命令。 若要导航到用户帐户目录:
cd /home/opsuser
-
指定排他所有者对目录的访问权限:
chmod 700 .ssh
-
导航到.ssh 目录:
cd .ssh
-
使用的公钥创建授权的密钥文件:
cat id_dsa.pub >> authorized_keys
-
授予用户读取和写入到授权的密钥文件的权限:
chmod 600 authorized_keys
您现在可以将专用的 SSH 密钥复制到基于 Windows 的计算机下, 一个过程中所述。
若要将专用的 SSH 密钥复制到基于 Windows 的计算机并以 OpenSSH 格式保存
-
使用 WinSCP,之类的工具要传输的私钥文件 (id_dsa – 不带扩展名) 从 UNIX 或 Linux 计算机到基于 Windows 的计算机上的目录。
-
运行 PuTTYgen。
-
在 PuTTY 密钥生成器 对话框中,单击 负载 按钮,,然后选择私钥 (id_dsa) 从 UNIX 或 Linux 计算机传输。
-
单击 保存私钥 和名称以及该文件保存到所需的目录。
您可以使用 opsuser 使用 SSH 密钥和 sudo 提升为在 Operations Manager 向导中指定凭据和配置运行方式帐户的帐户。