首页 > 其他分享 >修复漏洞-gitlab升级(2)

修复漏洞-gitlab升级(2)

时间:2023-08-14 23:12:02浏览次数:43  
标签:opt 修复 nginx gitlab 漏洞 var 服务器 ctl

修复漏洞-gitlab升级(2)   接上一篇。。。   升级完我就做了个快照,等领导有空试用下,然后我不忘提醒,升级十几个版本需要花费2天时间,而且升级过程中有些报错,不知道会不会影响使用。领导说直接装新版本,免得夜长梦多(一下子推翻我所有的努力)   当时我领导想买一台按量付费的服务器B,然后在这个服务器B上装最新版gitlab,然后把原gitlab服务器上的所有东西一比一拷过去,最后用这台按量付费的服务器覆盖回原机器。   先叫我梳理下原服务器A上有什么东西:除gitlab,还有nginx、jenkins及npm等发布环境,各种软链接,python脚本运行环境。。。等等。当时我装好gitlab后给他试用,他叫我研究怎么把以前提交历史原封不动拷过去(就是各种commit的提交记录),然后他去梳理旧gitlab要迁移的项目,我就去把环境一比一装到新服务器上。   当时我觉得只要把大家伙jenkins拷过去,其他都不是什么大事,然后上周五发现把jenkins用到的目录拷过去,起不来。临下班他问我进度,我如实汇报,最后他灵机一动,给出一个非常省心省力又省钱的方案(果然大家都是水瓶座的~~正确的选择能事半功倍):   克隆这台装有11.4.x 版本的gitlab的服务器C,把里面的gitlab卸载,然后重装最新版本的gitlab,将上面已经迁移好项目的gitlab服务器B的数据拷回到C,最后用C覆盖A服务器。我画个简图

   一开始他给的方案,在B做一个跟A一样的环境,我就是卡在服务器B的部署上,想想jenkins配置要搞 jdk、maven,还有配置上面的各种发布任务,挺烦的。时间就是金钱,他想出第三台服务器C,也算是解放我双手。

  首先说说以url方式,原封不动把提交历史导入(这玩意研究了我一晚上),用ssh导入会报错,要换成http方式。

   用 http 又一直报错:There is not a valid Git repository at this URL.  If your HTTP repository is not publicly accessible, verify your credentials

   首先搞清楚用这个服务器A的内网url的时候,我们要确保B服务器上是能够网络是通的。旧版本 11.4.x 的gitlab 有个ssh暴露端口配置和nginx配置

 gitlab_rails['gitlab_shell_ssh_port'] = xxx
 nginx['listen_port'] = xxx

  我当时傻傻地填这个ssh端口,其实是nginx端口

  其次,原服务器A和目的服务器B都要开启内网流量请求通过的配置。最后就是源 nginx监听端口需要修改为大于 1024 的端口(如果是80、443就不用改)

 

 

  最后讲下C服务器上的具体操作

1、卸载gitlab

gitlab-ctl stop
rpm -e gitlab-ce
ps aux | grep gitlab
kill -9 进程号       --- 第一行的进程号

删除gitlab文件目录(千万不要学网上的:find / -name gitlab|xargs rm -rf,我发现奇慢无比)

rm -rf  /opt/gitlab /var/log/gitlab /var/opt/gitlab /etc/gitlab /run/gitlab

说明:
/opt/gitlab/    # 主目录
/etc/gitlab/    # 放置配置文件
/var/opt/gitlab/   # 各个组件
/var/log/gitlab/    # 放置日志文件
/var/opt/gitlab/git-data/repositories    #数据库的地址  
/var/opt/gitlab/postgresql/data    #gitlab组和项目的地址
/etc/gitlab/gitlab.rb #gitlab配置文件

 gitlab.rb 配置文件就备份下吧~~~

 

2、安装新版本gitlab 

rpm -i gitlab-ce-16.2.3-ce.0.el7.x86_64.rpm
gitlab-ctl reconfigure
gitlab-ctl restart

 

3、在服务器B做gitlab数据备份,然后把备份文件恢复到C服务器

gitlab-rake gitlab:backup:create

默认会在   /var/opt/gitlab/backups/  创建一个 【xxxxx一堆序列码】.tar 的备份文件

 将这个备份文件   .tar  拷贝到 C服务器同等位置,然后进行数据恢复

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-rake gitlab:backup:restore BACKUP=【xxxxx一堆序列码】
gitlab-ctl restart

