harbor使用免费证书配置https
其实一开始我是使用的自认证的CA证书,但是在后来的使用中发现了几个问题
1. push或pull都需要配置证书才能操作(如果有很多客户端使用的话是很麻烦的事)
2. 手动配置CA会比较复杂
3. 不适合正式环境使用
综合以上问题决定去申请个免费证书,现在有好多云厂商支持免费证书申请,我这里给大家罗列下,我用的是阿里云的免费证书
1. 阿里云
2. 腾讯云
3. 百度云
4. 华为云
其实提供免费证书的厂商还有很多,但我感觉这些就够啦
一、申请阿里云免费证书
准备事项:
1. 一个域名并解析到harbor服务器
2. 一个阿里云账号(支付宝号就可以)
申请证书:
1. 登录到阿里云,搜索框搜索ssl,选择SSL证书
2.点击购买证书,选择个人免费版本,点击立即购买-付款
3. 购买以后来到控制台,开始申请证书
注意:
a. 如果域名是阿里云的可以选择自动DNS验证
b. 如果不是阿里云的域名且自己有配置域名的权限,可以选择手工DNS验证(按照提示配置dns的txt记录即可)
c. 如果既不是阿里的域名也没有配置的权限,那就只能选择文件验证(这个需要按照提示放一个文件到服务器的web根目录)
d. CSR生成方式选择系统生成即可
4. 选择文件验证,点击fileauth.txt下载文件,解压后里面有个fileauth.txt文件,不要打开
我在这里将重点介绍如何在harbor服务器配置文件验证(自己研究了好久)
如何配置文件验证?
1. 获取nginx容器id
docker ps -a |grep portal |awk '{print $1}'
#注意:harbor-portal这个容器才是提供nginx服务器的容器
2. 获取harbor-portal容器的挂载卷信息
docker inspect 容器id |grep -i mounts -A 30
#输出如下
#Source就是映射到服务器的目录,我们将通过这些写目录上传文件到容器里
"Mounts": [{"Type": "volume","Name": "fabb81ac450f70bc135e68b5a2527b8f94cc800662c74326ec5fdd19f26d947e","Source": "/data/docker/volumes/fabb81ac450f70bc135e68b5a2527b8f94cc800662c74326ec5fdd19f26d947e/_data","Destination": "/run","Driver": "local", "Mode": "","RW": true,"Propagation": ""},{"Type": "volume","Name": "1207b57f20aed97cd1b9f3c27a741b324df4102b1aaa06e2457fcfb8a83cffe0","Source": "/data/docker/volumes/1207b57f20aed97cd1b9f3c27a741b324df4102b1aaa06e2457fcfb8a83cffe0/_data","Destination": "/var/cache/nginx","Driver": "local", "Mode": "","RW": true,"Propagation": ""},{"Type": "volume","Name": "16c51319e96c92b695bfdd085b549505925d2b47ffb38811d9aa519ca995a557","Source": "/data/docker/volumes/16c51319e96c92b695bfdd085b549505925d2b47ffb38811d9aa519ca995a557/_data","Destination": "/var/log/nginx","Driver": "local", "Mode": "","RW": true,"Propagation": ""}
3. 上传fileauth.txt文件到harbor-portal容器的/usr/share/nginx/html目录下
#把解压后的fileauth.txt文件上传到服务器的挂载目录下
例如使用/data/docker/volumes/16c51319e96c92b695bfdd085b549505925d2b47ffb38811d9aa519ca995a557/_data目录#注意要使用root用户登录,要不然没操作权限
docker exec -it -u root 容器id bash
#创建所需目录
cd /usr/share/nginx/html/ && mkdir -p .well-known/pki-validation
cp /var/log/nginx/fileauth.txt /usr/share/nginx/html/.well-known/pki-validation/
4. 上传好以后点击验证,提交审核(审核时间大约10分钟左右)
二、配置https访问
1. 下载证书
2. 配置harbor
下载到本地,然后上传到服务器,解压后会有xxxxxx.pem和xxxxxxx.key两个文件
把文件放到/data/cert/目录下(默认证书存放目录,没有此目录的话需要手动创建)
1. 修改harbor.yml文件
vim harbor.yml
#以下是我截取的配置片段# Configuration file of Harbor# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
#hostname: reg.mydomain.com
hostname: harbor.xxxxxxx.comcustomize_crt: false
# http related config
http:# port for http, default is 80. If https enabled, this port will redirect to https portport: 80# https related config
https:# https port for harbor, default is 443port: 443# The path of cert and key files for nginxcertificate: /data/cert/harbor.xxxxxxxx.com.pemprivate_key: /data/cert/harbor.xxxxxxxx.com.key# Uncomment external_url if you want to enable external proxy
certificate: /data/cert/harbor.xxxxxxxx.com.pem
private_key: /data/cert/harbor.xxxxxxxx.com.key
注意:pem格式不需要转为crt格式,要不然nginx会起不来
2. 启动harbor
bash install.sh
等容器启动后ss -ntl查看443端口是否打开,如果打开的话到浏览器访问下
如图,即配置完成
3. 到此结束
如果有什么不清楚,欢迎留言
harbor使用免费证书配置https相关推荐
- https免费证书配置
https免费证书配置 背景 1.http 和 https 是什么? 简单来说,http 是一个传输网页内容的协议,比如你看到的 http 开头的网站 http://www.163.com,其网页上的 ...
- 最新阿里云服务器免费SSL证书配置HTTPS的两种方法(图文教程二)
在大家学习如何利用免费SSL证书配置网站HTTPS之前,我们先要搞清楚为什么要开启HTTPS,这个绿色的小锁真的有用吗?所谓的HTTPS其实是(安全套接字层超文本传输协议)是以安全为目标的HTTP通道 ...
- Springboot Https 阿里云免费证书配置
原文地址:Springboot Https 阿里云免费证书配置 博主演示直接部署线上,在演示本博文时已经有以下准备: 线上服务器 外网独立IP 域名 阿里云账号 1.进入阿里云首页,点击"S ...
- Tomcat 申请证书配置https
1 我有腾讯云域名 所以申请的是腾讯云免费证书 网址 https://console.cloud.tencent.com/ssl 申请证书 我使用的随机密码 2 配置Tomcat <?xml v ...
- LINUX服务器最简洁的HTTPS免费证书配置方法
注意:该方法已在多台服务器配置了免费的https证书,无论是更新还是第一次配置都运行成功:由于是免费版,每个证书都只有三个月的有效期,也无法保证安全和稳定性,所以只建议做测试用,客户的项目需要时,请让 ...
- windows 生成免费ssl证书 配置 https
window10 + phpstudy 配置 https 首先简单的理解下https与http 1.从URL HTTP 是 HTTP:// 开头,而 HTTPS 是 HTTPs:// 开头: 2.HT ...
- Let's Encrypt证书生成,certbot-auto 生成ssl通用证书 配置https 自动续期
Let's Encrypt是一个 CA 机构,但这个 CA 机构是免费的!!!签发证书不需要任何费用, 为了实现通配符证书,Let's Encrypt 对 ACME 协议的实现进行了升级,只有 v2 ...
- Nginx通过OpenSSL创建自签名证书配置HTTPS及二级目录
目录 配置Https Nginx配置二级目录 升级示例 部署HTTP 升级为HTTPS 配置Https Nginx通过OpenSSL配置Https及二级虚拟目录 1.创建私钥秘钥和证书 mkdir - ...
- SSL证书配置(https访问接口, 单向认证和双向认证)
拿到SSL证书后, 如何才能解锁更多玩法? 一. SpringBoots项目配置https访问接口(直接配置) SSL协议 配置步骤 1. 获取证书/ 生成证书 2. 放置证书 3. 配置项目 pro ...
最新文章
- 模式的秘密-观察者模式(四)
- excel表格制作计算机一级,计算机一级OFFICE辅导:给Excel表格添加背景音乐
- 初创公司技术困境:弹性部署与详尽测试
- 《Spring Cloud Netflix官方文档》2. 服务发现:Eureka服务器
- .NET/ASP.NET Routing路由(深入解析路由系统架构原理)
- 全选文字的快捷键_高效办公必备Excel快捷键之Ctrl+26个字母!掌握它们,告别加班...
- http网站转换成https网站
- 关于云原生需要了解什么
- 图形化界面工具 SQLyog
- 鸿蒙系统nova3i,华为nova3i无惧大型手游:打造丝般顺滑娱乐体验
- 液晶接口系列——MIPI(三)DSI时序讲解与实际测试
- 网关和路由器有什么区别
- 读书篇:《细说PHP》一、简介
- ubuntu 18.04 安装网易云音乐
- 2016年俄罗斯M2M市场达100亿俄罗斯卢布
- 计算机应用基础补考申请书,院级教改课题申请书-《计算机应用基础》教学.doc...
- 弄明白了清华校训“自强不息 厚德载物”的来龙去脉
- 移动支付服务Dwolla宣布10美元以下交易不收费
- Docker学习--Docker镜像的管理操作
- 根号6用计算机怎么算,根号6等于多少怎么算