基于Bitnami gitlab OVA包的gitlab 环境搭建

前言

最近在折腾gitlab,本篇记录搭建的过程方便以后查找

环境

Windows server + VMware

安装

为方便本次我们直接采用Bitnami的VOA安装包(VOA格式可同时兼容VirtualBox和VMware),可以直接在虚拟机导入即可。安装包位于这里

打开VMware Workstation, File -> Open, 选择刚刚下载好的VOA文件,根据界面内容进行虚拟机配置。

安装完后,即可进入虚拟机,显示如下:

  • 显示gitlab的url地址,默认web登陆用户'root'及登陆密码
  • 同时显示默认的虚拟机用户和密码: bitnami

静态IP配置

默认虚拟机采用DHCP配置,我们可以自行配置成静态IP。官方文档

  • 使用以下命令获取网络接口名称。通常,接口名称的格式为enXXXX
    sudo ifconfig

    可以看到网络接口名为ens32

  • 通过复制现有配置文件并将其放在/ etc / systemd / network目录中,为网络接口创建配置文件。在此示例中,假设新配置文件名为25-wired.network

    cd /etc/systemd/network
    sudo cp 99-dhcp.network 25-wired.network
    
  • 编辑新配置文件并将其更新为下面的配置。将INTERFACE-NAME占位符替换为网络接口的实际名称(这里应为ens32),并使用反映本地网络的值更新示例IP地址,网关和DNS服务器

   [Match]
   Name=INTERFACE-NAME

   [Network]
   Address=10.1.10.9/24
   Gateway=10.1.10.1
   DNS=10.1.10.1
  • 保存更改并重新启动虚拟机以使更改生效。

启用SSH连接

默认情况下,在Bitnami虚拟机中SSH服务是禁用的。要启用SSH服务器,请在服务器控制台上执行以下命令:官方文档

sudo rm -f /etc/ssh/sshd_not_to_be_run
sudo systemctl enable ssh
sudo systemctl start ssh

启用后我们就可以通过SSH客户端连接到虚拟机。登陆用户名和密码可以从虚拟机启动时显示界面获取(默认:bitnami)

SSL配置

默认情况下,Bitnami已经帮我们将gitlab配置成了https访问方式,同时也提供了一个测试证书。通过命令编辑查看gitlab配置:
sudo vim /etc/gitlab/gitlab.rb

可以看到bitnami提供给我们的默认证书放在etc/gitlab/ssl/下。

下面我们来生成我们自己的证书(自签证书),同时让google chrome浏览器来识别。参考文档

因本次我们需要生成本地IP的自签证书,ssl.conf配置有点小区别,主要是[alt_names]节点下的DNS.*要更换成IP.*. 完整ssl.conf

[req]
prompt = no
default_md = sha256
default_bits = 2048
distinguished_name = dn
x509_extensions = v3_req

[dn]
C = TW
ST = Taiwan
L = Taipei
O = Duotify Inc.
OU = IT Department
emailAddress = admin@example.com
CN = localhost

[v3_req]
subjectAltName = @alt_names

[alt_names]
IP.1 = 172.30.3.88

使用openssl命令生成

openssl req -x509 -new -nodes -sha256 -utf8 -days 3650 -newkey rsa:2048 -keyout server.key -out server.crt -config ssl.conf

使用WinScp上传

如果你不在bitnami虚拟机里生成证书,就需要将生成的证书(server.key和server.crt)上传到bitnami虚拟机里。

我们使用WinScp sftp协议来上传,由于默认的bitnami登陆用户没有权限来操作etc/gitlab/ssl/目录。必须对WinScp做特别设置,如下:

在新建连接对话框,点击Advance按钮,切换到sftp设置:

切换到shell设置:

完成以上步骤后就可以连上bitnami虚拟机。上传完证书后,最好重启一下虚拟机。

让google chrome浏览器识别证书

默认情况下google chrome并不会识别我们的自签证书,必须将证书导入到我们系统的受信任的根证书颁发机构

安装方法:

  • 双击我们刚才生成的server.crt文件,在对话框中选择 安装证书...

  • 按照向导提示将证书安装到受信任的根证书颁发机构下。

  • 打开chrome浏览器查看:

posted on 2019-07-24 08:42  Thinking110  阅读(1562)  评论(1编辑  收藏  举报

导航