Windows机器通过ssh免密连接Linux

Windows机器ssh免密连接Linux

文章目录

  • Windows机器ssh免密连接Linux
    • 生成windows密钥对
    • 上传公钥
    • 配置linux的ssh服务
    • 添加公钥到xshell
    • 连接服务器

生成windows密钥对

  1. 在windows中的CMD命令窗口或者PowerShell中输入命令:
     PS C:\Users\ermao> ssh-keygen -t rsa
    
  2. 根据提示一路按回车下去即可,如果有其他需要也可以根据提示输入自定义文件名以及密码
    Windows机器通过ssh免密连接Linux_第1张图片
  3. 生成本机的密钥与公钥文件,默认存放在本用户目录下的.ssh/下面
    在这里插入图片描述

上传公钥

  1. 采用用户名/密码方式连接Linux服务器,通过ftp将公钥(id_rsa.pub)上传到服务器,私钥(id_rsa)存放在本地用于与服务器进行验证。
    将公钥上传至任一目录:
    公钥文件

  2. 查看登录用户root的用户目录下是否存在ssh文件夹以及authoriaed_keys文件,如果不存在,则创建

    mkdir ~/.ssh
    cd .ssh/
    touch authorized_keys
    
  3. 将id_rsa.pub的内容追加到authorized_keys文件中

    cat id_rsa.pub >> ~/.ssh/authorized_keys
    
  4. 为公钥文件设置权限

此步骤必不可少,如果没有执行此步骤,哪怕后面ssh服务配置好了,也不可用

```
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
```

配置linux的ssh服务

  1. 编辑sshd配置文件
    vim /etc/ssh/sshd_config
    
    在文件第42行附近,根据图示配置ssh服务,支持公钥登录,保存配置文件esc :wq
    Windows机器通过ssh免密连接Linux_第2张图片
  2. 重启sshd服务
    systemctl restart sshd ; --CentOS 7 / RedHat 7以上
    service sshd restart;  --CentOS6 / RedHat 6
    
    到此步,基本配置已经完成,下方根据xshell配置免密连接

添加公钥到xshell

  1. 打开Xshell,选择文件->属性,用户身份验证中,方法选择Public Key
    Windows机器通过ssh免密连接Linux_第3张图片
  2. 选择 浏览->导入私钥
    Windows机器通过ssh免密连接Linux_第4张图片
  3. 选择密钥对所在路径,导入私钥id_rsa,无.pub后缀
    Windows机器通过ssh免密连接Linux_第5张图片
  4. 导入完成后,点击确定即可,如果第一步生成的密钥对存在密码,则需要输入密码
    Windows机器通过ssh免密连接Linux_第6张图片Windows机器通过ssh免密连接Linux_第7张图片

连接服务器

在xshell中输入ssh连接命令,即可免密登录。
Windows机器通过ssh免密连接Linux_第8张图片

你可能感兴趣的:(CentOs,linux)