更多精彩!
1995年的早春,天还有点冷。那时我正读高中,在那个信息闭塞的环境中,刚知道有一种叫“计算机”的东西。老师带我们上了一次计算机课。那时计算机在我们心里是神圣的。进微机室的时候,就像大夫进手术室,全副武装。简直都不太敢摸机器,生怕把它摸坏了。然后后续的课就取消了。那是见那些微机的第一面,也是最后一面。
也是在那个春天,芬兰一个大学发生了一起黑客事件,数千人的密码和用户名泄漏。那个年代发生这样的事一点不奇怪。另一个芬兰人Linus Torvald在1994年才发布了Linux 1.0,那时的网络安全比现在差远了。面对这种事情,大部分的反应就是默默的忍了。
可是,如果人人都沉默,世界就没有进步!
芬兰学者Tatu Ylonen挺身而出,吹响了反抗的号角。这样SSH协议就诞生了。SSH的全称是SecureShell,是通过加密数据来保证通信的安全。SSH原理大概是这样的:
作为网络软件,SSH需要一个端口号。要把它变通用,需要一个标准的端口号。Tatu Ylonen设计SSH,是为了替代telnet(端口23)和ftp(端口21)。端口22在当时是空闲的,正好就在telnet和ftp的端口之间,这使得这个端口号天然就带有可信度光环。但是该怎么拿到这个端口号呢?要找负责分配端口号的人。
当时,互联网处在网络爆炸非常早期的阶段,规模很小,端口分配的基本流程非常简单。IANA(互联网号码分配局)就是负责端口号分配的总舵。在那个时候,这其实说的就是事实上的舵主Jon Postel和Joyce K. Reynolds。此二人乃互联网先锋,有极高的江湖地位。比如说Jon是许多互联网RFC的编写者,例如IP(RFC 791),ICMP(RFC 792)和TCP(RFC 793)等协议标准。二人在Tatu Ylonen心里简直是神一样的存在。
管他神不神的,1995年7月,就在发布ssh-1.0之前,Tatu Ylonen给IANA发了下面这封邮件:
尊敬的先生,
我写了一个程序,用于在不安全的网络上安全地从一台机器登录到另一台机器。与现有的telnet和rlogin协议及实现相比,它在安全性和功能性上有着重大改进。特别是,它能防止IP、DNS和路由欺诈。我的计划是在互联网上免费分发该软件,希望使它的应用尽可能广泛。
我想为这个软件申请一个注册的特权端口号。这个端口号最好在1-255之间,这样它可以在名称服务器的WKS字段中使用。
附上该协议的RFC草稿。这个软件已在我本地使用了几个月,已经万事俱备,只差端口号。如果能为它及时分配端口,我将在本周发布这个软件。目前我在beta测试版中用的是22端口,如果能继续使用这个端口那就太好了(它目前在端口列表中是未分配状态)。
这个软件的服务名是“ssh” (即安全的shell)。
此致,
神一样的存在,神速的回复。第二天,一封Joyce的email就在邮箱里等着Tatu Ylonen了:
Tatu,
我们已把22端口分配给了ssh,并设置你为相应的联系人。
Joyce
没有诘难,没有客气,也没有啰嗦。都说好事多磨,这事就这么容易的办成了!SSH的端口从此就是22!!
东风已来,趁热打铁!
1995年7月12日凌晨2点32分,SSH最终测试版本公布给了在赫尔辛基理工大学的测试人员。
1995年7月12日下午5:2Tatu Ylonen向beta测试人员发布了ssh-1.0.0软件包。
SSH如星星之火,迅速燎原!时至今日,SSH协议/软件被用于管理世界上一半以上的网络服务器,以及几乎所有的内部部署或云上的Unix/Linux计算机。
—————END—————
领取专属 10元无门槛券
私享最新 技术干货