替换GitBlit的证书为域证书
GitBlit(当前版本1.6.2,http://gitblit.org/) 是一个Git版本控制的服务端,使用java编写,功能上足够满足基本的版本控制要求,而且部署很简单方便,比如windows上可以使用Gitblit GO,解压缩后运行gitblit.cmd就可以使用。GitBlit支持HTTPS和SSH读写,Visual studio 2013自带Git客户端的支持,但是不能使用SSH,使用HTTPS时又要求SSL证书必须是可信的,在域环境下可以使用域CA颁发的服务器证书,这就需要使用域证书来替换GitBlit自颁发的证书。
可以直接使用颁发给IIS服务的域证书,首先需要将IIS证书导出,一定要同时导出私钥:
比如这里的服务器名为TFS,保存导出的证书为tfs.pfx。
修改GitBlit配置文件gitblit.properties的server.storePassword,比如这里简单的设置为:
server.storePassword = 123
删除GitBlit目录下这些文件(其实并不是必须的,只是演示如何从头初始化这些文件):
data\serverKeyStore.jks
data\serverTrustStore.jks
data\ssh-dsa-hostkey.pem
data\ssh-rsa-hostkey.pem
data\certs\ca.cer
data\certs\caKeyStore.p12
data\certs\caRevocationList.crl
运行authority.cmd,会提示输入“证书默认设置”,确定后提示输入keystore密码,输入前面的“123”,程序会创建serverKeyStore.jks、serverTrustStore.jks等文件,使用工具栏上的“创建服务器SSL证书”按钮创建证书:
这时输入服务器的主机名称,同时选中“使用此证书提供https支持”,确定完成后关闭Certificate authority。
使用Portecle工具来修改证书Keystore,可以从http://portecle.sourceforge.net下载,使用Portecle打开tfs.pfx,选择密钥对后导出:
导出的文件命名为TFS_CA.p12,接着使用Portecle打开serverKeyStore.jks,导入保存在TFS_CA.p12中的密钥对:
导入时需要输入密钥对的Alias,输入tfs,会提示是否覆盖原有的tfs记录,选择“是”,再次提示输入密钥对记录的密码,同样输入“123”(必须和keystore的密码相同),保存后关闭Portecle。
最后还需要修改gitblit.properties的server.certificateAlias,程序以及设置为TFS,但是测试发现必须为小写:
server.certificateAlias = tfs
注意gitblit.properties文件末尾(authority.cmd添加的)可能有重复的server.certificateAlias设置,一定要删除。
运行gitblit.cmd启动gitblit,启动过程中会自动生成ssh-dsa-hostkey.pem和ssh-rsa-hostkey.pem,默认https端口8443,检查证书成功替换为域证书。
在使用git命令clone通过https访问时仍然可能会报错“Unable to clone Git repository due to self signed certificate”,需要禁止客户端的SSL验证:
git config --global http.sslVerify false
替换GitBlit的证书为域证书的更多相关文章
- Windows Server 2012 R2 域证书服务搭建
网管大叔说要给每个人颁发一个证书,这个证书很耗电 1.在服务器管理器中添加角色和功能 下一步 下一步 勾选Active Directory证书服务 下一步 下一步 勾选证书颁发机构,证书颁发机构Web ...
- #WEB安全基础 : HTTP协议 | 0x16 HTTPS:证书,证书,全是证书
现在想做点什么事都需要证书,要不就会让我们回忆起一个典故:滥竽充数 HTTPS使用了公开密钥加密,如何保证公开密钥就是真正的公开密钥呢?攻击者可能会替换公开密钥,这时候就需要验证,所以它采用了数字证书 ...
- 安装.cer证书并将证书从.cer格式转化为.pem格式
## 安装.cer证书并将证书从.cer格式转化为.pem格式 ### 安装.cer证书到本地 打开*运行*窗口 输入MMC.exe, 单击*确定* 在打开的控制台1的窗口中. 选择*文件*, 选择* ...
- 苹果应用 Windows 申请 普通证书 和Push 证书 Hbuilder 个推(2)
s上一篇 讲述了android 如何打包,这一篇 看一下如何IOS下打包 在苹果上申请证书,及其麻烦,我写下来,有需要的直接拿走即可: 首先 苹果的证书分两种 一种是 development 证书,另 ...
- Openssl生成根证书、服务器证书并签核证书
1.修改Openssl配置文件CA目录: cat /etc/pki/tls/openssl.cnf dir = /etc/pki/CA 2.生成根证书及私钥: #http://www.haiyun.m ...
- iOS 开发 证书总结 开发证书和生产证书的区别
IOS开发 证书总结 开发者证书 ------>> 开发证书是你在真机推送时 用得, 生产证书是app 上架之后 推送给用户用的 首先你必须获得apple开发者证书,上图这个文件就是 ...
- IOS开发证书变成“此证书的签发者无效”解决方法
IOS开发证书全部变成无效,如下图 打包提示错误 解决方法: 1. 下载https://developer.apple.com/certificationauthority/AppleWWDRCA ...
- [转贴]使用CryptoAPI解析X509证书和P12证书
原文在 http://bbs.pediy.com/archive/index.php?t-97663.html,但是觉得这篇文章非常好,我抄下来作我笔记用 一.解析X509证书 1.从磁盘上的证书文件 ...
- 使用jdk生成证书以及把证书导入到jdk中
证书对于实现此单点登录非常之重要,证书是服务器端和客户端安全通信的凭证,本教程只是演示,所有用了JDK自带的证书生成工具keytool.当然在实际项目中你可以到专门的证书认证中心购买证书. 中文官方网 ...
随机推荐
- Caffe学习系列(20):用训练好的caffemodel来进行分类
caffe程序自带有一张小猫图片,存放路径为caffe根目录下的 examples/images/cat.jpg, 如果我们想用一个训练好的caffemodel来对这张图片进行分类,那该怎么办呢? 如 ...
- AIX之ASM存储扩容
ASM存储扩容操作其实很简单,无非就是向DiskGroup(简称DG)里添加物理磁盘,增加DG的存储空间.说来简单,其实操作过程中有很多小细节要注意,否则,带来的后果是灾难性的. ASM扩容操作步骤( ...
- SVEditor 1.3.6 发布
SVEditor 1.3.6 支持代码高亮时没有处理 #ifdefs 语句的问题,支持类.接口.模块.任务和函数的代码折叠,修复了一些 bug. SVEditor 是一个Eclipse的插件,用来编辑 ...
- WCF的一点补充-Restful相关
参考 配置WCF心得 对REST架构 风格下WCF的一点补充 Securing WCF REST Service with Azure AppFabric Access Control Service ...
- Eclipse的常用快捷键、旁门左道、系统错误小贴士
转自:http://usenrong.iteye.com/blog/1113700 eclipse是一个开源产品,目前比较流行和普遍的JAVA IDE(集成开发环境)它使用工程化方式管理.虽然ecli ...
- JS学习笔记12_优化
一.可维护性优化 1.添加注释 注释能够增强代码的可读性以及可维护性,当然,理想情况是满满的注释,但这不太现实.所以我们只需要在一些关键的地方添上注释: 函数和方法:尤其是返回值,因为直接看不出来 大 ...
- [转]解决WebClient或HttpWebRequest首次连接缓慢问题
http://blog.csdn.net/rrrfff/article/details/6170653?reload 设置代理为空: <?xml version="1.0"? ...
- 从快的线上callback hell代码说起
概述 就像谈到闭包必须要说js变量作用域一样,谈到 promise 之前肯定要先说谈异步编程.一直以来, javascript 处理异步方式都是使用 callback 方式,对与写 javascrip ...
- [游戏模版2] Win32最小框架
>_<:Just the minimum Win32 frame don't have any other special function. //{{NO_DEPENDENCIES}} ...
- EF Code First Migration总结
开启Migration 1. 通过 Tools->Nuget Package Manager->Package Manager Console 打开Package Manager Cons ...