在CentOS上为GitLab配置SSL证书,您可以选择使用Let’s Encrypt免费证书颁发机构或购买一个SSL证书。以下是使用Certbot(Let’s Encrypt客户端)为您的GitLab站点配置SSL证书的步骤:
安装Certbot和Nginx: 如果您还没有安装Certbot和Nginx,请先安装它们。运行以下命令来安装这两个软件包:
sudo yum install epel-release
sudo yum install certbot python2-certbot-nginx
获取SSL证书:
运行以下命令以获取SSL证书。请确保将yourdomain.com替换为您的实际域名。
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
Certbot将自动创建一个新的Nginx配置文件,并将您的域名添加到该文件中。它还会启动Nginx服务以应用更改。
配置GitLab使用SSL:
打开GitLab配置文件/etc/gitlab/gitlab.rb,找到以下行:
external_url 'http://yourdomain.com'
将其更改为:
external_url 'https://yourdomain.com'
保存并关闭文件。
重新配置GitLab: 运行以下命令以应用更改:
sudo gitlab-ctl reconfigure
重启Nginx服务: 为了确保所有更改都已生效,请重启Nginx服务:
sudo systemctl restart nginx
现在,您的GitLab站点应该已经通过HTTPS提供服务。请注意,Certbot为Let’s Encrypt证书设置了90天的有效期。为了确保证书始终有效,您需要设置一个cron作业来自动更新证书。Certbot在安装过程中会创建一个名为/etc/cron.d/certbot的cron作业,用于自动更新证书。