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

harbor和docker配置https访问

如果配置了科学上网代理,一定要做免代理的配置,不然https访问会失败。

免代理配置

Docker免代理配置

[root@node1 harbor]#cat /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://10.0.0.1:7897"
Environment="HTTPS_PROXY=http://10.0.0.1:7897"
Environment="NO_PROXY=localhost,127.0.0.1,10.0.0.101,qazwsx.wsxedc.com"

重启docker

systemctl daemon-reload
systemctl restart docker

windows科学上网免代理配置

在这里插入图片描述

生成自签证书

#!/bin/bash

openssl genrsa -out ca.key 4096
openssl req -x509 -new -nodes -sha512 -days 3650 \
 -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=RootCA" \
 -key ca.key \
 -out ca.crt
openssl genrsa -out qazwsx.wsxedc.com.key 4096
openssl req -sha512 -new \
    -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=qazwsx.wsxedc.com" \
    -key qazwsx.wsxedc.com.key \
    -out qazwsx.wsxedc.com.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=qazwsx.wsxedc.com
EOF
openssl x509 -req -sha512 -days 3650 \
    -extfile v3.ext \
    -CA ca.crt -CAkey ca.key -CAcreateserial \
    -in qazwsx.wsxedc.com.csr \
    -out qazwsx.wsxedc.com.crt

直接运行上述脚本,ca证书和服务器证书都会生成在当前目录下

Harbor

修改Harbor配置

将harbor的证书配置指向上面刚生成的服务器端证书。

harbor关键配置如下:

# 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: qazwsx.wsxedc.com

# http related config
http:
  # port for http, default is 80. If https enabled, this port will redirect to https port
  port: 80

# https related config
https:
  # https port for harbor, default is 443
  port: 443
  # The path of cert and key files for nginx
  certificate: /root/certificate/qazwsx.wsxedc.com.crt
  private_key: /root/certificate/qazwsx.wsxedc.com.key
  # enable strong ssl ciphers (default: false)
  # strong_ssl_ciphers: false

重启harbor

./prepare
docker compose down -v
docker compose up -d

Docker

配置CA证书

创建目录,目录名字有特定要求,必须以域名命令,如果不是443端口还需要加上端口号,默认是443端口,所以一般不需要加。

/etc/docker/certs.d/
    └── yourdomain.com:port
       ├── yourdomain.com.cert  <-- 客户端证书,用于双向认证中的客户端认证
       ├── yourdomain.com.key   <-- 客户端私钥,用于双向认证中的客户端认证
       └── ca.crt               <-- CA证书

这里使用的是单项认证,客户端的认证其实已经通过用户名,密码的方式认证了,配置案例如下:

[root@node1 harbor]#ls /etc/docker/certs.d/qazwsx.wsxedc.com/
ca.crt

docker默认会自动加载上述路径中的CA证书。

重启docker

systemctl daemon-reload
systemctl restart docker

http://www.kler.cn/a/408306.html

相关文章:

  • 微信小程序全局配置:导航栏、下拉刷新与上拉触底设置教程
  • 【终端美化】Ubuntu 下 Zsh 与 Oh-My-Zsh 美化与插件配置指南
  • Python 版本的 2024详细代码
  • 51单片机基础 06 串口通信与串口中断
  • 速盾:CDN服务器和双线服务器哪个更好?
  • OpenCV双目立体视觉重建
  • Git | 通过Gihub+git组合来学习理解团队项目合作中分支的创建、合并、删除操作
  • 【C语言】指针1
  • 嵌入式开发中Java可以替代Qt吗?
  • LeetCode 1975. Maximum Matrix Sum
  • [Atcoder Beginner Contest 381 D]1122 Substring 题解
  • GWO-SVMD分解 | Matlab实现GWO-SVMD灰狼算法优化逐次变分模态分解
  • Linux应用编程(C语言编译过程)
  • vue2面试题10|[2024-11-24]
  • .NET新知识点笔记
  • 【STM32】GPIO(超详细)
  • 内存分配与回收策略
  • 设计模式——模板模式
  • (二)Sping Boot学习——Sping Boot注意事项
  • 【踩坑日记】【教程】如何在ubuntu服务器上配置公钥登录以及bug解决
  • 分布式数据库中间件可以用在哪些场景呢
  • 【Y20030006】基于php+mysql的课程学习网站的设计与实现(附源码 配置 文档)
  • w055基于web的服装生产管理的设计与实现
  • 【设计模式】如何用C++实现适配器模式
  • Odoo :免费且开源的农牧行业ERP管理系统
  • 什么是 C++ 中的类型别名和 using 声明?如何使用类型别名和 using 声明?