关闭

Git pull、 push 操作无需输密码的方法

标签: git服务器serversshimagefile
22611人阅读 评论(1) 收藏 举报
分类:

在本地使用git与服务器进行pull、push操作时,每次都要输入密码,比较麻烦,我们可以用ssh密钥来进行验证。这样git使用过程中ssh就会自动登录而无需输入密码。方法如下:
首先用自己账号登录到server上,输入ssh-keygen -t rsa

chenchi@Ubuntu-8:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/chenchi/.ssh/id_rsa):
 Enter passphrase (empty for no passphrase):
 Enter same passphrase again:
 Your identification has been saved in /home/chenchi/.ssh/id_rsa.
Your public key has been saved in /home/chenchi/.ssh/id_rsa.pub.
The key fingerprint is:
79:8a:78:8f:c6:12:12:3c:fd:40:84:7b:e3:fc:60:df
chenchi@Ubuntu-8
The key's randomart image is:
.........

输入ssh-keygen -t rsa后,出现各个提示,不用管,一直按回车。这样密钥对就生成完了。其中公共密钥保存在 ~/.ssh/id_rsa.pub ( ~ 表示自己账号的home目录,像我的就是/home/chenchi目录);
私有密钥保存在 ~/.ssh/id_rsa 文件中。
chenchi@Ubuntu-8:~$ cd .ssh/
chenchi@Ubuntu-8:~/.ssh$ ls
config  id_rsa  id_rsa.pub  known_hosts
chenchi@Ubuntu-8:~/.ssh$ cat id_rsa.pub  >> authorized_keys
chenchi@Ubuntu-8:~/.ssh$ chmod 600 authorized_keys
将公共密钥id_rsa.pub内容放到authorized_keys文件中,并修改authorized_keys的权限。
退出server,然后登录到本地的机器上执行:

$ scp chenchi@192.168.2.171:/home/chenchi/.ssh/id_rsa   /home/chenchi/.ssh/  (内网)

$ scp -P 9092  yourname@210.22.155.236:/home/yupeng/.ssh/id_rsa   ~/.ssh/id_rsa (外网)

$ cd /home/chenchi/.ssh/
$ chmod 600 id_rsa

将服务器上密钥对中的私有密钥(id_rsa)用scp命令复制到你自己本地.ssh目录下,修改一下本地的id_rsa
文件权限,这样就好了。之后你用ssh 访问那台服务器时,就不用输入密码 了。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:286209次
    • 积分:2876
    • 等级:
    • 排名:第12423名
    • 原创:25篇
    • 转载:121篇
    • 译文:19篇
    • 评论:11条
    最新评论