1. SSH历史
1995年,芬兰赫尔辛基理工大学的研究员TatuYlönen设计了第一个版本的SSH协议,这个版本是在他的大学网络中通过密码嗅探攻击引起的。SSH的目标是取代早期的rlogin,TELNET,FTP和rsh协议,这些协议不提供强认证,也不保证机密性。Ylönen于1995年7月发布了他作为免费软件的实现,该工具迅速普及。到1995年底,SSH用户群已经扩展到50个国家的20,000名用户。目前,在Linux系统上,SSH已成标准配置。
2. SSH是什么?
维基百科上的定义是:
SSH(Secure Shell) uses public-key cryptography to authenticate the remote computer and allow it to authenticate the user.
直译过来就是:
SSH采用公钥加密来验证远程计算机,并允许它对用户进行身份验证。
SSH是一种加密网络协议,允许用户通过不安全的网络安全地执行许多网络服务。典型应用包括远程命令行登录和远程命令执行,但可以使用SSH保护任何网络服务。
SSH在客户端—服务器体系结构中提供了安全通道,将SSH客户端应用程序与SSH服务器连接。
3. SSH密钥是什么?
SSH密钥总是成对出现的,由私钥和公钥组成。不同于密码方式的登录,SSH密钥提供了更安全的方式来登录SSH服务器。虽然暴力破解常常能够破解密码,但SSH密钥几乎不可能通过暴力破解。生成一对密钥提供两个长字符串:公钥和私钥。您可以将公钥放在任何服务器上,然后通过将其连接到已拥有私钥的客户端来解锁。当两者合适时,系统打开而无需密码。您可以使用访问密码保护您的私钥,从而进一步提高安全性。
4.通过SSH连接到GitHub
使用SSH协议,您可以连接和验证远程服务器和服务。使用SSH密钥,您可以在每次访问时无需提供用户名或密码即可连接到GitHub。
-
首先需要检查客户端上是否存在SSH密钥
打开终端——输入
ls -al ~/.ssh
,可以查看已经存在的SSH密钥。公钥具有以下一种文件名:- id_dsa.pub
- id_ecdsa.pub
- id_ed25519.pub
- id_rsa.pub
-
如果没有,需要自己创建,输入
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
根据提示,你需要输入一个安全密码:
Enter passphrase (empty for no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again]
-
将SSH密钥加入你的GitHub账户中
首先,复制你的密钥
pbcopy < ~/.ssh/id_rsa.pub
,登录GitHub,点击右上角的头像图标:
![](https://img.haomeiwen.com/i3048000/1a69c806b25c9bf2.png)
点击settings,再点击左侧栏里面的SSH and GPG keys:
![](https://img.haomeiwen.com/i3048000/ee33fd0706698633.png)
![](https://img.haomeiwen.com/i3048000/a04773b20376741f.png)
![](https://img.haomeiwen.com/i3048000/cb45b6ec289677f7.png)
输入刚才copy的密钥即可。Title任意设定。
网友评论