其实一开始我是使用的自认证的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相关推荐

  1. https免费证书配置

    https免费证书配置 背景 1.http 和 https 是什么? 简单来说,http 是一个传输网页内容的协议,比如你看到的 http 开头的网站 http://www.163.com,其网页上的 ...

  2. 最新阿里云服务器免费SSL证书配置HTTPS的两种方法(图文教程二)

    在大家学习如何利用免费SSL证书配置网站HTTPS之前,我们先要搞清楚为什么要开启HTTPS,这个绿色的小锁真的有用吗?所谓的HTTPS其实是(安全套接字层超文本传输协议)是以安全为目标的HTTP通道 ...

  3. Springboot Https 阿里云免费证书配置

    原文地址:Springboot Https 阿里云免费证书配置 博主演示直接部署线上,在演示本博文时已经有以下准备: 线上服务器 外网独立IP 域名 阿里云账号 1.进入阿里云首页,点击"S ...

  4. Tomcat 申请证书配置https

    1 我有腾讯云域名 所以申请的是腾讯云免费证书 网址 https://console.cloud.tencent.com/ssl 申请证书 我使用的随机密码 2 配置Tomcat <?xml v ...

  5. LINUX服务器最简洁的HTTPS免费证书配置方法

    注意:该方法已在多台服务器配置了免费的https证书,无论是更新还是第一次配置都运行成功:由于是免费版,每个证书都只有三个月的有效期,也无法保证安全和稳定性,所以只建议做测试用,客户的项目需要时,请让 ...

  6. windows 生成免费ssl证书 配置 https

    window10 + phpstudy 配置 https 首先简单的理解下https与http 1.从URL HTTP 是 HTTP:// 开头,而 HTTPS 是 HTTPs:// 开头: 2.HT ...

  7. Let's Encrypt证书生成,certbot-auto 生成ssl通用证书 配置https 自动续期

    Let's Encrypt是一个 CA 机构,但这个 CA 机构是免费的!!!签发证书不需要任何费用, 为了实现通配符证书,Let's Encrypt 对 ACME 协议的实现进行了升级,只有 v2 ...

  8. Nginx通过OpenSSL创建自签名证书配置HTTPS及二级目录

    目录 配置Https Nginx配置二级目录 升级示例 部署HTTP 升级为HTTPS 配置Https Nginx通过OpenSSL配置Https及二级虚拟目录 1.创建私钥秘钥和证书 mkdir - ...

  9. SSL证书配置(https访问接口, 单向认证和双向认证)

    拿到SSL证书后, 如何才能解锁更多玩法? 一. SpringBoots项目配置https访问接口(直接配置) SSL协议 配置步骤 1. 获取证书/ 生成证书 2. 放置证书 3. 配置项目 pro ...

最新文章

  1. 模式的秘密-观察者模式(四)
  2. excel表格制作计算机一级,计算机一级OFFICE辅导:给Excel表格添加背景音乐
  3. 初创公司技术困境:弹性部署与详尽测试
  4. 《Spring Cloud Netflix官方文档》2. 服务发现:Eureka服务器
  5. .NET/ASP.NET Routing路由(深入解析路由系统架构原理)
  6. 全选文字的快捷键_高效办公必备Excel快捷键之Ctrl+26个字母!掌握它们,告别加班...
  7. http网站转换成https网站
  8. 关于云原生需要了解什么
  9. 图形化界面工具 SQLyog
  10. 鸿蒙系统nova3i,华为nova3i无惧大型手游:打造丝般顺滑娱乐体验
  11. 液晶接口系列——MIPI(三)DSI时序讲解与实际测试
  12. 网关和路由器有什么区别
  13. 读书篇:《细说PHP》一、简介
  14. ubuntu 18.04 安装网易云音乐
  15. 2016年俄罗斯M2M市场达100亿俄罗斯卢布
  16. 计算机应用基础补考申请书,院级教改课题申请书-《计算机应用基础》教学.doc...
  17. 弄明白了清华校训“自强不息 厚德载物”的来龙去脉
  18. 移动支付服务Dwolla宣布10美元以下交易不收费
  19. Docker学习--Docker镜像的管理操作
  20. 根号6用计算机怎么算,根号6等于多少怎么算

热门文章

  1. 奇偶校验位使用原理简单理解
  2. Java并发工具学习(五)——CAS和final关键字
  3. python数据分析、数据挖掘,数据源从哪儿找?
  4. Qt——QLineEdit使用总结
  5. 史上最全,在vue中使用zTree实现树型结构
  6. PTCRB认证中WiFi OTA测试简介及常见问题解析
  7. 那些过目不忘的 H5 页面
  8. uniapp中引入vantweapp
  9. “金“ “⾦“ 这两个竟然不是同一个字!!!!
  10. 自学XJY的Python课程