📜  pbcopy ~ ssh ed_25519.pub - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:33:25.839000             🧑  作者: Mango

将本地公钥复制到远程服务器

在使用 SSH 连接到远程服务器时,需要将本地的公钥复制到服务器上,这样才能进行密钥验证,免去每次输入密码的繁琐。

实现方法

在终端下执行以下命令:

pbcopy < ~/.ssh/id_ed25519.pub
ssh user@remote.server "mkdir -p ~/.ssh && cat >>  ~/.ssh/authorized_keys" < ~/.ssh/id_ed25519.pub

以上命令的作用为:

  1. 将本地公钥复制到系统剪贴板中;
  2. 连接到远程服务器,并在服务器上创建 .ssh 目录(如果不存在);
  3. 将本地公钥追加到远程 authorized_keys 文件中。

因为前两个命令可能会在不同的操作系统下有所不同,而且操作方法也不同。以上命令适用于 macOS 和 Ubuntu 系统。

参数说明
  • pbcopy:用于将指定内容复制到系统剪贴板中的命令;
  • ~/.ssh/id_ed25519.pub:本地 SSH 公钥的路径;
  • ssh user@remote.server:连接到远程服务器的命令;
  • mkdir -p ~/.ssh:创建 .ssh 目录,如果不存在;
  • cat >> ~/.ssh/authorized_keys:将本地公钥内容追加到远程 authorized_keys 文件中。
注意事项
  1. 执行命令前请确保本地已经存在 SSH 公钥;
  2. pbcopy 命令只适用于 macOS 系统,如果是 Windows 系统可以使用 clip 命令代替;
  3. 如果要使用密码验证,请执行以下命令:ssh-copy-id user@remote.server

以上就是将本地公钥复制到远程服务器的方法,希望对大家有所帮助。