ssh-copy-id使用及非默認22端口時報錯
ssh-copy-id使用介紹
- 說明:ssh-copy-id命令可以把本地的ssh公鑰文件安裝到遠程主機對應的賬戶下。
- 功能:ssh-copy-id 命令將你的公共密鑰填充到一個遠程機器上的authorized_keys文件中。如果遠程機器上存在authorizedkeys文件,且authorizedkeys有內容,則ssh-copy-id 可以將待傳公鑰追加到authorizedkeys文件里。
- 語法:ssh-copy-id [-i [identity_file]] [user@]machine
- -i 指定認證文件路徑(默認是~/.ssh/id_rsa.pub)
- 描述:ssh-copy-id 是一個實用ssh去登陸到遠程服務器的腳本。它也能夠改變遠程用戶名的權限,如~/.ssh和~/.ssh/authorized_keys 刪除其寫的權限,所以一般~/.ssh給予700,~/.ssh/authorized_keys 給予600權限。
如果機器更改了默認ssh端口后使用ssh-copy-id會出現
ssh: connect to host 172.16.203.95 port 22: Connection refused
解決方法:
方法一:
[root@localhost .ssh]# ssh-copy-id -i ./id_rsa.pub "-p 58422 root@192.168.1.10"
方法二:
修改全局配置文件:
[root@localhost .ssh]# vim /etc/ssh/sshd_config Port 58422
方法三:
[root@localhost .ssh]# vim ~/.ssh/config 加上內容: Host server Hostname ip Port 58422
如果執行報錯
Bad owner or permissions on /root/.ssh/config
則需要修改權限以符合安全策略
[root@localhost .ssh]# cd .ssh [root@localhost .ssh]# chmod 700 .
最后,為了使用方便,推薦使用方法一!