1. 下载并解压缩Gitblit GO 1.8.0(Windows)或1.8.0(Linux / OSX)。
    最好消除路径名中的空格。
  2. 服务器本身是通过简单的文本文件配置的。在您喜欢的文本编辑器中
    打开data/gitblit.properties,并确保查看和设置:

    • server.httpPortserver.httpsPort
    • server.storePassword(不要输入字符)强烈建议使用
      https,因为密码是使用基本身份验证从浏览器/ git客户端不安全地传输的!
    • git.packedGitLimit(设置大于最大存储库的大小)
  3. 执行命令行authority.cmdjava -cp gitblit.jar com.gitblit.authority.Launcher --baseFolder data从命令行执行
    注意:权限是Swing GUI应用程序。不需要使用此工具,因为Gitblit GO将自动启动并创建SSL证书,但使用此工具可以控制生成的自签名证书中使用的标识元数据。跳过此步骤将导致具有默认元数据的证书。

    1. 填写新证书默认值对话框中的字段
    2. 输入提示时输入server.storePassword中使用的商店密码。这将为localhost生成SSL证书。
    3. 您可能希望为要提供的主机名或IP地址主机名生成SSL证书
      注意:您只能为端口指定一个 SSL证书。
    4. 退出权限应用程序
  4. 执行gitblit.cmdjava -jar gitblit.jar --baseFolder data从命令行执行
  5. 根据您选择的配置,将浏览器打开到http:// localhost:8080或https:// localhost:8443。
  6. 输入默认管理员凭据:admin / admin并单击“ 登录”按钮
    注意:确保更改管理员用户名和/或密码!

GO数据位置

默认情况下,Gitblit GO会将所有数据(用户,设置,存储库等)存储在dataGO安装的子文件夹中。您可以通过设置--baseFolder参数在命令行上为数据指定外部位置。如果重新定位数据文件夹,则必须向GO和证书颁发机构提供--baseFolder参数。

如果要将Gitblit部署到* nix平台,可以考虑将数据文件夹移出GO安装文件夹,然后创建一个名为“data”的符号链接,指向移动的文件夹。

通过GITBLIT_HOME指定baseFolder

您可以指定GITBLIT_HOME为环境变量或-DGITBLIT_HOMEJVM系统属性。

包括其他属性

从1.7.0开始

Gitblit支持从多个属性文件加载它的设置。您可以使用include=filename密钥来实现此目的。此设置支持使用逗号作为分隔符加载多个文件。它们按定义的顺序处理,它们可以嵌套(即包含的属性可能包括属性等)。

创建自己的自签名SSL证书

Gitblit GO(和Gitblit证书颁发机构)自动生成证书颁发机构(CA)证书和由此CA证书签署的ssl证书,该证书绑定到localhost

远程Eclipse / EGit / JGit客户端(<3.0)将无法使用此证书进行通信,因为无论http.sslVerify = false客户端设置如何,JGit始终都会验证证书的主机名。

EGit失败消息类似于:

Cannot get remote repository refs.
Reason: https:/myserver.com/git/myrepo.git: cannot open git-upload-pack

如果要通过https将存储库提供给另一台计算机,则需要为要提供的主机名或IP地址生成新证书。

注意: Gitblit Authority是一个GUI工具,需要在无头UNIX机器上进行X11转发。

  1. authority.cmd 要么 java -jar authority.jar --baseFolder data
  2. 单击新的ssl证书按钮(窗口左上角工具栏中的红色花环)
  3. 输入主机名或IP地址
  4. 确保选中此证书的https复选框
  5. 在密钥库密码提示中,输入server.storePassword密码

如果您决定在启动Gitblit或Gitblit证书颁发机构更改server.storePassword(推荐)的值,则必须删除以下文件,然后重新启动Gitblit证书颁发机构应用程序:

  1. 数据/ serverKeyStore.jks
  2. 数据/ serverTrustStore.jks
  3. 数据/证书/ caKeyStore.jks
  4. 数据/证书/ ca.crt
  5. data / certs / caRevocationList.crl(可选)

客户端SSL证书

从1.2.0开始

Gitblit支持X509证书身份验证。此身份验证方法依赖于您的servlet容器来验证/验证/信任您的客户端证书,并且可以由您的浏览器和您的git客户端使用。

所有X509证书都有一个专有名称(DN),它是几个字段的签名,如:

C=US,O=Gitblit,OU=Gitblit,CN=james

Gitblit必须能够将证书的DN映射到现有帐户用户名。默认映射是从DN中提取公用名(CN)值,并将其用作帐户名。如果CN是有效帐户,则对用户进行身份验证。运行Gitblit的servlet容器验证,验证和信任传递给Gitblit的证书。如果需要指定备用DN映射,可以使用git.certificateUsernameOIDs设置,但必须将此映射与用户帐户名匹配。

