windows 通过ssh连接到Linux主机

windows 通过ssh连接到Linux主机

1.ssh的认识

SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。

  • 传统的网络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。这些服务程序很容易受到“中间人”这种方式的攻击。就是“中间人”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被“中间人”一转手做了手脚之后,就会出现很严重的问题。通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了。
  • 使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。

2.ssh的安全验证

从客户端来看,SSH提供两种级别的安全验证。

  • 第一种级别(基于口令的安全验证)
    只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。
  • 第二种级别(基于密匙的安全验证)
    需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。
  • 用这种方式,你必须知道自己密匙的口令。但是,与第一种级别相比,第二种级别不需要在网络上传送口令。
  • 第二种级别不仅加密所有传送的数据,而且“中间人”这种攻击方式也是不可能的(因为他没有你的私人密匙)。但是整个登录的过程可能需要10秒

3.连接方法

(1)远程主机收到用户的登录请求,把自己的公钥发给用户。
(2)用户使用这个公钥,将登录密码加密后,发送回来。
(3)远程主机用自己的私钥,解密登录密码,如果密码正确,就同意用户登录。那么也就是每次我们都要输入命令,ssh用公钥加密它,然后服务器会用密钥解密,得到口令,判断是否和服务器上存储的密码一致。——这也叫密钥登陆,

  • 为了避免每次都输出口令的麻烦,诞生了公钥加密方法-----也就是我们在一些git上看到的ssh连接方法:用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。这种方法要求用户必须提供自己的公钥

4.windows 通过ssh连接到Linux主机

  • 首先在Linux主机上打开中断,输入ssh,看是否有如下的界面
    在这里插入图片描述

  • 如果没有的话sudo apt-install openssh-server进行安装。

  • 在终端输入ifconfig,记住这个【inet】开头的服务器ip地址,记住这个@前面的名字,例如这里的optimization。此外要知道服务器的ip,用户名以及密码就可以了。
    在这里插入图片描述

  • 之后在windows上右键Git Bash Here,输入【ssh +服务器用户名@服务器ip】,回车后输入这个yes。在password后面输入【服务器用户名密码】,然后就会看到连接成功了,输入【ls】,就可以列出服务器上的文件了的。
    在这里插入图片描述
    在这里插入图片描述

  • 此时发现用户名已经改变,这样就可以操作Linux主机了。

  • 如果要断开连接输入exit即可断开连接。有时会出现下面的情况,从而无法断开连接
    在这里插入图片描述

  • 查找问题:
    这个提示表示服务器有程序被停止[注意,不是终止],需要你重新启动或者完全终止这个程序才可以。
    查看被停止的程序命令:
    输入 jobs
    系统显示: [1]+ Stopped bin/hive
    输入 jobs -l
    系统显示:[1]+ 5510 Stopped bin/hive
    原来,我开始编辑文本,习惯性按ctrl z停止它了。

  • 解决问题:
    根据个人情况,
    a.如果重新启动使用下面命令:
    fg %1
    其中%1表示第一个被停止的程序,就是中括号中的数字;
    b.如果要彻底结束程序,使用下面命令:
    kill %1
    这里的%1同fg命令一样,输入后,会有提示

这样,再次用logout、exit就可以退出了
在这里插入图片描述

异常处理参考:https://blog.youkuaiyun.com/allen_infosys/article/details/51152045

### 回答1: 要在Windows上通过SSH连接Linux,您需要使用一个SSH客户端程序。Windows上有许多SSH客户端可供选择,例如PuTTY、OpenSSH、MobaXterm等。以下是一些基本步骤: 1. 在Windows上下载和安装一个SSH客户端程序。 2. 在Linux上启用SSH服务。如果您使用的是Ubuntu或Debian等基于Debian的Linux发行版,可以使用以下命令安装和启动SSH服务: sudo apt-get install openssh-server sudo service ssh start 3. 在Windows上打开SSH客户端程序,并输入Linux主机的IP地址和SSH端口号(默认为22)。 4. 输入您的Linux用户名和密码,然后按Enter键。 5. 如果一切正常,您应该能够成功连接到Linux主机并在命令行界面上执行命令。 ### 回答2: SSH协议(Secure Shell)是一种加密的网络传输协议,用于安全地远程连接到其他计算机,并在此计算机上执行命令。在Windows操作系统上,可以使用SSH客户端来建立与远程Linux服务器的连接,以便进行管理和维护。 一般来说,使用Windows系统进行SSH连接Linux需要完成以下步骤: 1. 安装Windows SSH客户端。当前比较流行的客户端有PuTTY、OpenSSH等。可以根据需要选择安装。 2. 在Linux服务器上启动SSH服务。可以使用以下命令启动SSH服务: sudo service ssh start 3. 在Windows SSH客户端上设置SSH连接。需要输入Linux服务器的IP地址、端口号、用户名和密码等信息。PuTTY作为一个比较流行的Windows SSH客户端,可以通过输入服务器的 IP 和端口号,在PuTTY的配置中设置连接方式为SSH。在连接选项卡卡中输入登录凭据,并确定保存这些设置。 4. 点击PuTTY的连接按钮,即可建立与远程Linux服务器的SSH连接。如果连接成功,则可以通过PuTTY终端窗口,在Linux服务器上执行命令。 如果你使用的是Windows10操作系统,还可以使用内置的OpenSSH客户端进行SSH连接。对于网络管理员,这些方法都有自己的标准用法.无论使用哪种方法,确保保持近端和远端机器之间的绝对安全性,以保护企业敏感资产不受威胁。 ### 回答3: SSH(Secure Shell)是网络协议,用于在不安全的网络环境下安全地登录远程计算机并执行命令。在使用Windows操作系统的情况下登录到Linux操作系统的远程计算机,可以通过SSH协议建立安全的连接。以下是在Windows操作系统上通过SSH连接到Linux操作系统的远程计算机的步骤: 1. 安装SSH客户端工具 为了连接到Linux服务器,需要一个SSH客户端工具。有一些免费的工具可供选择,例如PuTTY,MobaXterm,Git Bash等。 2. 开启SSH服务 在Linux服务器上需要安装SSH服务,并启动SSH服务。如果SSH服务未开启,需要通过以下命令开启SSH服务: sudo systemctl start sshd 3. 获取Linux服务器的IP地址和用户名 需要知道要连接的Linux服务器的IP地址和用户名。可以通过在Linux服务器上运行以下命令来获取IP地址: ip addr show 可以通过以下命令来查看Linux服务器上的用户名: whoami 4. 建立SSH连接 在Windows系统上运行SSH客户端工具,并输入Linux服务器的IP地址和用户名。以PuTTY为例,在PuTTY窗口中输入Linux服务器的IP地址和用户名后,点击“Open”按钮。系统会提示输入密码。 5. 输入密码 如果密码正确,接下来就可以通过SSH协议远程连接到Linux服务器了。在PuTTY窗口中登录后,用户可以在Linux服务器中执行命令,管理和维护服务器。退出登录时,只需在命令窗口中输入“exit”并按回车键即可。 通过以上步骤,就可以在Windows操作系统上通过SSH协议连接到Linux服务器了。这是非常便捷和安全的方法,可以使运维人员更好地管理和维护Linux服务器。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值