操作步骤(以 openEuler 虚拟机为例)​

​1. 确保虚拟机已开启 SSH 服务​

在虚拟机上检查 SSH 服务是否运行:

sudo systemctl status sshd

如果未运行,启动并设置开机自启:

sudo systemctl start sshd
sudo systemctl enable sshdd

​2. 在本地主机生成 SSH 密钥对​

在 ​​本地主机​​(Windows/macOS/Linux)执行:

ssh-keygen -t rsa -b 4096
  • 默认存储路径:~/.ssh/id_rsa(私钥)和 ~/.ssh/id_rsa.pub(公钥)。
  • ​直接按回车​​,不设置密码(否则仍需输入密钥密码)。

​3. 将公钥复制到虚拟机​

​方法 1:使用 ssh-copy-id(推荐)​
ssh-copy-id username@虚拟机IP
  • 例如:
    ssh-copy-id openeuler@192.168.1.100
  • 首次需要输入虚拟机密码,之后公钥会自动写入 ~/.ssh/authorized_keys
​方法 2:手动复制(适用于无 ssh-copy-id 的环境)​
  1. 查看本地公钥:
    cat ~/.ssh/id_rsa.pub
  2. ​登录虚拟机​​,将公钥写入 authorized_keys
    mkdir -p ~/.ssh
    echo "粘贴公钥内容" >> ~/.ssh/authorized_keys
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys

​4. 测试免密登录​

在本地主机执行:

ssh username@虚拟机IP
  • 例如:
    ssh openeuler@192.168.1.100
  • ​成功​​:直接进入虚拟机,无需密码。
Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