ssh-copy-id
ssh-copy-id 是一个非常有用的 Shell 脚本命令,它的作用是将你的 SSH 公钥自动、安全地复制到远程服务器的 ~/.ssh/authorized_keys 文件中,从而让你能够实现免密登录。
你执行 ssh-copy-id remoteuser@hostname 时,它实际上是执行了一个 clever 的 shell 脚本,大致做了以下事情:
连接:通过 SSH 使用密码认证的方式连接到 remoteuser@hostname。
执行远程命令:一旦登录成功,它就在远程服务器上执行一小段命令。这段命令的作用是:
检查 ~/.ssh 目录是否存在,不存在则创建并设置权限为 700。
将你的本地公钥内容 (id_rsa.pub) 追加写入到远程的 ~/.ssh/authorized_keys 文件中。
确保 authorized_keys 文件的权限是 600。
它本质上就是帮你远程执行了所有必要的手动命令,既方便又不易出错。