IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> Gitlab 同时开启http和https -> 正文阅读

[网络协议]Gitlab 同时开启http和https

Gitlab 同时开启http和https

公司gitlab和jenkins服务都是部署在云服务器上的,最早的配置gitlab只支持http,出于安全考虑之后改成https。但是问题也随之而来,gitlab默认开启https后会强制链接转发到https。这样内网服务器也就不能再用内网IP访问gitlab(云服务内网流量免费,速度还快)。所以考虑让gitlab开启https的同时保留http。

修改配置开启https

一、 申请ssl证书,阿里云实名用户可以免费申请20张ssl证书。

二、 配置nginx格式ssl证书

  1. 创建证书文件夹
$ mkdir -p /etc/gitlab/ssl
  1. 上传证书,重命名,转换格式
$ openssl x509 -outform der -in gitlab.company.com.pem -out gitlab.company.com.crt

$ ls /etc/gitlab/ssl
gitlab.company.com.crt  gitlab.company.com.key

三、修改gitlab配置文件,路径/etc/gitlab/gitlab.rb

#备份gitlab.rb配置文件,后面要回退
$ cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.http

$ vim /etc/gitlab/gitlab.rb
...
#修改外部链接为域名,这里以gitlab.company.com为例
external_url 'https://gitlab.company.com'
...
#配置证书路径
nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.company.com.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.company.com.key"

四、重新配置gitlab

gitlab-ctl reconfigure

五、 检查https是否正常

备份nginx配置文件

$ cd /var/opt/gitlab/nginx/conf/
$ cp gitlab-http.conf gitlab-https.conf

回退到http的配置

$ cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.https
$ cp /etc/gitlab/gitlab.rb.http /etc/gitlab/gitlab.rb

重新配置gitlab

gitlab-ctl reconfigure

再次开启https

这里注意:只要修改nginx配置,不能执行gitlab的重新配置,不然就只有http了

#修改gitlab-https.conf
$ /var/opt/gitlab/nginx/conf/gitlab-https.conf
...
#注释负载均衡部分
# upstream gitlab-workhorse {
#   server unix:/var/opt/gitlab/gitlab-workhorse/socket;
# }

#修改nginx配置
$ vim /var/opt/gitlab/nginx/conf/nginx.conf
...
#新增一行使gitlab-https.conf生效
include /var/opt/gitlab/nginx/conf/gitlab-https.conf

#重启nginx
gitlab-ctl restart nginx

注意事项

最后一次只要修改nginx配置,重启nginx就可以。如果再次执行gitlab-ctl reconfigure就失败了

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 16:57:20  更:2022-07-17 17:00:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 14:06:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码