生成公钥文件

  1. ssh-keygen -t rsa -b 4096
  2. 连续敲击回车三次,密钥id_rsa和公钥id_rsa.pub文件均保存在(C:\User\用户/.ssh

将公钥文件id_rsa.pub传到远程服务器的authorized_keys文件中

  1. #1. 模板 :SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here
  2. #设置变量REMOTEHOST
  3. #例子 :SET REMOTEHOST=root@192.168.1.1
  4. scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
  5. ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"

第二行scp命令的详细知识可以参考scp使用说明,它是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令。知道这条命令的作用之后,我们就能知道前半部分是本地公钥文件的位置,后半部分是远程服务器端当前目录下名为tmp.pub的文件,我们要把本地的公钥拷贝到这个临时文件里。
%USERPROFILE%就是本地主机的用户名,在C:\Users这里找,%REMOTEHOST%是我们刚刚已经SET过的哦,就不用管它啦。