婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Docker守護進程安全配置項目詳解

Docker守護進程安全配置項目詳解

熱門標簽:廈門防封電銷電話卡 地圖標注員有發展前景嗎 外呼系統全國 高德地圖標注公司需要錢 四川保險智能外呼系統 云南電商智能外呼系統哪家好 地圖標注能更改嗎 宜賓銷售外呼系統軟件 濰坊寒亭400電話辦理多少錢

本文將為大家介紹docker守護進程的相關安全配置項目。

一、測試環境

1.1 安裝 CentOS 7

CentOS Linux release 7.7.1908 (Core)

升級內核,重啟

# yum update kernel
[root@localhost docker]# uname -a
Linux localhost 3.10.0-1062.12.1.el7.x86_64 #1 SMP Tue Feb 4 23:02:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost docker]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)

1.2 安裝 docker ce 19.03

# yum install -y yum-utils device-mapper-persistent-data lvm2
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# yum install -y docker-ce

[root@localhost docker]# docker --version
Docker version 19.03.8, build afacb8b

二、 守護進程安全配置

默認沒有配置文件,需要單獨創建/etc/docker/daemon.json,下面配置都是在該文件上進行配置,本地的測試示例。

{
 "icc": false,
 "log-level": "info",
 "log-driver": "json-file",
 "log-opts": {
 "max-size": "10m",
 "max-file":"5",
 "labels": "somelabel",
 "env": "os,customer"
 },
 "iptables": true,
 "userns-remap": "default",
 "userland-proxy": false,
 "experimental": false,
 "selinux-enabled": true,
 "live-restore": true,
 "no-new-privileges": true,
 "cgroup-parent": "/foobar",
 "seccomp-profile": "/etc/docker/seccomp/default-no-chmod.json",
 "tls": true,
 "tlsverify": true,
 "tlscacert": "/etc/docker/CA/ca.pem",
 "tlscert": "/etc/docker/CA/server-cert.pem",
 "tlskey": "/etc/docker/CA/server-key.pem"
}

2.1 配置通過 HTTPS 和證書認證訪問 Docker 守護進程

服務器證書

創建 HOST,定義域(IP 也可以),會根據域來生成對應的證書,一般用于注冊證書當中的 CN:

創建證書目錄:

$ mkdir -p /etc/docker/dockerd/CA && cd /etc/docker/dockerd/CA

生成 key 證書,并填寫兩次 key 證書密碼:

$ openssl genrsa -aes256 -out ca-key.pem 4096

生成 ca 證書,需要輸入注冊證書基礎信息:

$ openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem

創建 server 證書:

$ openssl genrsa -out server-key.pem 4096

$ openssl req -subj "/CN=localhsot" -sha256 -new -key server-key.pem -out server.csr

設定證書指定的 IP 地址:

$ echo subjectAltName = DNS:localhost,IP:127.0.0.1 >> extfile.cnf

將 Docker 守護程序密鑰的擴展使用屬性設置為僅用于服務器身份驗證:

$ echo extendedKeyUsage = serverAuth >> extfile.cnf

生成 server cert 證書:

$ openssl x509 -req -days 3650 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem -extfile extfile.cnf

客戶端證書

創建客戶端證書:(還是當前目錄)

$ openssl genrsa -out key.pem 4096
$ openssl req -subj '/CN=localhost' -new -key key.pem -out client.csr

要使密鑰適合客戶端身份驗證,請創建擴展配置文件:

$ echo extendedKeyUsage = clientAuth >> extfile.cnf

生成 client cert 證書:

$ openssl x509 -req -days 3650 -sha256 -in client.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out cert.pem -extfile extfile.cnf

使用

對證書賦予相應的權限:

$ chmod -v 0400 ca-key.pem key.pem server-key.pem
$ chmod -v 0444 ca.pem server-cert.pem cert.pem

