1、修改配置文件:vim /etc/gitlab/gitlab.rb
external_url 'https://10.10.10.63' #启用https,默认是http
nginx['enable'] = true
nginx['redirect_http_to_https'] = true #http重定向到https
nginx['ssl_certificate'] = "/etc/gitlab/ssl/server.crt" #ssl证书路径
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/server.key" #ssl秘钥路径
2、生成ssl证书和私钥
mkdir /etc/gitlab/ssl
chmod 700 /etc/gitlab/ssl/ -R
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/gitlab/ssl/server.key -out /etc/gitlab/ssl/server.crt
参数说明:
- openssl:这是用于创建和管理OpenSSL证书,密钥和其他文件的基本命令行工具。
- req -x509:这指定我们要使用X.509证书签名请求(CSR)管理。“X.509”是SSL和TLS坚持用于密钥和证书管理的公钥基础结构标准。
- -nodes:这告诉OpenSSL跳过用密码保护我们的证书的选项。当服务器启动时,我们需要Apache能够读取文件,而无需用户干预。密码可以防止这种情况发生,因为每次重新启动后我们都必须输入密码。
- 第365天:此选项设置证书被视为有效的时间长度。我们在这里定了一年。
- -newkey rsa:2048:这指定我们要同时生成一个新的证书和一个新的密钥。我们没有在上一步创建签名证书所需的密钥,所以我们需要与证书一起创建证书。该
rsa:2048
部分告诉它做一个2048位长的RSA密钥。 - -keyout:这一行告诉OpenSSL在哪里放置我们正在创建的私有密钥文件。
- -out:这告诉OpenSSL在哪里放置我们正在创建的证书。
3、重建配置
gitlab-ctl reconfigure