window系统使用ssh连接远程服务器

  • 准备
  • 本地创建并配置ssh密钥
  • 第一步:创建ssh密钥
  • 第二步:创建config文件并配置相关信息
  • 配置远程服务器
  • 查看sshd服务的端口
  • 新增ssh端口
  • 删除ssh端口
  • 重启sshd服务
  • 配置远程服务器密钥
  • 配置环境变量



关于window系统使用ssh连接远程服务器的方法,上网查了一下感觉还是比较混乱,这里结合学习的内容来总结一下window上使用ssh密钥连接远程的服务器的方法,亲测有效。

准备

一台window系统的电脑(这里使用的是win10系统)
一台远程服务器(这里使用的是腾讯云的服务器)

本地创建并配置ssh密钥

第一步:创建ssh密钥

  1. 打开控制台
  2. 在该路径下创建一个.ssh目录(可以使用命令,也可以手动创建)
  3. 进入.ssh目录
  4. 运行ssh-keygen
  5. 然后一直按回车执行就可以

    这里我创建过了就不创建了,完成后你会看到.ssh目录下会多出两个文件id_rsa和id_rsa.pub,就说明成功了

第二步:创建config文件并配置相关信息

在.ssh目录下新建一个config文件,并打开
配置信息:

Host test 
  Port 22  <端口号,你的远程服务器的sshd服务的端口号,默认是22>
  HostName  196.168.2.3 <主机地址,前面是乱填的>
  User root <用户名,默认是root>
  IdentityFile ~/.ssh/id_rsa<存放密钥的地址,默认填>
  IdentitiesOnly yes

Host:连接的时候使用的名称,自己定义
Port:端口号,你的远程服务器的sshd服务的端口号,默认是22
HostName:主机地址,前面是乱填的
User:用户名,默认是root
IdentityFile:存放密钥的地址,不会就按上面填就好
编辑完成后,然后保存。千万别填错!别填错!填错!尤其是IdentityFile和IdentitiesOnly。(我不会告诉你我就是填错过的)

这样本地就配置好了

配置远程服务器

这里需要先在远程服务器进行配置

这里使用的是linux的远程服务器

使用systemctl status sshd指令查看sshd服务的状态

windows通过ssh远程传文件到centos_centos

查看sshd服务的端口

semanage port -l | grep ssh

windows通过ssh远程传文件到centos_重启_02

新增ssh端口

一般默认是22端口,如果你希望新增一个端口你可以运行:

semanage port -a -t ssh_port_t -p tcp <你的端口号>

windows通过ssh远程传文件到centos_centos_03

删除ssh端口

semanage port -d -t ssh_port_t -p tcp <你要删除的端口>

windows通过ssh远程传文件到centos_centos_04

重启sshd服务

在对ssh端口进行新增或者删除的时候,我们需要重启sshd服务

service sshd restart

windows通过ssh远程传文件到centos_端口号_05

配置远程服务器密钥

  1. 在根目录下新建并进入.ssh目录
  2. 在.ssh目录下新建authorized_keys文件
  3. 打开本地的密钥,并复制其中的内容
  4. 将复制的内容黏贴到authorized_keys文件内
  5. 退出保存即可

让我们来试一下效果,先退出我们的远程服务器

然后在.ssh路径下运行ssh <设置的HOST>

windows通过ssh远程传文件到centos_远程服务器_06


连接成功了!

配置环境变量

该指令只能在.ssh路径下才可以运行,所有我们可以将该路径配置为全局环境变量,这样就可在任何路径下使用了

  1. 打开我的电脑->属性
  2. 打开高级系统管理
  3. 打开环境变量
  4. 点击path->编辑
  5. 复制.ssh目录路径,点击新建->将.ssh目录的路径粘贴到内容区域
  6. 保存确认即可
  7. 在cmd中运行 .ssh <your Host>

    连接成功

如果本文章有错或者又不懂的地方,欢迎交流!