Docker 安全 Docker HTTPS请求过程与配置

这篇具有很好参考价值的文章主要介绍了Docker 安全 Docker HTTPS请求过程与配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Docker 容器安全注意点 

尽量别做的事

尽量不用 --privileged 运行容器(授权容器root用户拥有宿主机的root权限)
尽量不用 --network host 运行容器(使用 host 网络模式共享宿主机的网络命名空间)
尽量不在容器中运行 ssh 服务

尽量要做的事

尽量使用最小化的镜像
尽量以单一进程运行容器
尽量使用最新版本的应用做镜像主进程
尽量使用最新版本的docker
尽量以最低权限运行容器
尽量下载使用官方的镜像或自己构建镜像从私有仓库下载镜像
尽量使用只读的方式挂载数据卷 -v 宿主机目录:容器目录:ro
尽量设置容器重启次数 --restart on-failure:N
尽量以资源限制的方式运行容器  -m   --cpu-quota  --device-write-bps




HTTPS请求过程与证书获取

http      超文本传输协议              tcp/80    明文传输
https    安全的超文本传输协议   tcp/443  密文传输    证书加密

Docker 安全 Docker HTTPS请求过程与配置,docker,安全,https,容器,运维,linux,云计算

HTTPS请求访问过程【重中之重重中之重】

0)服务端会事先通过 CA 签发证书和私钥
1)客户端发送 https 请求到服务端的 443 端口
2)服务端发送包含公钥、证书有效期及 CA 机构等信息的证书给客户端
3)客户端会先通过 CA 验证证书的有效性
4)若证书有效,客户端会在本地随机生成会话密码并通过服务端发来的公钥加密后返回给服务端
5)服务器用私钥解密获取会话密钥,之后双方即可使用会话密钥加密/解密来实现密文通信

Docker 安全 Docker HTTPS请求过程与配置,docker,安全,https,容器,运维,linux,云计算

如何获取 ssl 证书?【重要】

云服务商免费申请 或是本地openssl等生成

 

  1. 在 阿里云、腾讯云、华为云 等云服务商 申请一年前的免费证书
    1. 免费申请SSL证书及部署就是这么简单
    2. 阿里云服务器Nginx配置SSL证书,实现HTTPS访问
  2. 在服务器本地使用 openssl、mkcert、cfssl、certbot(Let's Encrypt)等工具 生成 SSL 证书
    1. 一文搞定SSL证书的所有创建问题
    2. 如何免费申请 SSL 证书

                ssl/tls 加密 通常代表 证书认证加密

服务器本地 openssl 创建证书

ca 证书和私钥  ->  服务器/客户端证书 和 私钥

yum install -y openssl

1)创建 CA 私钥和证书

openssl genrsa -out ca.key 2048                             #生成 ca 私钥 私钥长度2048、4096 只要是1024倍数
#genrsa:使用RSA算法产生私钥
#-aes256:使用256位密钥的AES算法对私钥进行加密,这样每次使用私钥文件都将输入密码,可省略
#-out:输出文件的路径,若未指定输出文件,则为标准输出
#4096:指定私钥长度,默认为1024。该项必须为命令行的最后一项参数

openssl req -new -key ca.key -out ca.csr                    #生成 ca 证书自签名请求文件

openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.pem    #生成 ca 证书
#req:执行证书签发命令
#-new:新证书签发请求
#-x509:生成x509格式证书,专用于创建私有CA时使用
#-days:证书的有效时长,单位是天
#-key:指定私钥路径
#-sha256:证书摘要采用sha256算法
#-subj:证书相关的用户信息(subject的缩写)
#-out:输出文件的路径


2)创建服务端自签名请求文件

openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr


3)使用CA签发服务端证书(需要签名请求文件,ca 证书,ca 密钥)

openssl x509 -req -days 3650 -in server.csr -signkey ca.key -out server.pem

x509:生成x509格式证书
-req:输入csr文件
-in:要输入的csr文件
-CA:指定ca证书的路径
-CAkey:指定ca证书的私钥路径
-CAcreateserial:表示创建证书序列号文件,创建的序列号文件默认名称为ca.srl

完成CA证书 server证书创建后,客户端就可以进行认证【双向认证还需要按照server证书生成方式再生成client证书传送给client端,并且将ca.pam(ca证书)一并传送给客户端,客户端据此判断server.pam的有效性。】

另外对于不同的服务,还需要按照官方文档说明修改相应的配置,使其能够使用https协议并且正确使用了证书。


 文章来源地址https://www.toymoban.com/news/detail-619569.html


 

