文档章节

gitlab更新ssl证书

miaojiangmin
 miaojiangmin
发布于 2017/08/22 22:43
字数 709
阅读 432
收藏 0

ssl用的是Let's Encrypt,但是只有三个月的有效期,但是至少是免费的呀。

其实gitlab上的服务器已经是启用了ssl,知识证书过期了。需要更新一下证书

网上我找到了这个命令

./certbot-auto renew --dry-run
用了这个命令也一样
./certbot-auto renew --force-renew

但是执行后的的输出是

WARNING: unable to check for updates.
Requesting root privileges to run certbot...
  /home/ubuntu/.local/share/letsencrypt/bin/letsencrypt renew --dry-run
The standalone specific supported challenges flag is deprecated. Please use the --preferred-challenges flag instead.
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Currently, the renew verb is capable of either renewing all installed certificates that are due to be renewed or renewing a single certificate specified by its name. If you would like to renew specific certificates by their domains, use the certonly command. The renew verb may provide other options for selecting certificates to renew in the future.

这个应该是更新失败了。

百度查了怎么跟新但是还是失败了,后来想想还是卸载重装一下好了。

在这个网站上有详细的教程。 certbot

开始选了nginx和ubuntu16.04的组合,但是失败了 后来我改为None of the above和ubuntu16.04的组合

命令行入下

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install certbot 

$ sudo certbot certonly

因为我配置了ini文件,所以不需要用下面的命令

$ sudo certbot certonly --webroot -w /var/www/example -d example.com -d www.example.com -w /var/www/thing -d thing.is -d m.thing.is

这个是添加在/etc/letsencrypt/cli.ini或者在~/.config/letsencrypt/cli.ini中

agree-tos = true

rsa-key-size = 4096

email = admin@laozuo.com

#authenticator = standalone
standalone-supported-challenges = http-01
preferred-challenges = http

domain =laozuo.org

更新指令

$ sudo certbot renew --dry-run

certbot renew 

执行命令过程中,会出现错误。原因是/boot目录空间不够或者apt-get本身需要跟新 解决方法可以查看我的博客。

如果是正常生产ssl证书

在完成Let's Encrypt证书的生成之后,我们会在"/etc/letsencrypt/live/laozuo.org/"域名目录下有4个文件就是生成的密钥证书文件。
cert.pem  - Apache服务器端证书
chain.pem  - Apache根证书和中继证书
fullchain.pem  - Nginx所需要ssl_certificate文件
privkey.pem - 安全证书KEY文件

从上面的列表中可以看出Nginx启用ssl需要fullchain.pem和privkey.pem

目前安装gitlab是使用自带的nginx来进行反向代理的

####一般在nginx的配置文件中添加ssl配置

server
{
listen 80;
 listen 443 ssl;
#listen [::]:80;
ssl on;
        ssl_certificate /root/ssl.crt;
        ssl_certificate_key /root/ssl.key;
server_name laozuo.org www.laozuo.org;

nginx的安装目录是在

/var/opt/gitlab/nginx/

修改nginx中的配置文件

2、定时任务
脚本有了,还需要在linux中添加一个定期执行脚本的任务,这里用linux自带的cron来处理这部分。
crontab -e
在打开的编辑器中添加如下内容(每个月1号凌晨3点更新)
0    0  3 *  *  sh /mnt/web/lets/ssl_auto_auth.sh >/dev/null 2>&1 &

 #crontab -e 

  00 00 00 */3 * /sbin/certbot renew --renew-hook "sudo gitlab-ctl start" --quiet > /dev/null 2>&1 &

© 著作权归作者所有

共有 人打赏支持
miaojiangmin
粉丝 10
博文 448
码字总数 109689
作品 0
宁波
程序员
私信 提问
gitlab的常规操作-远程发布

             gitlab的常规操作 gitlab是我自己搭建,可以参考gitlab搭建 首先需要配置web端的ssh密钥才能操作远程,配置过程如下: 在linux主机上先做密钥认证 # ssh-keygen 认...

技术小疯子
2018/06/01
0
0
配置多个git远程仓库的ssh-Key切换

目前的git仓库如github都是通过使用SSH与客户端连接,如果只是固定使用单个git仓库的单个用户(first),生成生成密钥对后,将公钥保存至github,每次连接时SSH客户端发送本地私钥(默认~/....

渺小的尘埃
2015/07/31
0
0
【 Linux学习】Linux环境下利用OpenSSL对大文件进行AES加解密

版权声明:本文为【欧阳鹏】原创文章,欢迎转载,转载请注明出处! 【http://blog.csdn.net/ouyang_peng】 https://blog.csdn.net/qq446282412/article/details/83117025 一、背景 之前的几篇...

欧阳鹏
2018/10/17
0
0
最佳实践系列丨Docker EE 供应链安全加固指南(三)

本文首发自“Docker公司”公众号(ID:docker-cn) 编译丨小东 每周一、三、五 与您不见不散! 创建安全的镜像供应链至关重要。每个组织都需要权衡所有可用选项并了解安全风险。可供选择的镜...

docker公司
2018/06/15
0
0
GitLab 6.9.2 发布,Git 代码托管平台

仅仅隔了一天 Gitlab 就发布了 6.9.2 补丁版本,该版本修复了 LDAP 用户过滤以及 omnibus-gitlab SSH 密钥修复。详细介绍请看官方发行说明。 GitLab是一个利用 Ruby on Rails 开发的开源应用...

oschina
2014/05/31
1K
3

没有更多内容

加载失败,请刷新页面

加载更多

Confluence 6 升级中的一些常见问题

升级的时候遇到了问题了吗? 如果你想尝试重新进行升级的话,你需要首先重新恢复老的备份。不要尝试再次对 Confluence 进行升级或者在升级失败后重新启动老的 Confluence。 在升级过程中的一...

honeymoose
今天
2
0
C++随笔(四)Nuget打包

首先把自己编译好的包全部准备到一个文件夹 像这样 接下来新建一个文本文档,后缀名叫.nuspec 填写内容 <?xml version="1.0"?><package xmlns="http://schemas.microsoft.com/packaging/201......

Pulsar-V
今天
2
0
再谈使用开源软件搭建数据分析平台

三年前,我写了这篇博客使用开源软件快速搭建数据分析平台, 当时收到了许多的反馈,有50个点赞和300+的收藏。到现在我还能收到一些关于dataplay2的问题。在过去的三年,开源社区和新技术的发...

naughty
今天
7
0
Python3的日期和时间

python 中处理日期时间数据通常使用datetime和time库 因为这两个库中的一些功能有些重复,所以,首先我们来比较一下这两个库的区别,这可以帮助我们在适当的情况下时候合适的库。 在Python文...

编程老陆
今天
2
0
分布式面试整理

并发和并行 并行是两个任务同时进行,而并发呢,则是一会做一个任务一会又切换做另一个任务。 临界区 临界区用来表示一种公共资源或者说是共享数据,可以被多个线程使用,但是每一次,只能有...

群星纪元
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部