服务器 ssh key 与 git 配置

程序员常常会说一句话: 面向 github 编程,github 对程序员的重要性可见一斑git

虽然 git 能够工做在 sshhttps 两种协议上,但为了安全性,更多时候会选择 ssh程序员

若是采用 https,则每次 git push 都须要验证身份github

因此此篇文章的主要内容是:shell

  1. ssh keygen: 生成非对称加密中的 public-key 与 private-key,并把 publik-key 扔到 github 上。与上篇文章 配置服务器免登录 同样的步骤

你对流程熟悉后,只须要一分钟即可以操做完成编程

Permission denied (publickey).

若是没有设置 public key 直接 git clone 的话,会有权限问题vim

能够使用 ssh -T 测试连通性后端

$ git clone git@github.com:vim/vim.git
Cloning into 'vim'...
Warning: Permanently added the RSA host key for IP address '13.229.188.59' to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
 # 不过有一个更直接的命令去查看是否有权限
$ ssh -T git@github.com
Permission denied (publickey).
复制代码

生成一个新的 ssh key

使用 ssh-keygen 能够生成配对的 id_rsaid_rsa.pub 文件安全

# 生成一个 ssh-key
# -t: 可选择 dsa | ecdsa | ed25519 | rsa | rsa1,表明加密方式
# -C: 注释,通常写本身的邮箱
$ ssh-keygen -t rsa -C "shanyue"
 # 生成 id_rsa/id_rsa.pub: 配对的私钥与公钥
$ ls ~/.ssh
authorized_keys  config  id_rsa  id_rsa.pub  known_hosts
复制代码

在 github 设置里新添一个 ssh key

在云服务器中复制 ~/.ssh/id_rsa.pub 中文件内容,并粘贴到 github 的配置bash

$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3SSSSSSSSSSSSSSSSSSSSSBAQDcM4aOo9qlrHOnh0+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHuM9cYmdKq5ZMfO0dQ5PB53nqZQ1YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc1w7bC0PD02M706ZdQm5M9Q9VFzLY0TK1nz19fsh2I2yuKwHJJeRxsFAUJKgrtNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN7nm6B/9erp5n4FDKJFxdnFWuhqqUwMzRa9rUfhOX1qJ1SYAWUryQ90rpxOwXt9Pfq0Y13VsWk3QQ8nyaEJzytEXG7OR9pf9zDQph4r4rpJbXCwNjXn/ThL shanyue
复制代码

在 github 的 ssh keys 设置中:github.com/settings/ke… 点击 New SSH key 添加刚才的key。服务器

更多图文指引能够参照官方文档:help.github.com/cn/articles…

设置成功

使用 ssh -T 测试成功, 此时能够成功的面向 github 编程了

$ ssh -T git@github.com
Hi shfshanyue! You've successfully authenticated, but GitHub does not provide shell access.
 $ git clone git@github.com:shfshanyue/vim-config.git
Cloning into 'vim-config'...
remote: Enumerating objects: 183, done.
remote: Total 183 (delta 0), reused 0 (delta 0), pack-reused 183
Receiving objects: 100% (183/183), 411.13 KiB | 55.00 KiB/s, done.
Resolving deltas: 100% (100/100), done.
复制代码

欢迎关注公众号山月行,我会按期分享一些先后端以及运维的文章,而且会有技术与生活上的每日回顾与总结

欢迎关注公众号山月行,在这里记录个人技术成长,欢迎交流
相关文章
相关标签/搜索