参考:https://blog.csdn.net/bbj12345678/article/details/128318174

 

 

 

  

标签:opt,修复,nginx,gitlab,漏洞,var,服务器,ctl
From: https://www.cnblogs.com/windysai/p/17630026.html

相关文章

  • CSRF漏洞挖掘
    csrf漏洞出现的原因:网站接口被第三方网站调用时cookie被直接利用了如何确定一个网站是否具有csrf漏洞第三方网站调用敏感接口成功,则具有漏洞。如何操作BP可以对某些接口进行cdrf漏洞检测 可以生成一个html文件->poc,在浏览器中访问就可以确定是否包含CSRFTester也可以生......
  • 修复漏洞-gitlab升级(1)
    修复漏洞-gitlab升级(1)这东西搞了我很久。。。今天终于告一段落了,可喜可贺(现在喉咙痛想生病的样子)上一篇提到我们的gitlab版本存在漏洞:任意文件读取漏洞(CVE-2020-10977),大家有兴趣可以查下这个安全漏洞的重现  (虽然是测试域名被测到,但真实环境就是这个版本)。而领导最......
  • 让 GPT-4 来修复 Golang “数据竞争”问题 - 每天5分钟玩转 GPT 编程系列(6)
    目录1.Golang中的“数据竞争”2.GoPool中的数据竞争问题3.让GPT-4来修复数据竞争问题3.1和GPT-4的第一轮沟通3.2和GPT-4的第二轮沟通3.3提交代码4.总结1.Golang中的“数据竞争”我在上个月发过一篇《跟着GPT-4从0到1学习Golang并发机制(三)》,文中有一节专......
  • 漏洞复现报告:CVE-2020-2551 IIOP反序列化漏洞
    1.漏洞描述: 2020年1月15日,Oracle发布了一系列的安全补丁,其中OracleWebLogicServer产品有高危漏洞,漏洞编号CVE-2020-2551,CVSS评分9.8分,漏洞利用难度低,可基于IIOP协议执行远程代码。Weblogic是一个服务器,可以做web服务器也可以做应用服务器WebLogic是美国Oracle公司出品的......
  • gitlab--集成 jfrog artifactory 制品库
    介绍官网:https://www.jfrogchina.com/artifactory/features/之前我们使用制品库的时候,是使用gitlab里的制品:https://www.cnblogs.com/zouzou-busy/p/16485401.html当制品多的时候,就不太适合了,我们可以使用一些专门用来上传制品库的来保存制品安装artifactory使用docker......
  • Nexpose v6.6.210 for Linux & Windows - 漏洞扫描
    Nexposev6.6.210forLinux&Windows-漏洞扫描Rapid7VulnerabilityManagement,ReleaseAug09,2023请访问原文链接:https://sysin.org/blog/nexpose-6/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org您的本地漏洞扫描程序搜集通过实时覆盖整个网络,随......
  • gitlab-runner配合k8s完成代码自动打包部署上线
    前期搭建了云服务器私有的gitlab和k8s环境,但是都是独立运行的,每次代码更新需要手动去打包好镜像,推送到镜像仓库,然后在deployment里面更新image,这样平时不太有问题,但是会给运维我这边产生很多琐事(反正就是想偷懒,能自动化的为什么要手动,懒惰才是提高生产力的动力!)。在这种情况下我就考......
  • ​​Linux搭建GitLab私有仓库
    @[TOC]转载自远控源码文章:Linux搭建GitLab私有仓库,并内网穿透实现公网访问前言GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。Gitlab是被广泛使用的基于git的开源代码管理平台,基于RubyonRails构建,主要针对软件开发过程中产......
  • Found a misplaced row,分区表修复MYSQL
    在MySQL中,分区表的数据被分隔到不同的表空间中,但仍被视为单个表。在处理大量数据集的某些情况下,分区可能是一种有用的方法。在分区表中删除庞大的数据集可以加快速度,但是如果处理不当,它可能会把数据放在表的不对应的位置中。测试环境:mysql8.0.30建表master[localhost:22031]{msa......
  • Web通用漏洞--RCE
    Web通用漏洞--RCE漏洞简介RCE远程代码/命令执行漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。RCE漏洞也分为代码执行漏洞和命令执行漏洞,所谓代码执行即通过漏洞点注入参数而使用源代码进行相应的操作,所谓的命令执行就是通过漏洞点注入参数......