当前位置: 首页 > news >正文

Harbor内网离线安装使用HTTPS访问

重要提醒:使用的是域名形式访问Harbor。通过https://harbor.top访问网址。
1、首先在自己windows电脑
“此磁盘C->Windows->System32->drivers->etc”
修改hosts文件 添加“ip harbor.top”例如:“172.33.33.33 harbor.top”
2、进入内网服务器 172.33.33.33
修改

vi  /etc/hosts 
172.33.33.33 harbor.top

1、生成证书

harbor文件在/root/harbor/
然后再次文件夹下创建mkdir cert文件夹

cd cert
openssl genrsa -out ca.key 4096openssl req -x509 -new -nodes -sha512 -days 3650  -subj "/C=CN/ST=Shanghai/O=dev/OU=IT/CN=harbor.top"  -key ca.key  -out ca.crtopenssl genrsa -out harbor.key 4096openssl req  -new -sha512  -subj "/C=CN/ST=Shanghai/O=dev/OU=IT/CN=harbor.top"  -key harbor.key  -out harbor.csr 
cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth 
subjectAltName = @alt_names
[alt_names]
DNS.1=harbor.top
EOF
openssl x509 -req -sha512 -days 3650 -extfile v3.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in harbor.csr -out harbor.crt

会生成 ca.crt ca.key ca.srl harbor.crt harbor.csr harbor.key v3.ext
接下来将客户端的证书复制到docker文件夹下

mkdir -p /etc/docker/certs.d/harbor.top/scp harbor.crt 172.33.33.33:/etc/docker/certs.d/harbor.top/

2、配置安装HTTPS证书


cd /root/harbor/
vi harbor.yml

修改harbor.yml文件

hostname: harbor.top
https:port: 443certificate: /root/harbor/harbor.crtprivate_key: /root/harbor/harbor.key

进入harbor文件,重新编译启动harbor

cd /root/harbor/./prepare./install.sh

3、docker

修改docker.service

vim /lib/systemd/system/docker.service

修改ExecStart 内容

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 

4、登录

172.33.33.33
docker login harbor.top
Username: adminPassword: WARNING! Your password will be stored unencrypted in /root/.docker/config.json.Configure a credential helper to remove this warning. Seehttps://docs.docker.com/engine/reference/commandline/login/#credentials-store​Login Succeeded

4、常见问题

1、在https双向验证时出现错误:

x509: cannot validate certificate for 172.33.33.33 because it doesn't contain any IP SANs

这个问题是:
(1)harbor.yml里面配置的hostname 是IP地址。
(2)登录的时候使用的是 docker login 172.33.33.33方式登录
网上参考的解决方式:
https://blog.csdn.net/qq_35078688/article/details/124945817
该方式不好解决。建议按照文章。按照文章方式。

http://www.lryc.cn/news/119994.html

相关文章:

  • Python“牵手”京东工业商城商品详情数据方法介绍
  • 接口测试意义及工作流程
  • QT-如何使用RS232进行读写通讯
  • 05 神经网络语言模型(独热编码+词向量的起源)
  • PyTorch Lightning教程八:用模型预测,部署
  • 桂林小程序https证书
  • html input 设置不允许修改
  • BI技巧丨利用Index计算半累计
  • 第三章:前端UI框架介绍
  • javaScript:文档流写入和元素写入
  • 【BI系统】选型常见问题解答二
  • docker版jxTMS使用指南:使用jxTMS采集数据之一
  • 【js】日期、时间正则匹配
  • 专利研读-SIMD系列-向量化引擎
  • C#--设计模式之单例模式
  • RWEQ风蚀方程模型与ArcGIS数据处理Python代码库添加结合理论研究和科研实践
  • 基于STM32微控制器的物联网(IoT)节点设计与实现
  • 篇二十一:中介者模式:解耦对象之间的交互
  • tomcat的多实例,动静分离(web服务基础结束)
  • LeetCode150道面试经典题--判断子序列(简单)
  • kubeadml 安装 k8s
  • 考研C语言进阶题库——更新16-20题
  • 【变形金刚01】attention和transformer所有信息
  • 面试热题(路径总和II)
  • 测试 tensorflow 1.x 的一个demo 01
  • 达蒙DM数据库使用经验
  • Redis—集群
  • 【C语言】数据在内存中的存储详解
  • PIC单片机配置字的设置
  • JavaWeb-Servlet服务连接器(一)