Git 服务器的SSH key

引言

今天在搭建GIT环境的时候,又在网上搜索文章了,自己想想,还是总结一下吧。算是一个笔记。

SSH是什么

摘自百度百科:
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UXLinuxAIXSolarisDigital UNIXIrix,以及其他平台,都可运行SSH。

可以看到,SSH是一个安全的网络协议,是用于远程登录的。对,是的,我们的Git,就需要这么样的机制来互相验证身份。

SSH key 在Git中的使用

我们在搭建环境的时候,首先要保证本机和远程主机是可以安全通信的,不然,是不能够pushchange操作的。在Git服务器上的Settings有个SSH keys的选项,这里是添加本机的公钥的,而这个公钥,是在本机生成的,生成命令:

ssh-keygen -t rsa -C "yourEmail"
注释:
参数含义:
-t指定密钥类型,默认是rsa
-C 注释文字,一般是有意义的字符串
-f 指定密钥文件存储文件名
命令执行之后会生成id_rsa和id_rsa.pub,顾名思义,就是私钥和公钥。

打开id_rsa.pub复制内容到刚才的SSH keys中内容.(路径:~/.ssh)


填写公钥

填写完成后,client被远程主机信任,相应的client的.ssh文件夹下中的known_hosts中也有远程主机的白名单。就完成了互信,可以安全的通信。

结束语

本文涉及到了非对称加密的知识,以后有机会,总结一下。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,973评论 19 139
  • 有必要先来了解什么是SSH和什么是SSH key。 SSH Secure Shell (SSH) 是一个允许两台电...
    faner阅读 47,607评论 1 48
  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,716评论 4 54
  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,721评论 9 163
  • 它俩没戏了,香蕉说:“我就知道范儿爱操纵餐饮,看吧--我又一边呆萌啦!”酸奶说:“我一直相信我的诱惑...
    文竹君Fan阅读 338评论 0 0