在服务器搭建git服务器
服务端操作
安装Git及创建用户组、用户
1 |
yum install git |
禁止用户git登录
修改/etc/passwd文件:
找到这句: git:x:503:503::/home/git:/bin/bash
改为: git:x:503:503::/home/git:/usr/bin/git-shell
git-shell这个命令地址有可能不是/usr/bin/git-shell,最好用which git-shell命令查看一下,确保命令地址正确。
创建证书登录
1 |
mkdir /home/git/.ssh |
启用免密登录
/etc/ssh/sshd_config,启用该文件中以下三项内容:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
然后重启ssh服务:service sshd restart
创建git仓库
1 |
$ cd /srv |
客户端操作
生成密钥ssh-keygen -t rsa -C “youremail@xxx.com“
如果不想以后使用时再输入密码,就一路回车,会生成id_rsa密钥文件和id_rsa.pub公钥文件,存放的地址会默认放在c:/Users/Shem/.ssh目录下。
如果有用户密码:可以使用命令将密钥追加到服务器git用户目录/home/git/.ssh/authorized_keys文件中:ssh root@host ‘mkdir -p /home/git/.ssh && cat >> /home/git/.ssh/authorized_keys’ < ~/.ssh/id_rsa.pub
也可以使用root登录后,将公钥内容直接复制,vim打开/home/git/.ssh/authorized_keys文件粘贴到里面去,一行一个公钥
拉取项目
git clone git@xxx.xxx.xxx.xxx:/srv/gitrepo/project-name.git(默认ssh端口为22)
git clone ssh://git@xxx.xxx.xxx.xxx:22/srv/gitrepo/project-name.git
如果ssh端口不是22,则需要修改此命令
免密访问失效的原因
- 可能是以上操作中的文件或者目录权限不正确,需要检查一遍
- 可能是selinux的开启导致
- 可能是以上操作“禁止用户git登录”导致的,则需要取消这个操作
参考
- Git简单生成公钥和私钥的方法
- 搭建属于你自己的 Git 服务器
- Git服务器搭建之CentOs7-阿里云搭建
- Linux下实现免密登录
- selinux 开启和关闭
- Centos服务器ssh免密登录以及搭建私有git服务器
- SSH原理与运用(一):远程登录
- 搭建git服务器ssh免密码登录问题
在服务器搭建git服务器的更多相关文章
- #阿里云#云服务器搭建git服务器
前言:大家都知道,git是非常方便的版本控制工具,目前网上有很多免费的git仓库可以给我们使用,但是有些时候我们并不放心将我们的项目寄放在别人的服务器上,这个时候就需要自己搭建一个git服务器,十分的 ...
- 搭建Git服务器
在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- centos 搭建git服务器
centos 6搭建git服务器 安装 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm yum ins ...
- 如何在服务器上搭建git服务器
参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770 ...
- 使用Gitosis搭建Git服务器
使用Gitosis搭建Git服务器 作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/build- ...
- CentOS 6.4 搭建git 服务器
CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档ht ...
- Windows平台使用Gitblit搭建Git服务器图文教程
Git服务现在独树一帜,相比与SVN有更多的灵活性,最流行的开源项目托管网站Github上面,如果托管开源项目,那么就是免费使用的,但是闭源的项目就会收取昂贵的费用,如果你不缺米,那么不在本文讨论的范 ...
- 在linux中搭建git服务器
个人觉得, 以下搭建git服务器的过程就像是在linux增加了一个用户, 而这个用户的登录shell是 git-shell, 太刨根问底的东西我也说不清楚, 还是看下面的过程吧. 过程参考了网上的文章 ...
随机推荐
- 大数据攻城狮之进阶技能-使用Git上传自己的项目至GitHub仓库
在开始讲解之前我们默认已经存在仓库和安装Git,没有下载的可以去https://git-scm.com/ Git官方网站下载或者是私聊博主. 下面我们说一说Git的使用,比如说如何生成密钥,连接远程仓 ...
- 关于域名转发proxy_pass
在配置nginx的时候,有一个需求,访问m.XXX.com的时候,需要实际访问www.YYY.com/m,并且域名不能发生变化. 达成这个需求有两种做法: 第一种就是301跳转,使用rewrite来跳 ...
- CentOS 7.3 下部署基于 Node.js的微信小程序商城
本文档为微信小程序商城NideShop项目的安装部署教程,欢迎star NideShop商城api服务:https://github.com/tumobi/nideshop NideShop微信小程序 ...
- UVA_10603 倒水问题 隐式图搜索
这道题目是刘汝佳白书上的例题,没有LRJ在白书上提到的划归为搜索问题,还真是一时难以想到好的解法.即三个瓶子,任意的一个状态都是一个节点,最后就划归为一个搜索问题. 由于题目数据量不大,三个杯子容量都 ...
- retrofit 上传文件 跟参数
@Multipart @POST("postFied") Call<Void> postFied(@PartMap Map<String,String> m ...
- java程序无法连接Rabbitmq
java程序不能连接到rabbitmq,提示有包括501.403.402等错误. 各种调试都没用,后来是尝试新建一个用户,在配置文件中使用新用户连接,最后才使程序成功运行.
- Vue中Js动画 与Velocity.js 多组件多元素 列表过渡
Vue提供我们很多js动画钩子 写在tansition标签内部 入场动画 @before-enter="" 处理函数收到一个参数(e l) el为这个元素 @enter=" ...
- 深入理解JVM - JVM内存模型
各版本的差异 JDK1.6 在JDK1.6 的时候运行时常量池在方法区中 JDK1.7 在JDK1.7 的时候运行时常量池在堆中 JDK1.8 在JDK1.8 的时候,JVM内存模型直接将方法区移到了 ...
- Half of UK 10-year-olds own a smartphone
1. preposition n. 介词 pronoun n. 代词 2. despite /preposition. (1) used to say that something happens ...
- Linux中的错误重定向你真的懂吗
在很多定时任务里.shell里我们往往能看到 "2>&1",却不知道这背后的原理. 举个例子: * 1 * * * test.sh > /dev/null 2& ...