什么是SSH-协议,什么是ssh-实用程序?


15

什么是SSH-协议?
什么是sshunix实用程序,它如何工作?

SSH协议与SFTP有何关系?

什么sshd

该命令su使用ssh还是sshd


我在Solaris上工作,尽管我已经使用ssh,sftp和su命令已有相当一段时间了,但我从未完全理解它们的工作方式。请解释并指出一些有用的资源,在这里我可以学习更多。
Srikanth

Answers:


26

SSH协议由sshsshd程序接受的内容定义。(为此定义了一个标准,但这是事后的做法,当其中一种实现添加了新功能时,大多数情况下都会忽略它。)因为有多个实现(OpenSSH,F-Secure,PuTTY等)。 ),有时您会发现其中一个不支持与其他协议相同的协议。基本上,它定义了身份验证协商和多路复用数据流的创建。此流可以携带一个或多个(使用OpenSSH和ControlMaster)终端会话和零个或多个隧道(将套接字连接从本地或远程转发到另一端; X11转发是远程转发的一种特殊情况)。它还定义了可以在流上使用的“子系统”。终端会话是基本子系统,但可以定义其他会话。 sftp是其中之一。

ssh该实用程序使用SSH协议sshd在另一台计算机上进行通信。它的工作方式取决于其版本(请参见上文),但要点是它试图找出要使用的SSH协议版本,然后sshd协商支持的身份验证方法,然后尝试使用以下方法对您进行身份验证其中一种方法(根据需要询问远程用户密码/私钥密码/ S-Key短语),并在成功进行身份验证后使用设置多路复用流sshd

sshd如上所述,它实现了SSH协议的服务器端。

sftp是大多数sshd实现中定义的(目前是唯一的标准)子系统。当请求SFTP子系统时,sshd连接sftp-server到子系统会话。sftp然后,程序与之对话,类似于,ftp但在流上复用了文件传输,而不是像那样使用单独的连接ftp

susshsshd或无关sftp,除非可能有PAM模块安排多路复用的流在它运行的shell或程序中可用。


该死,再次击败我。很好的综合答案-赞成。
2011年

9

SSH(代表“安全外壳”)是RFC4251中描述的网络协议。ssh实用程序是SSH客户端,它连接到SSH守护程序并向用户显示“ Secure SHell”。SFTP是类似于FTP的协议,可通过SSH连接工作。

su该命令不使用sshsshd以任何方式使用,仅允许您使用不同的特权运行进程。


6

SSH是用于通过不安全网络进行安全通信的协议。它允许对所有通信进行端到端加密,这样就不能(可行)对其进行拦截和解密。

ssh实用程序是协议的实现。SFTP是ssh的子系统,它使用该协议进行安全的密码和文件传输。

su不使用ssh协议。


5

看一下OpenSSH项目。它包含您要查找的所有信息。

简而言之,SSH协议允许两个主机之间的安全(加密)连接。该ssh实用程序是一个使用SSH协议登录到远程系统的客户端程序,它还有许多其他用途,例如[反向]隧道/端口转发/...。

sshd它是服务器软件。它提供了一个守护程序来响应传入的SSH请求。

su与ssh无关。它用于更改活动用户(成为的最频繁使用root)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.