服务器上安装了Gitlab,老版本有很多bug漏洞,很容易被攻击甚至植入木马,最近一直收到阿里云的信息说是我的服务器在挖矿要被关停....
解决方法其实很简单,就是给Gitlab升级。
正常升级也很简单,就一个命令
# Ubuntu/Debian
sudo apt install gitlab-ee=<version>
# RHEL/CentOS 6 and 7
yum install gitlab-ee-<version>
# RHEL/CentOS 8
dnf install gitlab-ee-<version>
# SUSE
zypper install gitlab-ee=<version>
比如我是centos的社区免费版本,那就可以yum install gitlab-ce-13.x.x
划重点!必须一个版本一个版本升级,不能直接升级新版。
首先看下你当前的版本:
# Ubuntu/Debian
sudo apt-cache madison gitlab-ee
# RHEL/CentOS 6 and 7
yum --showduplicates list gitlab-ee
# RHEL/CentOS 8
dnf --showduplicates list gitlab-ee
# SUSE
zypper search -s gitlab-ee
当前官方推荐的升级路径:
8.11.Z
-> 8.12.0
-> 8.17.7
-> 9.5.10
-> 10.8.7
-> 11.11.8
-> 12.0.12
-> 12.1.17
-> 12.10.14
-> 13.0.14
-> 13.1.11
-> 13.8.8
-> 13.12.15
-> 14.0.12
-> latest 14.Y.Z
如果你是13.0.14,那你就需要依次执行下面的升级命令,升级五次才到最新版本:
yum install gitlab-ce-13.1.11
yum install gitlab-ce-13.8.8
yum install gitlab-ce-13.12.15
yum install gitlab-ce-14.0.12
yum install gitlab-ce-14.6.2
更多版本的升级详情点这个看官方说明文档
升级说明 Upgrade GitLab by using the GitLab package | GitLab
升级路径完整版 Upgrading GitLab | GitLab
重要补充!
请先参考这个文章
Gitlab上手完全手册-CentOS-Nginx - 简书 (jianshu.com)
这是使用了外部Nginx代理的情况,更新之后可能导致Nginx设置失败!直接页面502 Bad gateway错误打不开。(Nginx的502是指它所代理指向的服务返回了错误,不是Nginx的问题,但很可能是Nginx配置的问题)
官方原因是Gitlab 13.5之后gitlab-workhorse(就是Nginx指向的Gitlab服务)地址发生了变化!从/var/opt/gitlab/gitlab-workhorse/socket
改到了/var/opt/gitlab/gitlab-workhorse/sockets/socket
,就是结尾多了一个socket。所以要修改Nginx的配置文件的这段
upstream gitlab-workhorse {
server unix:/var/opt/gitlab/gitlab-workhorse/sockets/socket;
}
然后执行nginx -s reload
就可以了。
网友评论