git的ssh连接配置

1 篇文章 0 订阅
1 篇文章 0 订阅

虽然网上不少讲ssh-keygen配置的,但是感觉比较少讲到了后面的要修改权限的问题。不知道是不是因为这个太基础了!所以在这里写个比较详细的以便自己参与,不用再到处找资料。

环境

客户端(下面称机器W): windows7,Git 2.5.0

服务端(下面称机器L): centos6.5, git2.7.0(CentOS安装最新版的git)

在客户机W上创建生成密钥文件

安装好客户端git后,点击git-bash.exe进入命令行(如下图)
这里写图片描述

  • 如果没有.ssh目录就创建一个
$ cd ~/
$ mkdir .ssh

效果如下图
这里写图片描述

  • 生成密钥文件如:私钥文件id_rsa和公钥文件 id_rsa.pub
    如果这里要免密码登录,就一直回车就行了
$ ssh-keygen -t rsa

或者

$ ssh-keygen -t rsa -C "your@**.com"

这里写图片描述

把公钥增加到服务机信任列表

  1. 传输客户机W的公钥文件 id_rsa.pub 到服务机L(如目录/tmp/sshkey/)下
  2. 导入公钥到信任文件 authorized_keys
  3. 修改信任文件列表 authorized_keys(要保证.ssh和authorized_keys都只有用户自己有写权限。否则验证无效。(今天就是遇到这个问题,找了好久问题所在)
  4. 如果是直播复制id_rsa.pub里的内容,通过vi粘贴进authorized_keys文件的话,有时会出问题~。
 [git@vm-git .ssh]$ cat /tmp/sshkey/id_dsa.pub >> ~/.ssh/authorized_keys
 [git@vm-git .ssh]$ chmod 600 authorized_keys

这里写图片描述

验证登录

需要提醒的是,此处的登录验证是在git用户没有禁止脚本登录的情况下的验证。
即在/etc/passwd里没有下面的…git-shell,而是/bin/bash

git:x:501:501::/home/git:/usr/local/bin/git-shell

验证

$ ssh git@192.168.0.24

这里写图片描述

注意:在不修改信任文件列表 authorized_keys情况下登录会出现下面的情况

这里写图片描述


原文传送阵

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值