[关闭]
@spiritnotes 2016-02-01T15:03:57.000000Z 字数 702 阅读 1650

SSH简介

SSH


ssh

ssh: secure shell

常规网络服务程序在传输上不安全,安全验证方式更是容易受到“中间人”攻击。而ssh是将传输的数据均进行加密,防止中间人攻击,同时对数据进行压缩,减少传输时间。

中间人攻击: 就是“中间人”冒充服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送就完全被“中间人”知晓。

加密方法

RSA公钥系统:非对称加密系统,利用了大整数的求质原理,一次会产生一对密钥,利用公钥加密的文本只能通过私钥才能解开

SSH主要使用的是基于密钥的安全验证,在接受数据的一方先产生一对密钥,然后将公钥发送给发送端,而发送端采用公钥加密后将数据传送给接受端,这样只有接受端可以解码出正确数据。

服务端的真伪

从上面可以看到,其实攻击者仍然可以模拟服务端,采用伪造的公钥私钥实行中间人攻击。

这里没有特别好的办法,只能是服务端将其公钥的MD5(公钥指纹RSA key fingerprint)公布在网站上,以供核对。

而用户登录后,其公钥会添加到本地的known_hosts中。

公钥登录

ssh还可以支持免密码登录,也即是公钥登录。用户将自己的公钥存放在远程主机上,登录的时候,远程主机会向用户发送一段采用用户公钥加密的随机数据,然后与用户采用私钥解密后返回的数据进行比较,如果比对成功,则允许登录。

ssh常见命令

  1. #远程登录
  2. ssh -p 23 user@host
  3. ssh-keygen -t rsa -C "spiritwiki@qq.com"
  4. ssh -T git@github.com
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注