我所作的:html
在本地生成公钥和私钥,而后将公钥复制到github中的ssh keysgit
$ ssh-keygen -t rsa -C "username"#the username is the account of your github
$ cat ~/.ssh/id_rsa.pub
而后将idea中的git 里面的SSH executable 设置为nativegithub
可是仍是没用安全
而后我使用git工具链接到远程仓库bash
$ git clone git@github.com:crr121/BP-neural-network.git
it works服务器
查看kown_hosts,发现多了github的公钥。这里是由于第一次登陆到git仓库的时候,因为本地没有远程仓库的公钥,那么对于本地来讲,就是不安全的,那么首先须要将远程的公钥保存到本地,使得远程仓库是受信任的,才能登陆ssh
SSH的登陆过程:ide
SSH之因此可以保证安全,缘由在于它采用了公钥加密。工具
整个过程是这样的:(前提是本身的公钥已经发给了服务器)加密
(1)远程主机(也就是服务器)收到用户的登陆请求,把本身的公钥发给用户,(例如保存到本身的known_hosts中)。
(2)用户使用这个公钥,将登陆密码加密后,发送回来。
(3)远程主机用本身的私钥,解密登陆密码,若是密码正确,就赞成用户登陆。