我想在 webmin 上设置 ssh 密钥。
我已经拥有可用于许多服务器的密钥。
通常在 CLI 中,我只需将我的 id_rsa.pub 粘贴到服务器 server:/whitebear/.ssh/
我可以在 webmin 界面的哪里设置它?
答案1
所有 SSH 实现都有与客户端身份验证方式以及登录后显示的消息相关的选项。具体来说,您可以允许或拒绝通过用户名和密码或用户名和证书进行身份验证,阻止 root 用户登录,并控制是否信任 rlogin 样式的 .rhosts 文件。不过,不同 SSH 版本之间的确切选项差别很大,因此,如果您运行的是商业 SSH 服务器,OpenSSH 可能实现的功能可能就无法实现。
要编辑身份验证设置,请按照以下步骤操作:
单击模块主页上的身份验证图标,将出现如下所示的表单。
要保存并激活您的新身份验证设置,请点击表单底部的“保存”按钮,然后点击主页上的“应用更改”。
在 Unix 用户使用证书身份验证登录 SSH 服务器之前,他必须使用 ssh-keygen 命令生成私钥。此模块可以配置为与用户和组模块配合使用,以便为所有新创建的用户运行此命令。如果您的网络使用 NFS 挂载的主目录,这将允许新用户登录到其他主机,而无需提供密码,也无需进一步设置。要为新用户配置 SSH 设置,请按照以下步骤操作:
- 在模块主页面,单击用户 SSH 密钥设置图标。
- 选中为新 Unix 用户设置 SSH 密钥复选框,以便为新帐户运行 ssh-keygen。
- 要将新用户的公钥添加到有权使用其帐户的密钥列表中,请检查将新的identify.pub复制到authorized_keys框。如果未选中,则他们需要手动执行此操作,然后新证书的身份验证才会被接受。
- 要为新用户的私钥设置密码,请选中使用密码作为密钥密码框。如果不选中,则不会设置密码(这更方便用户使用,但安全性较差)。
- 单击“保存”按钮让 Webmin 开始使用您的新设置。
答案2
使用 Webmin 中的命令 shell
您可以从 Webmin 中的命令 shell 手动将密钥附加到 authorized_keys。
在需要访问的机器上,获取公钥(并复制)
cat ~/.ssh/id_ed25519.pub
在 Webmin 中,打开命令外壳(CTRL+K 或单击控制台图像左侧菜单)
重要的:使用两个 '>>' 字符进行附加!(一个用于覆盖!) 图像 - 命令 shell 示例
echo 'ssh-MYPUBLICKEYCHANGETHIS' >> /home/MYUSERNAME/.ssh/authorized_keys
现在您可以从另一台机器登录
ssh MYUSERNAME@myhostname