1. 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权限。
  2.  ssh-copy-id使用方法
    
    (1)ssh-copy-id一般用法,如下所示: (2)使用-i选项指定公钥文件路径,如下所示: 查看远程主机上是否有authorized_keys (3)使用非22端口传输公钥 如果我们使用ssh-copy-id -p 58422 test@192.168.246.130进行公钥传输,则会出现如下报错信息: 解决方法: 方法一: [root@ceshiji .ssh]# ssh-copy-id "-p 58422 root@192.168.246.129" 方法二: 修改全局配置文件: [root@ceshiji .ssh]# vim /etc/ssh/sshd_config Port 58422 方法三: [root@ceshiji ~]# vim ~/.ssh/config 加上内容: Host server Hostname ip Port 58422 如果执行报错 Bad owner or permissions on /root/.ssh/config 则需要修改权限以符合安全策略 [root@ceshiji ~]# cd .ssh [root@ceshiji .ssh]# chmod 700 . [root@ceshiji .ssh]# ll -d drwx------ 2 root root 4096 11月 30 12:38 . 最后,为了使用方便,推荐使用方法一!