agangliu0400 发表于 2018-1-11 23:28:58

Omnibus Gitlab CentOS 7使用Let

  首先安装omnibus gitlab,参照
  https://about.gitlab.com/downloads/
  参照以下两篇文章结合配置:
  https://certbot.eff.org/#centosrhel7-nginx
  https://webnugget.de/setting-up-gitlab-with-free-ssl-certs-from-lets-encrypt-on-ubuntu-14-04/
  1.安装certbot。
  

$ sudo yum install epel-release  
$ sudo yum install certbot
  

  2.配置gitlab:
  

$ vi /etc/gitab/gitlab.rb  

更改以下配置项:  

external_url "http://gityu.com/"  

  
nginx['redirect_http_to_https'] = true
  

  
nginx['ssl_certificate']= "/etc/letsencrypt/live/gityu.com/fullchain.pem"
  

  
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/gityu.com/privkey.pem"
  

nginx['custom_gitlab_server_config']="location ^~ /.well-known {\n alias /var/www/letsencrypt/.well-known;\n}\n"  

  重启gitlab:
  $ gitlab-ctl reconfigure

3.生成证书:  

$ certbot certonly  

  按照步骤配置如下图:
  使用webroot插件,填写域名:gityu.com,
  根路径:/var/www/letsencrypt
http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A31%3A15.png?version=1&modificationDate=1470371598000&api=v2
  

http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A31%3A49.png?version=1&modificationDate=1470371598000&api=v2  

http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A32%3A10.png?version=1&modificationDate=1470371598000&api=v2  

http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A32%3A26.png?version=1&modificationDate=1470371598000&api=v2  

http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A32%3A34.png?version=1&modificationDate=1470371598000&api=v2  

  

http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A32%3A53.png?version=1&modificationDate=1470371598000&api=v2  

最后成功安装,有效期90天。  

  4.生效https://:
  $ vi /etc/gitlab/gitlab.rb
  更改:
  

external_url "https://gityu.com/"  

  

  重启gitlab使生效:
  $ gitlab-ctl reconfigure

  

此时可以访问gityu.com会自动重定向到https://gityu.com,并且证书为绿色:  

http://www.cnblogs.com/download/attachments/2139483/image2016-8-5%2012%3A35%3A19.png?version=1&modificationDate=1470371598000&api=v2
  5.创建crontab job,自动更新证书。
  $ vi /etc/cron.monthly/renew-ssl-certificates

填入以下内容:  

certbot renew --quiet   

  这样每个月更新一次,也可以使用crontab -e来创建crontab job。
  注意,使用此命令之前先使用以下命令验证是否可以成功更新:
  

$ certbot renew --dry-run  

  

  如果命令失败,那么可以使用以下文章中的方法作为备用:
  https://webnugget.de/setting-up-gitlab-with-free-ssl-certs-from-lets-encrypt-on-ubuntu-14-04/
  即使用以下脚本来自动更新:
  

#!/bin/bash  

  
/bin/letsencrypt certonly -c /root/letsencrypt-config/gitlab.ini --renew-by-default
  

  
gitlab-ctl restart
  
页: [1]
查看完整版本: Omnibus Gitlab CentOS 7使用Let