如何让servlet容器信任客户端证书?

在WAR变体中,您必须手动将servlet容器设置为:

  1. 想要/需要客户证书
  2. 信任用于签署客户端证书的CA证书
  3. 生成由CA证书签名的客户端证书

或者,Gitblit GO旨在促进客户端证书身份验证的使用。Gitblit GO附带了一个工具,可以简化客户证书的创建和管理,Gitblit证书颁发机构。

使用Gitblit证书颁发机构创建SSL证书

生成新的客户端证书时,会创建一个zip文件包,其中包含用于浏览器的P12密钥库和用于Git的PEM密钥库。这两个都受密码保护。此外,还生成了一个个性化的README文件,其中包含流行浏览器和Git的设置说明。README是data\certs\instructions.tmpl根据您的需求生成的,可以进行修改。

  1. authority.cmd 要么 java -jar authority.jar --baseFolder data
  2. 选择要为其生成证书的用户
  3. 单击新证书按钮,然后输入证书的到期日期。您还必须输入生成的密钥库的密码。这个密码是一样的用户的登录密码。此密码用于保护您将为所选用户生成的私钥和公共证书。您还必须为用户输入密码提示。
  4. 如果您的邮件服务器设置已正确配置,您将有一个发送电子邮件复选框,您可以使用该复选框立即将生成的证书包发送给用户。

证书检查和高级故障排除

即使使用简化的Gitblit证书颁发机构工具,X509证书也会令人困惑和棘手。如果您发现需要更多工具来了解密钥库,证书和证书吊销列表(CRL),我强烈推荐可以作为Java Web Start应用程序方便地启动的Portecle。

作为Windows服务运行

Gitblit使用Apache Commons Daemon来安装和配置其Windows服务。

  1. 查看内容installService.cmd,你可能需要更改默认密钥库的密码
  2. 根据安装的Java虚拟机设置ARCH值。
  3. 命令行参数中添加下面列举的任何必要的--StartParams
  4. 执行脚本。

服务安装后,您可以使用该gitblitw.exe实用程序来控制和修改服务的运行时设置。此处记录
gitblitw.exe(prunmgr.exe)的其他服务定义选项和运行时功能。

注意:
如果从gitblit更改服务名称,则还必须更改名称gitblitw.exe以匹配新服务名称,否则服务和实用程序之间的连接将丢失,至少双击执行。

VM注意事项

默认情况下,服务安装脚本将Windows服务配置为使用默认JVM。此设置通常默认为客户端VM。
如果已安装JDK,则可以考虑使用该gitblitw.exe实用程序手动指定服务器 VM。

  1. 执行 gitblitw.exe
  2. Java选项卡上,取消选中Use default
  3. 手动导航文件系统并使用...按钮指定服务器VM
    Java虚拟机:
    C:\ Program Files \ Java \ jre6 \ bin \ server \ jvm.dll

命令行参数

命令行参数会覆盖gitblit.properties运行时的值。

--baseFolder           The default base folder for all relative file reference settings
--repositoriesFolder   Git Repositories Folder
--userService          Authentication and Authorization Service (filename or fully qualified classname)
--httpPort             HTTP port for to serve. (port <= 0 will disable this connector)
--httpsPort            HTTPS port to serve.  (port <= 0 will disable this connector)
--sshPort              SSH Daemon port to serve.  (port <= 0 will disable this daemon)
--gitPort              Git Daemon port to serve.  (port <= 0 will disable this daemon)
--alias                Alias in keystore of SSL cert to use for https serving
--storePassword        Password for SSL (https) keystore.
--shutdownPort         Port for Shutdown Monitor to listen on. (port <= 0 will disable this monitor)
--dailyLogFile         Redirect logging to a rolling, daily log file instead of stdout
--tempFolder           Folder for server to extract built-in webapp

java -jar gitblit.jar --userService c:/myrealm.config --storePassword something --baseFolder c:/data

覆盖Gitblit GO的Log4j配置

您可以使用命令行参数将Gitblit GO的默认Log4j配置覆盖到JVM。

java -Dlog4j.configuration=file:///home/james/log4j.properties -jar gitblit.jar <optional_gitblit_args>

您不能使用覆盖默认的log4j配置指定--dailyLogFile参数。作为参考,这里是Gitblit的默认Log4j配置。它包括一些默认禁用的文件追加器。

