快站免费网站建设哪家好,曲阳网站建设在哪,做网站的服务器怎么选,宁夏建设厅网站前言#xff1a; docker的2375端口#xff0c;出于安全性考虑即(Docker Remote API未授权访问漏洞)#xff0c;是不开放的#xff0c;如果想要管理远程docker#xff0c;可以使用TLS机制来进行访问#xff0c;这里以Portainer访问连接为例 文章参考#xff1a;https://b…前言 docker的2375端口出于安全性考虑即(Docker Remote API未授权访问漏洞)是不开放的如果想要管理远程docker可以使用TLS机制来进行访问这里以Portainer访问连接为例 文章参考https://blog.csdn.net/qq_42259469/article/details/128406535 远程docker环境
操作系统centos7.6docker版本24.0.6
建立脚本文件
cd /root
mkdir docker-ca cd docker-ca touch ca.sh
vim ca.sh创建脚本
#!/bin/bashset -e#配置相关配置信息
SERVER192.168.0.102
#密码
PASSWORDtp,123456
#国家
COUNTRYcn
#省
STATEzhejiang
#市
CITYhangzhou
#组织名称
ORGANIZATIONalibaba
#单位名称
ORGANIZATIONAL_UNITalibaba
#邮箱
EMAIL531881823qq.com#创建然后切换到密钥的目录
mkdir ca
cd ca#生成ca私钥(使用aes256加密)
openssl genrsa -aes256 -passout pass:$PASSWORD -out ca-key.pem 2048#生成ca证书填写配置信息
openssl req -new -x509 -passin pass:$PASSWORD -days 3650 -key ca-key.pem -sha256 -out ca.pem -subj /C$COUNTRY/ST$STATE/L$CITY/O$ORGANIZATION/OU$ORGANIZATIONAL_UNIT/CN$SERVER/emailAddress$EMAIL#生成server证书私钥文件
openssl genrsa -out server-key.pem 2048#生成server证书请求文件
openssl req -subj /CN$SERVER -new -key server-key.pem -out server.csr#配置白名单
sh -c echo subjectAltName IP:$SERVER,IP:0.0.0.0 extfile.cnfsh -c echo extendedKeyUsage serverAuth extfile.cnf#使用CA证书及CA密钥以及上面的server证书请求文件进行签发生成server自签证书
openssl x509 -req -days 3650 -in server.csr -CA ca.pem -CAkey ca-key.pem -passin pass:$PASSWORD -CAcreateserial -out server-cert.pem -extfile extfile.cnf#生成client证书RSA私钥文件
openssl genrsa -out key.pem 2048#生成client证书请求文件
openssl req -subj /CNclient -new -key key.pem -out client.csr
sh -c echo extendedKeyUsageclientAuth extfile.cnf#生成client自签证书根据上面的client私钥文件、client证书请求文件生成
openssl x509 -req -days 3650 -in client.csr -CA ca.pem -CAkey ca-key.pem -passin pass:$PASSWORD -CAcreateserial -out cert.pem -extfile extfile.cnf#删除无用文件
rm client.csr server.csr执行ca.sh脚本
sh ca.sh在/root/docker-ca/ca下可以看到生成的文件
修改docker配置并重启服务
vi /usr/lib/systemd/system/docker.service 更改ExecStart行的值使docker守护程序仅接收来自提供CA信任的证书的客户端的链接
ExecStart/usr/bin/dockerd \
--tlsverify --tlscacert/root/docker-ca/ca/ca.pem \
--tlscert/root/docker-ca/ca/server-cert.pem \
--tlskey/root/docker-ca/ca/server-key.pem \
-H tcp://0.0.0.0:2375 -H fd:// --containerd/run/containerd/containerd.sock重载配置并重启
systemctl daemon-reload systemctl restart docker配置portainer连接远程docker
先从服务器上把3个客户端pem文件下载下来 portainer连接远程服务器 注服务器上在防火墙上开放2375端口,不然远程不能访问 firewall-cmd --add-port2375/tcp --permanent
systemctl restart firewalld