通过使用keys我们可以免密登录Linux server,这样以后ssh到Linux的时候就不需要每次填写密码了。

  • 首先在windows上生成一个密钥对,一般会生成在C:\Users\Username/.ssh/id_rsa,而且都是成对生成的,会有一个公钥id_rsa.pub和一个私钥。

    ssh-keygen
    
  • 在Linux中查看是否有.ssh目录,如果没有则新建

    cd ~
    mkdir -p ~/.ssh
    chmod 700 ~/.ssh
    
  • 将公钥id_rsa.pub上传到Linux

    cd C:\Users\Username/.ssh/
    scp .\id_rsa.pub username@address:~/.ssh
    
  • 在Linux中查看是否有authorized_keys文件,如果没有则新建

    cd ~/.ssh
    touch authorized_keys
    chmod 600 ./authorized_keys
    cat id_rsa.pub >> ./authorized_keys
    
  • 添加完之后就可以将id_rsa.pub删除了

    cd ~/.ssh
    rm id_rsa.pub
    

这样以后就不再需要输密码了。