美文网首页eiYo程序员
CentoS 7 安装并配置 Git Server

CentoS 7 安装并配置 Git Server

作者: 穿越时空的鱼 | 来源:发表于2017-08-24 10:46 被阅读343次

    介绍

    本文将介绍 CentOS 7 上的 Git Server 安装与设置。本文使用的 CentOS 7 安装包为 CentOS-7-x86_64-Minimal-1611.iso,安装包大小为680M。Kernel 版本为 3.10.0-514.e17.x86_64。

    安装 Open SSH Server

    在安装 Git Server 前,首先安装 Open SSH Server 确保 CentOS 7 可以被远程访问。使用 yum 进行安装,使用如下指令确认 Open SSH Server 的安装状态,并安装 Open SSH Server。

    <!-- 查看 Open SSH Server 安装状态 -->
    # yum list installed | grep openssh-server
    <!-- 安装 Open SSH Server -->
    # yum install openssh-server
    

    安装完成后可检测到如下安装状态信息。

    图片01

    开放远程访问

    需要修改 CentOS 配置文件以开放远程访问。使用如下指令打开配置文件并进入编辑状态。

    <!-- 打开配置文件 -->
    # vi /etc/ssh/sshd_config
    <!-- 在 Vim 模式下进入文件编辑模式 -->
    # i
    

    将文件中的选项行修改为如下形式。

    原始值 修改后值
    #Port 22 Port 22
    #ListenAddress 0.0.0.0 ListenAddress 0.0.0.0
    #ListenAddress :: ListenAddress ::
    #PermitRootLogin yes PermitRootLogin yes
    #PasswordAuthentication yes PasswordAuthentication yes

    保存文件并退出。

    <!-- 退出文本编辑模式 -->
    # [esc]
    <!-- 保存文件并退出 Vim -->
    # :wq
    

    启动 SSH 服务

    使用如下指令停止并开启 SSH 服务。

    <!-- 停止 SSH 服务 -->
    # sudo service sshd stop
    <!-- 启动 SSH 服务 -->
    # sudo service sshd start
    <!-- 重启 SSH 服务 -->
    # sudo service sshd restart
    

    确认 SSH 服务正在运行。

    <!-- 查看 SSH 服务进程 -->
    # ps -e | grep sshd
    

    进程信息存在则表示 SSH 服务运行成功。

    图片02

    安装 Git Server

    使用 yum 安装 git,直接使用如下指令。

    <!-- 安装 Git -->
    # yum install git
    

    安装完成后,得到如下信息。

    图片01

    建立 Git 账户

    创建一个单独的 Git 账户用以进行 Git 操作,使用如下命令创建 Git 账户

    <!-- 建立账户 -->
    # adduser git
    <!-- 设置账户密码 -->
    # passwd git
    

    该账户不应被用于远程登陆,使用如下指令修改配置文件的对应项。

    <!-- 打开配置文件 -->
    # vi /etc/passwd
    
    原始值 修改后值
    git:x:1000:1000::/home/git:/bin/bash git:x:1000:1000::/home/git:/usr/bin/git-shell

    开启 SSH RSA 验证

    由于关闭了 Git 账户的远程登陆,因此需要启动 SSH 的 RSA 验证以确保可以使用该种方式连接到 Git Server。修改下列配置文件的选项行为对应值。

    <!-- 打开配置文件 -->
    # vi /etc/ssh/sshd_config
    
    原始值 修改后值
    #RSAAuthentication yes RSAAuthentication yes
    #PubkeyAuthentication yes PubkeyAuthentication yes

    并确保 “AuthorizedKeysFile” 的值为 “.ssh/authorized_keys”。重启 SSH 服务。

    <!-- 重启 SSH 服务 -->
    # sudo service sshd restart
    

    创建 SSH Key

    接下来需要移步客户端(即开发端,不是上文所述的服务端),为该客户端生成一份 SSH Key。本文以 Windwos 10 x64 系统为例(其他系统可类比)。下载并安装 Git Bash,启动 Git Bash
    使用如下指令创建 SSH Key。

    <!-- 创建 SSH Key [your infomation] 通常为邮箱 -->
    # ssh-keygen -t rsa -C "[your infomation]"
    

    根据提示创建完成。对于 Windows 10 x64 系统创建完成的 SSH Key 通常保存在 “C:/Users/[your]/.ssh” 目录下,有两个文件。

    文件名 描述
    id_rsa 私钥文件
    id_rsa.pub 公钥文件

    配置 Git Server

    回到服务端,完成最后的配置。进入到 “/home/git” 目录下,使用如下指令创建一个空仓库, “.ssh” 目录以及 “authorized_keys” 文件。

    <!-- 进入目录 -->
    # cd /home/git
    <!-- 创建 Git 仓库 [name] 为仓库名 -->
    # git init --bare [name].git
    <!-- 创建目录 -->
    # mkdir .ssh
    <!-- 进入目录 -->
    # cd .ssh
    <!-- 创建文件 -->
    # touch authorized_keys
    

    使用下列指令指定文件和目录的所属为 Git 账户。

    <!-- 指定为 Git 账户 -->
    # chown -R git.git [name].git
    # chown -R git.git /home/git/.ssh/
    

    打开客户端中的 “id_rsa.pub” 文件,将该文件中的全部内容拷贝至服务端中的 “authorized_keys” 文件中。对于 Windows 10 x64 系统,可以使用 SSH 客户端远程连接 CentOS 7 服务端进行文件修改,本文使用 MobaXterm。对于其他系统或者其他拷贝方式,可自行决定。下列指令可查看 CentOS 7 的 IP 信息。

    <!-- 查看 IP 信息 -->
    # ip addr
    

    验证 Git Server

    回到客户端,在 Git Bash 中使用如下指令从服务端中拷贝创建的 Git 仓库。

    <!-- 拷贝仓库 [server ip] 为服务端 IP -->
    # git clone git@[server ip]:/home/git/[name].git
    

    根据提示确认是否拷贝成功。

    结束

    本文至此结束,感谢以下文章的作者。

    http://blog.csdn.net/trackle400/article/details/52755571

    https://blog.phpgao.com/build-git-server.html

    相关文章

      网友评论

      本文标题:CentoS 7 安装并配置 Git Server

      本文链接:https://www.haomeiwen.com/subject/thxjdxtx.html