我正在尝试使用命令将 /id_rsa.pub 复制到另一台机器
cat .ssh/id_rsa.pub | ssh root@10.0.2.15 'cat >>
.ssh/authorized_keys'
Run Code Online (Sandbox Code Playgroud)
但不断收到错误
sh: .ssh/authorized_keys: Is a directory
Run Code Online (Sandbox Code Playgroud)
我使用以下命令创建了目录
mkdir ~/.ssh
chmod 700 ~/.ssh
touch ~/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)
目标机器上命令的输出
ls -l /root/.ssh
Run Code Online (Sandbox Code Playgroud)
是“总0”
问题是您创建了一个名为~/.ssh/authorized_keys. 这应该是一个文件。我不确定这是怎么发生的,因为您列出的命令应该只是在其中创建了~/.ssh目录和authorized_keys文件。
删除远程机器上的授权密钥目录,并替换为一个文件。或者更好的是,使用ssh-copy-id来自本地机器的命令来创建文件并在一个命令中添加密钥:
ssh-copy-id user@ip-address
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9393 次 |
| 最近记录: |