[root@localhost CA]# ls
ca-key.pem ca.pem ca.srl cert.pem client.csr extfile.cnf key.pem server-cert.pem server.csr server-key.pem

服務端配置 /etc/docker/daemon.json

"tls": true,
"tlsverify": true,
"tlscacert": "/etc/docker/CA/ca.pem",
"tlscert": "/etc/docker/CA/server-cert.pem",
"tlskey": "/etc/docker/CA/server-key.pem"

客戶端配置

設置客戶端證書到當服務器上,并放置到相應的位置:

$ cp -v {ca,cert,key}.pem ~/.docker
$ export DOCKER_HOST=tcp://$HOST:2376 DOCKER_TLS_VERIFY=1

通過如下方式模擬測試:

$ curl https://$HOST:2376/images/json \

 --cert ~/.docker/cert.pem \

 --key ~/.docker/key.pem \

 --cacert ~/.docker/ca.pem
 
[{"Containers":-1,"Created":1540777343,"Id":"sha256:55e7b305dc477345434ce3bd3941940481f982eea31c8f28c0670d59c63d544b","Labels":nu

2.2 使用namespace隔離技術

namespace是一種隔離技術,docker就是使用隔離技術開啟特定的namespace創建出一些特殊的進程,不過使用namespace是有條件的。系統會創建dockremap,通過/etc/subuid和/etc/subuid對應的id值,映射到容器中去;實際情況還是使用的是dockremap普通權限,達到自動隔離的效果。

首先修改 /etc/sysctl.conf

# echo "user.max_user_namespaces=15076" >> /etc/sysctl.conf

/etc/docker/daemon.json 增加配置項 "userns-remap": "default"

修改此項配置需要慎重,如果是已經部署了一套docker環境,啟用此選項后,會切換到隔離環境,以前的docker容器將無法使用!

[root@localhost docker]# cat /etc/subuid
dockremap:100000:65536

2.3 設置 docker 的分區

為容器創建單獨的分區,默認分區在\var\lib\docker\,包含本地鏡像、容器、網絡等相關的東西。

[root@localhost docker]# ls /var/lib/docker

100000.100000  builder  buildkit  containers  image  network  overlay2  plugins  runtimes  swarm  tmp  trust  volumes
可以使用 "data-root": "" 配置默認的分區位置。

2.4 限制默認網橋容器之間的流量

當啟動 Docker 服務時候,默認會添加一條轉發策略到 iptables 的 FORWARD 鏈上。策略為通過( ACCEPT )還是禁止( DROP ),取決于配置 --icc=true (缺省值)還是  --icc=false 。如果手動指定  --iptables=false 則不會添加 iptables 規則。

默認情況下,默認網橋上同一主機上的容器之間允許所有網絡通信,如果不需要,限制所有容器間的通信。 將需要通信的特定容器鏈接在一起,或者創建自定義網絡,并且僅加入需要與該自定義網絡進行通信的容器。

配置限制默認網橋上容器之間的流量 "icc":false

2.5 配置日志

配置集中的遠程日志,設置日志進程 --log-level 級別為 info ,日志記錄格式 json,本地日志記錄

"log-level": "info",
"log-driver": "json-file",
"log-opts": {
 "max-size": "10m",
 "max-file":"5",
 "labels": "somelabel",
 "env": "os,customer"
},

配置遠程日志

 

Docker 日志記錄驅動程序接收容器日志并將其轉發到遠程目標或文件。 默認的日志記錄驅動程序是json-file。 它將容器日志以JSON格式存儲在本地磁盤上。 Docker具有用于記錄日志的插件體系結構,因此有用于開源工具和商業工具的插件:

Journald–將容器日志存儲在系統日志中.
Syslog Driver–支持UDP,TCP,TLS
Fluentd –支持將TCP或Unix套接字連接到fluentd
Splunk – HTTP / HTTPS轉發到Splunk服務器
Gelf – UDP日志轉發到Graylog2

示例 fluent

{
 "log-driver": "fluentd",
 "log-opts": {
 "fluentd-address": "fluentdhost:24224"
 }
 }

使用 syslog

{
 "log-driver": "syslog",
 "log-opts": {
 "syslog-address": "udp://1.2.3.4:1111"
 }
}

2.6 設置 ulimit

{
 "default-ulimits": {
 "nofile": {
  "Name": "nofile",
  "Hard": 64000,
  "Soft": 64000
 }
 }
}

2.7 設置 cgroup

--cgroup-parent 選項允許設置用于容器的默認cgroup父級。 如果未設置此選項,則對于fs cgroup驅動程序,默認為 /docker ;對于systemd cgroup驅動程序,默認為 system.slice 。

如果cgroup有一個正斜杠( / ),則cgroup在根cgroup下創建,否則cgroup在守護程序cgroup下創建。

假設守護程序在cgroup daemoncgroup中運行,則 --cgroup-parent=/foobar 在 /sys/fs/cgroup/memory/foobar 中創建一個cgroup,而使用 --cgroup-parent=foobar 則創建  /sys/fs/cgroup/memory/daemoncgroup/foobar 中創建 cgroup。

systemd cgroup驅動程序對–cgroup-parent具有不同的規則。 Systemd按切片表示層次結構,切片的名稱對樹中的位置進行編碼。 因此,systemd cgroup的 --cgroup-parent 應為切片名稱。 名稱可以包含一系列用短劃線分隔的名稱,這些名稱描述了從根切片到切片的路徑。 例如, --cgroup-parent=user-a-b.slice 表示容器的內存cgroup在 /sys/fs/cgroup/memory/user.slice/user-a.slice/user-a-b.slice/docker-<id>.scope 中創建。

也可以使用容器運行來設置,使用docker create和docker run上的 --cgroup-parent 選項,會優先于守護程序上的 --cgroup-parent 選項。

2.8 配置 seccomp

使用的測試配置文件,禁止在 Docker 里使用 chmod 命令

https://github.com/docker/labs/blob/master/security/seccomp/seccomp-profiles/default-no-chmod.json
[root@localhost docker]# docker run --rm -it alpine sh
/ # ls bin etc lib mnt proc run srv tmp var
dev home media opt root sbin sys usr / # touch foo.sh
/ # chmod +x foo.sh
chmod: foo.sh: Operation not permitted
/ # exit

實際可以完成禁止、允許、告警某些系統相關的調用,參考: https://github.com/torvalds/linux/blob/master/arch/x86/entry/syscalls/syscall_64.tbl

2.9 配置支持無守護程序的容器

--live-restore 確保 docker 守護進程關閉時不影響容器。

測試時再關閉 docker 守護進程后,nginx 容器仍能正常提供訪問。

 

2.10 禁用 docker 的實驗性功能

設置 "experimental": false

2.11 限制容器通過 suid 或 sgid 提權

no-new-privileges 安全選項可防止容器內的應用程序進程在執行期間獲得新的特權。

舉例:有一個在映像中設置了 setuid/setgid 位的程序,例如sudo,容器中的進程也具有執行該程序的(文件)權限,試圖通過諸如setuid/setgid之類的設施獲取特權的任何操作將被拒絕。

三、守護進程配置示例說明(Linux)

{
 "authorization-plugins": [],//訪問授權插件
 "data-root": "",//docker數據持久化存儲的根目錄,默認為/var/lib/docker
 "dns": [],//DNS服務器
 "dns-opts": [],//DNS配置選項,如端口等
 "dns-search": [],//DNS搜索域名
 "exec-opts": [],//執行選項
 "exec-root": "",//執行狀態的文件的根目錄
 "experimental": false,//是否開啟試驗性特性
 "features": {},//啟用或禁用特定功能。如:{"buildkit": true}使buildkit成為默認的docker鏡像構建器。
 "storage-driver": "",//存儲驅動器類型
 "storage-opts": [],//存儲選項
 "labels": [],//鍵值對式標記docker元數據
 "live-restore": true,//dockerd掛掉是否?;钊萜鳎ū苊饬薲ocker服務異常而造成容器退出)
 "log-driver": "json-file",//容器日志的驅動器
 "log-opts": {
 "max-size": "10m",
 "max-file":"5",
 "labels": "somelabel",
 "env": "os,customer"
 },//容器日志的選項
 "mtu": 0,//設置容器網絡MTU(最大傳輸單元)
 "pidfile": "",//daemon PID文件的位置
 "cluster-store": "",//集群存儲系統的URL
 "cluster-store-opts": {},//配置集群存儲
 "cluster-advertise": "",//對外的地址名稱
 "max-concurrent-downloads": 3,//設置每個pull進程的最大并發
 "max-concurrent-uploads": 5,//設置每個push進程的最大并發
 "default-shm-size": "64M",//設置默認共享內存的大小
 "shutdown-timeout": 15,//設置關閉的超時時限
 "debug": true,//開啟調試模式
 "hosts": [],//dockerd守護進程的監聽地址
 "log-level": "",//日志級別
 "tls": true,//開啟傳輸層安全協議TLS
 "tlsverify": true,//開啟輸層安全協議并驗證遠程地址
 "tlscacert": "",//CA簽名文件路徑
 "tlscert": "",//TLS證書文件路徑
 "tlskey": "",//TLS密鑰文件路徑
 "swarm-default-advertise-addr": "",//swarm對外地址
 "api-cors-header": "",//設置CORS(跨域資源共享-Cross-origin resource sharing)頭
 "selinux-enabled": false,//開啟selinux(用戶、進程、應用、文件的強制訪問控制)
 "userns-remap": "",//給用戶命名空間設置 用戶/組
 "group": "",//docker所在組
 "cgroup-parent": "",//設置所有容器的cgroup的父類
 "default-ulimits": {
 "nofile": {
  "Name": "nofile",
  "Hard": 64000,
  "Soft": 64000
 }
 },//設置所有容器的ulimit
 "init": false,//容器執行初始化,來轉發信號或控制(reap)進程
 "init-path": "/usr/libexec/docker-init",//docker-init文件的路徑
 "ipv6": false,//支持IPV6網絡
 "iptables": false,//開啟防火墻規則
 "ip-forward": false,//開啟net.ipv4.ip_forward
 "ip-masq": false,//開啟ip掩蔽(IP封包通過路由器或防火墻時重寫源IP地址或目的IP地址的技術)
 "userland-proxy": false,//用戶空間代理
 "userland-proxy-path": "/usr/libexec/docker-proxy",//用戶空間代理路徑
 "ip": "0.0.0.0",//默認IP
 "bridge": "",//將容器依附(attach)到橋接網絡上的橋標識
 "bip": "",//指定橋接IP
 "fixed-cidr": "",//(ipv4)子網劃分,即限制ip地址分配范圍,用以控制容器所屬網段實現容器間(同一主機或不同主機間)的網絡訪問
 "fixed-cidr-v6": "",//(ipv6)子網劃分
 "default-gateway": "",//默認網關
 "default-gateway-v6": "",//默認ipv6網關
 "icc": false,//容器間通信
 "raw-logs": false,//原始日志(無顏色、全時間戳)
 "allow-nondistributable-artifacts": [],//不對外分發的產品提交的registry倉庫
 "registry-mirrors": [],//registry倉庫鏡像加速地址
 "seccomp-profile": "",//seccomp配置文件
 "insecure-registries": [],//配置非https的registry地址
 "no-new-privileges": false,//禁止新優先級
 "default-runtime": "runc",//OCI聯盟(The Open Container Initiative)默認運行時環境
 "oom-score-adjust": -500,//內存溢出被殺死的優先級(-1000~1000)
 "node-generic-resources": ["NVIDIA-GPU=UUID1", "NVIDIA-GPU=UUID2"],//對外公布的資源節點
 "runtimes": {
 "cc-runtime": {
  "path": "/usr/bin/cc-runtime"
 },
 "custom": {
  "path": "/usr/local/bin/my-runc-replacement",
  "runtimeArgs": [
  "--debug"
  ]
 }
 },//運行時
 "default-address-pools":[
 {"base":"172.80.0.0/16","size":24},//默認的dhcp分配地址
 {"base":"172.90.0.0/16","size":24}
 ]
}

總結

到此這篇關于Docker守護進程安全配置項目詳解的文章就介紹到這了,更多相關docker守護進程內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:湛江 廣安 紅河 巴彥淖爾 廊坊 德州 回訪 滁州

巨人網絡通訊聲明:本文標題《Docker守護進程安全配置項目詳解》,本文關鍵詞  Docker,守護,進程,安全,配置,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker守護進程安全配置項目詳解》相關的同類信息!
  • 本頁收集關于Docker守護進程安全配置項目詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人综合在线观看| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲妇女屁股眼交7| 国产精品乱人伦| 国产高清在线精品| 一区二区三区日韩欧美| 日本一区二区三区四区| 91精品国产高清一区二区三区 | 天涯成人国产亚洲精品一区av| 蜜桃91丨九色丨蝌蚪91桃色| 成人av午夜影院| 精品一区二区三区免费观看| 午夜视频在线观看一区| 亚洲人成精品久久久久久 | 欧美日韩国产一区二区三区地区| 视频一区二区三区中文字幕| 久久综合狠狠综合久久综合88| 欧美一区二区美女| 欧美一区二区三区的| 99久久婷婷国产精品综合| 久久九九全国免费| 日韩精品影音先锋| 91久久一区二区| 日韩精品福利网| 一色屋精品亚洲香蕉网站| 欧美电影免费观看高清完整版在 | www.欧美精品一二区| 肉丝袜脚交视频一区二区| 99久久国产综合精品女不卡| 日韩免费观看高清完整版| 日本一区二区视频在线| 欧美色视频一区| 色诱视频网站一区| 亚洲丰满少妇videoshd| 欧美高清www午色夜在线视频| 日韩综合一区二区| 中文字幕巨乱亚洲| 亚洲制服丝袜一区| 日韩一区二区免费在线电影| 日韩一区二区三区在线观看| 国产iv一区二区三区| 欧美色视频一区| 日韩精品一二区| 日韩三区在线观看| 久久不见久久见免费视频1| 精品国产凹凸成av人网站| 麻豆中文一区二区| 日本一二三不卡| 欧美另类videos死尸| 蜜臀av一区二区| 亚洲色图制服丝袜| 亚洲情趣在线观看| 久久精品欧美日韩精品| 成人性生交大片免费| 亚洲欧洲av一区二区三区久久| 欧洲一区在线电影| 日韩高清一区二区| 亚洲另类色综合网站| 久久精品国产77777蜜臀| 精品久久久久av影院| av亚洲精华国产精华精| 波多野结衣中文字幕一区| 欧美性大战久久| 136国产福利精品导航| 亚洲影视在线观看| 亚洲一区二区三区在线看| 亚洲最大成人综合| 麻豆免费看一区二区三区| 欧美日韩成人在线| 国产精品入口麻豆九色| 国产很黄免费观看久久| 欧美在线观看视频一区二区| 欧美激情艳妇裸体舞| 依依成人综合视频| 国产一区中文字幕| 亚洲麻豆国产自偷在线| 日韩写真欧美这视频| 67194成人在线观看| 欧美在线制服丝袜| 在线观看日韩高清av| 国产一区二区影院| 国产精品自拍av| 国产suv一区二区三区88区| 精品写真视频在线观看 | 91精品国产色综合久久| 91免费视频大全| 精品视频1区2区| 日韩精品影音先锋| 97精品电影院| 午夜视频在线观看一区| 国产精品66部| 成人av在线看| 亚洲国产精品二十页| 久久99国产精品麻豆| 亚洲精品一二三区| 欧美四级电影网| 高清国产午夜精品久久久久久| 久久av中文字幕片| 国内偷窥港台综合视频在线播放| 丝袜诱惑制服诱惑色一区在线观看| 国产精品另类一区| 亚洲色图都市小说| 一区二区久久久| 天天综合色天天| 精品一区二区在线观看| 极品少妇xxxx偷拍精品少妇| 久久国产欧美日韩精品| 国产成人精品免费在线| 欧美日韩国产精选| 国产亚洲精品久| 亚洲电影一级黄| 成人免费看视频| 91麻豆精品国产自产在线观看一区| 在线观看一区二区视频| 91精品在线麻豆| 亚洲综合免费观看高清完整版 | 成人高清视频在线| 91麻豆swag| 亚洲精品在线网站| 久久精品国产99久久6| 91亚洲大成网污www| 国产情人综合久久777777| 亚洲欧洲无码一区二区三区| 精品在线一区二区三区| 欧美性受极品xxxx喷水| 亚洲综合激情网| 成人一区二区三区视频在线观看 | 日韩高清国产一区在线| 国产成人av福利| 欧美性做爰猛烈叫床潮| 国产精品入口麻豆九色| 性做久久久久久免费观看 | 老司机精品视频在线| 国产伦精品一区二区三区免费| 国产精品每日更新在线播放网址| 欧美日韩亚洲综合| 美国毛片一区二区三区| 国产精品无码永久免费888| 日韩一区二区在线观看| 91国偷自产一区二区三区成为亚洲经典 | 一区二区三区四区亚洲| 欧美日韩亚洲另类| 七七婷婷婷婷精品国产| 国产日本欧洲亚洲| 欧美网站大全在线观看| 久久国产综合精品| 亚洲午夜日本在线观看| 国产精品网站导航| 精品国产乱码久久久久久免费| fc2成人免费人成在线观看播放| 激情成人综合网| 亚洲一卡二卡三卡四卡五卡| 国产欧美日韩久久| 欧美人牲a欧美精品| 99久久综合色| 国产精品一卡二卡| 免费成人在线影院| 精品一区二区日韩| 天堂成人国产精品一区| 亚洲一区二区三区自拍| 精品一二三四区| 成年人国产精品| 欧美亚洲综合一区| 精品国产免费人成在线观看| 久久亚洲二区三区| 国产精品日韩成人| 亚洲精品国产精品乱码不99| 亚洲综合丁香婷婷六月香| 五月天丁香久久| thepron国产精品| 欧美日韩在线亚洲一区蜜芽| 久久久久国产成人精品亚洲午夜| 亚洲男同1069视频| 国产黄色精品网站| 日韩一区二区三区av| 国产精品久久久久久久久免费丝袜 | 欧美欧美欧美欧美| 久久嫩草精品久久久精品| 中文字幕一区二区三区蜜月| 亚洲h精品动漫在线观看| 成人免费av资源| 欧美不卡视频一区| 丝袜亚洲精品中文字幕一区| 色婷婷av一区二区三区gif| 国产精品久久久久影院老司| 色综合久久88色综合天天免费| 亚洲最色的网站| 欧美一区二区免费观在线| 国产乱人伦精品一区二区在线观看| 国产嫩草影院久久久久| 日本电影欧美片| 综合分类小说区另类春色亚洲小说欧美| 亚洲图片欧美色图| 欧美在线一二三四区| 视频一区二区三区入口| 欧美色网一区二区| 美女视频黄频大全不卡视频在线播放| 欧洲色大大久久| 亚洲午夜精品久久久久久久久| 日韩欧美一级在线播放|