我想使用基于密钥的身份验证登录到我的其中一台计算机。它在非默认端口 22 上运行 sshd。我想用它ssh-copy-id来将我的密钥添加到授权密钥列表中。-p对于 ssh 命令本身,我尝试使用 指定端口。但是,我收到了非常奇怪的错误消息。
例如
user@box:~$ ssh-copy-id -p 57777 -i ~/.ssh/id_rsa.pub user@192.168.1.111
Bad port 'umask 077; test -d ~/.ssh || mkdir ~/.ssh ; cat >> ~/.ssh/authorized_keys'
user@box:~$ ssh-copy-id '-p 57777' -i ~/.ssh/id_rsa.pub user@192.168.1.111
Pseudo-terminal will not be allocated because stdin is not a terminal.
ssh: Could not resolve hostname umask 077; test -d ~/.ssh || mkdir ~/.ssh ; cat >> ~/.ssh/authorized_keys: Name or service not known
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它工作?(我知道我可以手动将密钥添加到服务器上的 authorized_keys 文件中。但我很懒惰,而且非常好奇如何说服 ssh-copy-id 完成它的工作:))
zpe*_*pea 10
引用已经是一个好主意,而是这样做:
ssh-copy-id -i /home/user/.ssh/id_rsa.pub '-p 57777 user@192.168.1.111'
Run Code Online (Sandbox Code Playgroud)
将您想告诉脚本使用的 ssh 命令的所有内容放在最后并引用所有内容。该脚本期望最后一个参数是主机名,因此在其生成的 ssh 命令结束时复制它。
| 归档时间: |
|
| 查看次数: |
12804 次 |
| 最近记录: |