SSH文件传输协议secret file transfer protocol, Secure FTP或SFTP,是一种数据流连线档案存取、传输和管理功能的网络传输协议。
1995年,芬兰赫尔辛基科技大学的研究员TatuYlönen设计了第一个版本的协议(现称为SSH-1),这个版本是在他的大学时通过密码
嗅探攻击提出的。SSH的目标是取代早期的
rlogin,
TELNET,ftp和
rsh协议,这些协议不提供强认证,也不保证机密性。1995年7月时Ylönen以免费软件的方式发布了,该工具迅速普及。到1995年底,SSH用户群已在50个国家普及,并增加到20,000个用户。
1995年12月,Ylönen创建了SSH Communications Security以推广和开发SSH。SSH软件的原始版本使用了各种
免费软件,例如GNU libgmp,但SSH Communications Security发布的更新版本逐渐发展成为专有的软件。
“Secsh”是负责SSH协议版本2的IETF工作组的官方
Internet工程任务组(IETF)名称。2006年,该协议的修订版本SSH-2被采纳为标准。此版本与SSH-1不兼容。SSH-2具有SSH-1的安全性,并且有其他功能改进。例如,更好的安全性来自Diffie-Hellman密钥交换和通过消息认证码进行的强
完整性检查。SSH-2的新功能包括通过单个SSH连接运行任意数量的
shell会话的功能。由于SSH-2在SSH-1上的优越性和普及性,一些实现如libssh(v0.8.0 +),
Lsh和
Dropbear仅支持SSH-2协议。
在2006年1月,在版本2.1建立之后,RFC 4253指定支持2。这不是一个实际版本,而是一种识别
向后兼容性的方法。
1999年,想要一个免费软件版本的开发人员回到原始SSH程序的旧版本1.2.12,这是最后一个在
开源许可下发布的版本。BjörnGrönvall的OSSH是从这个代码库开发的。此后不久,
OpenBSD开发人员分享了Grönvall的代码,并对其进行了大量的工作,创建了
OpenSSH,随OpenBSD 2.6版一起发布。从这个版本开始,形成了一个“可移植性”分支,将OpenSSH移植到其他操作系统。
截至2005年,
OpenSSH是最受欢迎的单一SSH实现,默认情况下会出现在大量操作系统中。OSSH已经过时。OpenSSH继续得到维护并支持SSH-2协议。