首页 > 操作系统 >麒麟系统SSH公钥登录设置教程

麒麟系统SSH公钥登录设置教程

来源:互联网 2026-05-17 17:22:18

麒麟操作系统配置SSH公钥登录可提升远程访问安全性。主要步骤包括生成密钥对、部署公钥至目标主机并调整服务端配置。部署方法支持自动工具、手动复制及批量操作。关键配置需启用公钥认证、正确设置文件权限并注释PAM干扰项。最后验证登录成功后可禁用密码认证,确保仅密钥可访问。

在麒麟操作系统中配置SSH公钥登录,可以避免重复输入密码,并显著增强远程访问的安全性。整个过程主要包含三个核心步骤:生成密钥对、部署公钥文件、调整服务端设置。以下提供了多种配置方案,适用于不同的运维环境。

麒麟系统SSH公钥登录设置教程

长期稳定更新的攒劲资源: >>>点此立即查看<<<

使用ssh-keygen与ssh-copy-id自动部署公钥

如果本地计算机与目标麒麟系统均安装了OpenSSH且网络连通,此方法最为便捷。它能自动完成目录创建、文件写入和权限设置等操作。

首先,在本地终端生成密钥对。执行以下命令,按回车使用默认路径,并可选择设置空密码(为提升安全性,也可设置密码短语):

ssh-keygen -t ed25519 -C "admin@kylin"

生成后,在~/.ssh/目录下会找到私钥id_ed25519和公钥id_ed25519.pub。请注意,私钥文件权限必须设置为600

随后,自动上传公钥至目标主机:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@192.168.1.100

根据提示输入目标用户密码,若看到“Number of key(s) added: 1”的提示,即表示公钥已成功部署。

手动复制公钥内容至authorized_keys文件

当目标主机为最小化安装或ssh-copy-id命令不可用时,可采用手动部署方式。此方法通过管道操作,能避免文件传输中的权限问题。

首先,在本地终端查看并复制公钥内容:

cat ~/.ssh/id_ed25519.pub

登录目标麒麟系统,进入相应用户的家目录,创建.ssh目录并设置权限:

mkdir -p ~/.ssh && chmod 700 ~/.ssh

将复制的公钥字符串(以ssh-ed25519开头)追加写入授权文件:

echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI..." >> ~/.ssh/authorized_keys

最后,严格设置授权文件权限:

chmod 600 ~/.ssh/authorized_keys

为多用户批量部署公钥(包括root账户)

如需为多个用户(如root账户)统一配置密钥登录,可进行批量部署。关键仍在于确保每个用户的.ssh目录及授权文件权限符合安全要求。

可为不同用户生成独立密钥对,也可复用同一对密钥(需确保公钥内容一致)。以配置root账户为例,执行以下命令:

创建目录并设置权限:sudo -u root mkdir -p /root/.ssh && sudo chmod 700 /root/.ssh

将公钥写入root的授权文件(使用sudo sh -c确保重定向在特权下执行):sudo sh -c 'echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI..." >> /root/.ssh/authorized_keys'

设置授权文件权限:sudo chmod 600 /root/.ssh/authorized_keys

其他普通用户可参照上述手动部署流程操作。

调整SSH服务端配置并重启服务

麒麟系统默认可能未启用公钥认证,或受PAM模块影响导致密钥登录失败,因此需修改服务端配置。

使用编辑器打开SSH主配置文件:

sudo vim /etc/ssh/sshd_config

确认以下关键参数设置正确:

  • PubkeyAuthentication yes (启用公钥认证)
  • AuthorizedKeysFile .ssh/authorized_keys (指定公钥文件路径)
  • PasswordAuthentication no (禁用密码认证,建议测试时暂设为yes)

特别注意:检查#UsePAM yes行。若该行未被注释(行首无#号),必须手动添加#号将其注释,这是避免PAM干扰公钥登录的关键步骤。

保存修改后,重载SSH服务使配置生效:

sudo systemctl reload sshd

验证密钥登录并彻底禁用密码认证

完成配置后需进行测试,确保密钥登录有效后再关闭密码认证,以实现安全闭环。

从本地客户端使用指定私钥连接测试:

ssh -i ~/.ssh/id_ed25519 user@192.168.1.100

若无需密码即可登录,说明公钥认证已成功。

验证成功后,建议将/etc/ssh/sshd_config中的PasswordAuthentication参数改为no,彻底禁用密码登录。

执行服务重启以使配置持久生效:

sudo systemctl restart sshd

最后,可尝试用密码方式再次连接:

ssh user@192.168.1.100

若收到“Permission denied (publickey)”提示,则证明系统已仅允许公钥登录,安全性得到提升。

侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述

热游推荐

更多
湘ICP备14008430号-1 湘公网安备 43070302000280号
All Rights Reserved
本站为非盈利网站,不接受任何广告。本站所有软件,都由网友
上传,如有侵犯你的版权,请发邮件给xiayx666@163.com
抵制不良色情、反动、暴力游戏。注意自我保护,谨防受骗上当。
适度游戏益脑,沉迷游戏伤身。合理安排时间,享受健康生活。