Gitblit GO安装和设置相关推荐

  1. 远程桌面linux服务器配置,linux平台下远程桌面服务器的安装和设置

    一.xdm 方式 前提:安装linux时一定要选上xwindow,这是最基本的前提,不安装它,是绝对没有图形界面的. ***************************************** ...

  2. Flask-SQLAlchemy安装及设置

    Flask-SQLAlchemy安装及设置 SQLALchemy 实际上是对数据库的抽象,让开发者不用直接和 SQL 语句打交道,而是通过 Python 对象来操作数据库,在舍弃一些性能开销的同时,换 ...

  3. openSUSE中文输入的安装和设置

    openSUSE中文输入法的安装和设置: 系统:openSUSE Leap 42.1 桌面环境:KDE 安装完系统之后,最好修改下载源,在add下面勾上Community Repositories.同 ...

  4. [转]免费邮件服务器hMailServer搭配SpamAssassin过滤垃圾邮件:安装和设置

    [转]免费邮件服务器hMailServer搭配SpamAssassin过滤垃圾邮件:安装和设置 (转自http://dagai.net/archives/838) 为了解决垃圾信泛滥的状况,这两天「跨 ...

  5. ArchLinux下LXDE的安装与设置心得

    安装 首先安装基本的桌面环境: $ sudo pacman -S lxde 奇怪的是默认并没有安装面板lxpanel,而且源里也没有,只好从AUR安装之: $ yaourt -S lxpanel-sv ...

  6. Symfony4中文文档: 安装和设置Symfony框架

    安装和设置Symfony框架 要创建新的Symfony应用程序, 首先确保使用的是PHP7.1 或更高版本并且已经安装Componser. 如果未安装, 请首先在系统上全局安装Componser. 如 ...

  7. slicer安装_3D Slicer教程【软件安装及设置】

    3D Slicer 教程[软件安装及设置] [教程 001 ]软件安装及设置前言我最先接触到 3D Slicer 的时候是 2016 年 11 月份,医院购买 STORZ 神经内 镜,因有两个学习的名 ...

  8. PostgreSQL 10.1 手册_部分 III. 服务器管理_第 16 章 从源代码安装_16.5. 安装后设置...

    16.5. 安装后设置 16.5.1. 共享库16.5.2. 环境变量 16.5.1. 共享库 在一些有共享库的系统里,你需要告诉你的系统如何找到新安装的共享库.那些并不是必须做这个工作的系统包括 F ...

  9. 如何在 Linux 最小化安装中设置互联网

    在最小化服务器安装中,设置互联网或网络是非常容易的.在本指南中,我们将解释如何在  .RHEL.Rocky   最小安装中设置互联网或网络. 在最小化服务器安装中,设置互联网或网络是非常容易的.在本指 ...

最新文章

  1. 牛津大学最新《计算代数拓扑》笔记书
  2. 专访盛大创始人陈天桥:未来的杀手级应用必将诞生于脑科学
  3. 静态资源java 配置文件_java web 静态资源访问配置三种方式
  4. DateTimePicker控件在WinXP下的BUG
  5. sony android电视关机,【索尼 KDL-48WM15B 48英寸 LED电视使用体验】通电|待机|关机|加载|设置_摘要频道_什么值得买...
  6. github 部署mysql_GitHub - luckman666/deploy_mysql_cluster: 一键部署mysql集群
  7. More Effective C++精简版(4)
  8. Flink Table和SQL的基本API
  9. oracle离线文档查dbms_Oracle日志文件管理与查看
  10. 深度学习系列(二)【人类语言处理--语音辨识】
  11. 不调用python函数实现直方图均衡化_数字图像处理之直方图均衡化
  12. 怎么制作真人qq秀_真人秀---搏击赛事新风向标的机与忧
  13. 偷窥Play Framework 2.0
  14. python网站下载_python 下载整个网站
  15. VirtualBox AndroidX86 网络设置
  16. 解决小米手机用Android studio安装不了app的问题
  17. 如何轻松地打造一款免开发RGB 三路产品?
  18. rj45 千兆接口定义_网线的RJ45接口的针脚定义
  19. 皮皮安学习Java第八天
  20. 网神综合能力过硬 服务水利系统信息化

热门文章

  1. uniapp小程序—适配ios底部小黑条
  2. cesium实现底图反色滤镜效果(详细教程)
  3. 上班族干什么副业挣钱?目前很好的3类副业,你都做过吗?
  4. Xcode6.1 OS X 10.10 打越狱包和免证书测试方法
  5. 好用的一些小插件小工具
  6. 自建pop邮件服务器,CentOS邮件服务器搭建系列—— POP / IMAP 服务器的构建( Dovec-站长资讯中心...
  7. 成都学编程需要多少钱?
  8. 在vscode的jupyter中使用plotly绘图,图片显示不出来
  9. 《我的第一本时间规划手册》
  10. 架设域控服务器,windows server 2008 R2 enterprise AD域控服务器安装