给Git配置SSH后,妈妈不再担忧我忘记输密码了

1. 前言

Git 已经成为咱们开发最流行的版本控制工具了,Git 支持多种传输协议,其中最经常使用的就是httpsssh,日常咱们用 https 比较多,这种方式 pullpush 代码都要输入帐户密码,很是不方便。那么有没有更加方便并且安全的方式呢?固然有!ssh 方式能够作到这一点。git

2. Git 中的 ssh

公有 Git 服务诸如 GitHubGiteeCodingGitlab 等都提供了 ssh 功能。经过 GitlabGogsGitea 搭建的私有 Git 服务也都有 ssh 功能。通常咱们均可以在对应的设置 中找到。以 Gitee 为例:web

那么如何生成 ssh 公钥呢?算法

3. ssh 公钥的生成

ssh 生成公钥的算法有不少种,咱们一般使用 RSA 算法来生成密钥对。确保你在不一样操做系统的用户目录 ~/.ssh 下没有 id_rsaid_rsa.pub ,若是有就说明你已经生成了无需再生成。针对 Linux\MacWindows 和咱们来走一下流程。安全

3.1 Linux\Mac 为例

命令行执行:服务器

ssh-keygen -t rsa -b 4096 -C "替换为经常使用email地址"
复制代码

后面让你输入密码你能够输入一个,或者一路 enter 按到底直接生成。生成完毕后执行如下命令查看公钥:ssh

cat ~/.ssh/id_rsa.pub
复制代码

切记必定要带 .pub 后缀,不然则为私钥。而后出现以 ssh-rsa 开头的字符串就是公钥:编辑器

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDDBYgnpCY9j/xhhZO4ryy7YrJRRUXydbVUyi8dSfyn5obFD0iJhqPCF1jk5LZuryhsmy
…………………(此处省略)
mH1eqd4SMXO8fJoaM7JOWYSs/xgRK9bw== dax@felord.cn

复制代码

3.2 Windows 下生成 ssh

若是你本地安装有 Git Bash 方法能够按照上面去模仿便可。 Bash 能够去你 Git 安装目录找,它也是一种 Shell 操做界面。而后能够按照 3.1 的方法生成。Window10 某个更新之后开始内置了 ssh 服务。以管理员身份打开命令行输入 ssh 若是出现了提示命令说明你已经开启了 ssh 服务。若是没有则须要你手动开启。在 应用和功能 选项中搜索 openssh 选择客户端或者服务器均可以:工具

安装后须要重启,重启后打开命令行,输入 ssh 进行检查便可。而后就能够按照 3.1 的方式生成公钥了。spa

Win 下开启/关闭 ssh 命令:操作系统

net start sshd
net stop sshd
复制代码

4. 配置

咱们生成了密钥对以后将 id_rsa.pub全部内容复制并填写到 公钥 一栏中配置好咱们生成的公钥,Git 服务端就承认咱们当前的主机了。咱们就能以 git@ hostname:user/project.git 的形式进行无密码访问远程 Git 仓库了。

相关文章
相关标签/搜索