到了这里,关于Docker 安全 Docker HTTPS请求过程与配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker 安全及日志管理与https部署

    容器的安全性问题的根源在于容器和宿主机共享内核。如果容器里的应用导致Linux内核崩溃,那么整个系统可能都会崩溃。与虚拟机是不同的,虚拟机并没有与主机共享内核,虚拟机崩溃一般不会导致宿主机崩溃。 虚拟机通过添加 Hypervisor 层(虚拟化中间层),虚拟出网卡、

    2024年02月14日
    浏览(34)
  • 【Docker】安全及日志管理与https部署

    容器的安全性问题的根源在于容器和宿主机共享内核。如果容器里的应用导致Linux内核崩溃,那么整个系统可能都会崩溃。与虚拟机是不同的,虚拟机并没有与主机共享内核,虚拟机崩溃一般不会导致宿主机崩溃。 虚拟机通过添加 Hypervisor 层(虚拟化中间层),虚拟出网卡、

    2024年02月13日
    浏览(33)
  • 配置Docker远程访问并启用HTTPS

    要配置Docker远程访问并启用HTTPS,您可以按照以下步骤进行操作: 生成证书和密钥: 在Docker主机上生成自签名证书和私钥,可以使用以下命令: 输入证书信息(如国家、省/州、城市、组织等),并生成证书和私钥文件。 配置Docker守护进程: 打开Docker配置文件,通常是 /et

    2024年01月19日
    浏览(50)
  • Docker安装MinIO并配置HTTPS安装访问

    1、安装MinIO 2、前往阿里云下载免费的证书文件(注意:要Apache版的) 3、修改公钥和私钥文件名为private.key public.crt 4、把这两个文件上传到服务器,我放到了/Home文件夹下,然后复制到容器内部 5、进入容器内部查看证书文件是否成功复制到容器内部 6、重新启动minio 然后就可

    2024年01月21日
    浏览(45)
  • nginx+lua配置,一个域名配置https,docker集群使用

    没安装kua的先安装lua 没有resty.http模块的,许配置 nginx+lua配置,一个域名配置https,docker集群使用,一个域名配置https管理整个集群 lua做转发(方向代理) 1、ad_load.lua文件 2、nginx配置,配置两个ssh端口 完整nginx代码 请求结果

    2024年01月18日
    浏览(55)
  • 【Docker从入门到入土 6】Consul详解+Docker https安全认证(附证书申请方式)

    服务注册与发现是 微服务架构 中不可或缺的重要组件。 起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。 直到后来出现了多个节点的分布式架构,起初的解决手段是在服务前端负载均衡,这样前端必须要知道所有后端

    2024年02月02日
    浏览(35)
  • nextcloud设置https nextcloud docker配置阿里云SSL证书实现HTTPS访问 亲测方案

    1、下载阿里云ssl证书,类型为:apache,得到三个文件两个crt,一个key。 2、把文件夹更名为cert,文件名改为chain.crt,pubilc.crt,web.key。 3、把文件夹复制进nextcloud容器/etc/apache2文件夹中 4、进入容器 执行 5、修改ssl.load配置文件 如果有下面这一句就不用修改了,没有就添加上 6、

    2024年02月13日
    浏览(47)
  • 在Docker 上使用 Nginx 配置https及wss

    预先创建挂载文件 使用docker启动nginx时候需要提前创建好宿主机的挂载文件,文件会在挂载成功之后自动从nginx的容器中复制默认内容 运行并且挂载容器 nginx.conf 文件 default.conf 文件

    2024年02月11日
    浏览(47)
  • 《Docker》阿里云服务器docker部署nginx并配置https踩坑记录(完整)

    前端博主,热衷各种前端向的骚操作,经常想到哪就写到哪,如果有感兴趣的技术和前端效果可以留言~博主看到后会去代替大家踩坑的~ 主页: oliver尹的主页 格言: 跌倒了爬起来就好~ 来个关注吧,点个赞吧,谢谢 今天在为阿里云服务器续期的时候发现原来阿里云上面也

    2024年02月06日
    浏览(48)
  • ubuntu 20通过docker安装onlyoffice,并配置https访问

    目录 一、安装docker (一)更新包列表和安装依赖项 (二)添加Docker的官方GPG密钥 (三)添加Docker存储库 (四)安装Docker (五)启动Docker服务并设置它随系统启动 (六)验证Docker安装是否成功,运行以下命令: (七)将用户添加到docker组 二、docker运行onlyoffice,并配置ht

    2024年02月03日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包