SSH

简介: SSH

SSH(Secure Shell)是一种用于在不安全网络上安全传输数据的协议。它提供了加密的通信通道,用于远程登录和执行命令,以及在客户端和服务器之间传输文件。

使用SSH,你可以通过一个安全的连接远程登录,会话的建立通常包括以下步骤:

  1. 客户端发起连接请求:用户在本地计算机上的SSH客户端(例如OpenSSH、PuTTY等)发起连接请求。客户端需要指定目标主机的IP地址或域名,以及SSH服务监听的端口号(默认为22)。

  2. 服务端确认身份:目标主机上运行着SSH服务器软件(例如OpenSSH),它监听指定的端口并等待连接请求。当收到客户端的连接请求后,服务端会验证客户端的身份。
    a. 密码身份验证:最常见的身份验证方式是使用用户名和密码。客户端在连接请求中发送用户名和密码,服务端将其与本地的用户数据库进行比对,如果匹配成功则认为该客户端是合法用户。
    b. 公钥身份验证:另一种常见的身份验证方式是公钥身份验证。在这种情况下,客户端会在连接请求中发送公钥,并将相应的私钥保存在本地。服务端会检查用户的公钥与其账号相关联的授权文件中的公钥是否匹配,如果匹配成功则认为该客户端是合法用户。

  3. 加密会话建立:一旦身份验证通过,客户端与服务端之间建立了安全的加密通道。在通信过程中,所有的数据都会经过加密处理,保障数据的机密性。加密通道的建立使用了不对称加密和对称加密结合的方式。通常采用的是Diffie-Hellman密钥交换协议来协商对称加密所需的密钥。

  4. 远程登录:在加密会话建立后,用户可以在本地计算机上使用命令行界面或图形界面工具与远程主机进行交互。用户输入的命令或操作会通过加密通道传输到远程主机,并在远程主机上执行。

除了远程登录,SSH还可用于安全的文件传输和端口转发等功能。文件传输使用SCP或SFTP协议,可以在本地计算机和远程主机之间安全地复制文件或目录。端口转发允许用户将本地计算机上的网络服务通过SSH连接转发到远程主机上,以便在不直接公开服务的情况下进行访问。

总结来说,SSH提供了一种安全、加密的远程访问和数据传输解决方案,用于保护远程通信的机密性和完整性。它在网络管理、系统维护和远程协作等场景中广泛应用。

相关文章
|
9月前
|
算法 Linux 网络安全
ssh的使用
因为个人更推荐通过服务器->本地->服务器来传输。
50 0
ssh的使用
ssh 详细
ssh 首次登陆服务器时会弹出服务器公钥确认提示如果要禁用该提示功能,可以在ssh的配置文件中进行配置,默认是ask,默认情况下可能没有这个属性,也可以自己添加进去。StrictHostKeyChecking ask添加之后我们先从ssh信任服务器列表中删除上面的服务器的ip,再做测试。
1287 0
|
Shell 网络安全
SSH 技巧
SSH 是 Linux 下进行远程连接的基本工具。 一般情况下我们可以通过 ssh username@xxx.xxx.xxx.xxx 登录远程服务器,如果要管理多台服务器,这样太长了。
1104 0
|
网络安全 数据安全/隐私保护 Perl
ssh服务使用介绍二
老司机开车了 快上车   上文提到当我们使用ssh远程链接主机的时候,会出现询问的提示,如果我们链接的机器多了,一遍一遍的输入是不是很麻烦?怎么解决如下 vim /etc/ssh/ssh_config 如图 小案列 1、远程链接图形化命令 有两台主机,192.168.43.6与192.168.43.7我当前用的是6,去链接远方主机7,而7这台主机是运行在命令行界面的系统。
1344 0
|
安全 网络安全 数据安全/隐私保护
ssh服务介绍
基本介绍 ssh:安全的远程登陆 要有客户端与服务器端,客户端主动链接服务端,那么服务端地址是不能变的。 socket:套接字 标识应用唯一的地址 tcp/udp port端口号 cat /etc/service查看所有的端口号 备注:通过IP找到了这台机器,通过端口号找到相对应的应用程...
1413 0
|
JavaScript 前端开发
|
网络协议 安全 网络安全
|
Linux 网络安全
|
网络安全 网络协议 Shell