最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker開通2375端口防漏洞問題

 更新時間:2023年08月08日 09:10:34   作者:你瞅口舍灬  
這篇文章主要介紹了docker開通2375端口防漏洞問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

前言

最近因為自己的云服務(wù)器開放了Docker 2375端口,導(dǎo)致被注入蠕蟲,一直在跑挖礦程序。

所以大家一定要注意外網(wǎng)環(huán)境下不要輕易打開此端口,如果要對外開放此端口,可以參考下面的解決方案,下面就Docker對外開放2375端口引發(fā)安全漏洞進行一個詳細的說明。

緣由

2375:未加密的docker socket,遠程root無密碼訪問主機為了實現(xiàn)集群管理,Docker提供了遠程管理接口。

Docker Daemon作為守護進程,運行在后臺,可以執(zhí)行發(fā)送到管理接口上的Docker命令。

正是因為錯誤的使用了Docker遠端接口,引起安全漏洞。

啟動Docker Daemon時,加入-H 0.0.0.0:2375,Docker Daemon就可以接收遠端的Docker Client發(fā)送的指令。

注意,Docker是把2375端口作為非加密端口暴露出來,一般是用在內(nèi)網(wǎng)環(huán)境中。

此時,沒有任何加密和認證過程,只要知道Docker主機的IP,任何人都可以管理這臺主機上的容器和鏡像。

黑客可以掃描出主機上的暴露的端口,因為沒有加密,知道了主機IP以后,黑客就可以為所欲為了。

解決方案

知道了來龍去脈,下面就如何安全開放Docker 2375端口進行一個詳細的介紹。

我們可以通過添加安全傳輸層協(xié)議(TLS)和CA認證對2375端口進行一個驗證。

這樣黑客只要拿不到我們的證書秘鑰,就無法進行攻擊了。

1. 創(chuàng)建一個目錄用于存儲生成的證書和秘鑰

mkdir /docker-ca && cd /docker-ca

2. 使用openssl創(chuàng)建CA證書私鑰

期間需要輸入兩次密碼,生成文件為ca-key.pem

openssl genrsa -aes256 -out ca-key.pem 4096
Enter pass phrase for ca-key.pem: Your password
(hylink2014)

3. 根據(jù)私鑰創(chuàng)建CA證書

期間需要輸入上一步設(shè)置的私鑰密碼,然后依次輸入國家是 CN,省例如是Guangdong、市Guangzhou、組織名稱、組織單位、姓名或服務(wù)器名、郵件地址,都可以隨意填寫,生成文件為ca.pem(注意證書有效期)

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

4. 創(chuàng)建服務(wù)端私鑰

生成文件為server-key.pem

openssl genrsa -out server-key.pem 4096

5. 創(chuàng)建服務(wù)端證書簽名請求文件

用于CA證書給服務(wù)端證書簽名。IP需要換成自己服務(wù)器的IP地址,或者域名都可以。生成文件server.csr

openssl req -subj "/CN=Your server IP" -sha256 -new -key server-key.pem -out server.csr
openssl req -subj "/CN=35.1.176.8" -sha256 -new -key server-key.pem -out server.csr

6. 配置白名單,用多個用逗號隔開

例如: IP:192.168.0.1,IP:0.0.0.0,這里需要注意,雖然0.0.0.0可以匹配任意,但是仍然需要配置你的服務(wù)器IP,如果省略會造成錯誤

echo subjectAltName = IP:Your server IP,IP:0.0.0.0 >> extfile.cnf
echo subjectAltName = IP:35.1.176.8,IP:0.0.0.0 >> extfile.cnf

7. 將Docker守護程序密鑰的擴展

使用屬性設(shè)置為僅用于服務(wù)器身份驗證

echo extendedKeyUsage = serverAuth >> extfile.cnf

8. 創(chuàng)建CA證書簽名好的服務(wù)端證書

期間需要輸入CA證書私鑰密碼,生成文件為server-cert.pem

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

9. 創(chuàng)建客戶端私鑰

生成文件為key.pem

openssl genrsa -out key.pem 4096

10. 創(chuàng)建客戶端證書簽名請求文件

用于CA證書給客戶證書簽名,生成文件client.csr

openssl req -subj '/CN=client' -new -key key.pem -out client.csr

11. 要使密鑰適合客戶端身份驗證

請創(chuàng)建擴展配置文件

echo extendedKeyUsage = clientAuth >> extfile.cnf

12. 創(chuàng)建CA證書簽名好的客戶端證書

期間需要輸入CA證書私鑰密碼,生成文件為cert.pem

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

13. 刪除不需要的文件

兩個證書簽名請求

rm -v client.csr server.csr

14. 修改證書為只讀權(quán)限保證證書安全

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

15. 歸集服務(wù)器證書

cp server-*.pem /etc/docker/ && cp ca.pem /etc/docker/ 

最終生成文件如下,有了它們我們就可以進行基于TLS的安全訪問了

ca.pem CA證書

  • ca-key.pem CA證書私鑰
  • server-cert.pem 服務(wù)端證書
  • server-key.pem 服務(wù)端證書私鑰
  • cert.pem 客戶端證書
  • key.pem 客戶端證書私鑰

16. 配置Docker支持TLS

修改docker.service文件

vi /usr/lib/systemd/system/docker.service

實際位置:

vi /etc/systemd/system/docker.service

修改以ExecStart開頭的配置,開啟TLS認證,并配置好CA證書、服務(wù)端證書和服務(wù)端私鑰

ExecStart=/usr/bin/dockerd --tlsverify --tlscacert=/etc/docker/ca.pem --tlscert=/etc/docker/server-cert.pem --tlskey=/etc/docker/server-key.pem -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

重新加載daemon

systemctl daemon-reload && systemctl restart docker

重啟docker

service docker restart

17. 在客戶端測試連接

保存相關(guān)客戶端的pem文件到本地

IDEA->Preferences->Bulild, Execution,Deployment->Docker->TCP socket

到此,Docker對外開放2375端口再也不怕被攻擊了!

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺操作

    Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺操作

    這篇文章主要介紹了Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 詳解如何將docker快速升級到最新版本

    詳解如何將docker快速升級到最新版本

    最近在對區(qū)塊鏈瀏覽器調(diào)優(yōu),該區(qū)塊鏈瀏覽器就是使用docker部署的微服務(wù),在一臺新的服務(wù)器上啟動時報錯,發(fā)現(xiàn)是docker版本過低,所以本文給大家介紹了將docker快速升級到最新版本的方法,需要的朋友可以參考下
    2024-02-02
  • Docker命令行入門大全(這18條,你不得不知)

    Docker命令行入門大全(這18條,你不得不知)

    Docker有成千上百萬的命令行。因此Docker文檔內(nèi)容十分豐富,同時又讓剛?cè)腴T的新手感到不知所措。在本文中,我將重點介紹運行Docker的關(guān)鍵命令。
    2019-09-09
  • Docker持久化搭建MinIO過程

    Docker持久化搭建MinIO過程

    這篇文章主要介紹了Docker持久化搭建MinIO過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-08-08
  • 利用drone?ci自動化部署靜態(tài)博客的完整步驟

    利用drone?ci自動化部署靜態(tài)博客的完整步驟

    drone是基于容器的構(gòu)建服務(wù),配置簡單且免費,在 github上也有20Kstar,下面這篇文章主要給大家介紹了關(guān)于利用drone?ci自動化部署靜態(tài)博客的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • Docker安裝配置Redis鏡像的實現(xiàn)步驟

    Docker安裝配置Redis鏡像的實現(xiàn)步驟

    Redis是一個由Salvatore Sanfilippo寫的key-value存儲系統(tǒng),是跨平臺的非關(guān)系型數(shù)據(jù)庫。Redis 是一個開源的使用 ANSI C 語言編寫、遵守 BSD 協(xié)議、支持網(wǎng)絡(luò)、可基于內(nèi)存、分布式、可選持久性的鍵值對(Key-Value)存儲數(shù)據(jù)庫,并提供多語言API,本文帶你在Docker安裝配置它
    2021-11-11
  • docker compose部署nginxwebui全過程

    docker compose部署nginxwebui全過程

    NginxWebUI是圖形化管理Nginx的工具,支持配置編輯、實時監(jiān)控、權(quán)限控制及插件擴展,適用于網(wǎng)站管理員、開發(fā)者及初學(xué)者,提升效率并便于部署
    2025-09-09
  • CoreOS配置Docker鏡像加速器的方法

    CoreOS配置Docker鏡像加速器的方法

    本篇文章主要介紹了CoreOS配置Docker鏡像加速器的方法,CoreOS下的Docker配置是通過flannel unit來實現(xiàn)的,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • docker分布式部署jumpserver實踐

    docker分布式部署jumpserver實踐

    文章介紹了如何部署分布式JumpServer,包括定義網(wǎng)絡(luò)和數(shù)據(jù)持久化、部署數(shù)據(jù)庫、配置Redis密碼、生成隨機加密秘鑰并啟動JumpServer容器,作者建議在啟動前檢查SECRET_KEY是否一致,以確保數(shù)據(jù)庫加密字段的解密
    2026-03-03
  • Docker部署常見應(yīng)用之SFTP服務(wù)器詳解

    Docker部署常見應(yīng)用之SFTP服務(wù)器詳解

    這篇文章主要介紹了Docker部署常見應(yīng)用之SFTP服務(wù)器,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-06-06

最新評論

乐至县| 岫岩| 山阳县| 嘉义市| 威信县| 武陟县| 金山区| 孝义市| 达日县| 临洮县| 新丰县| 无棣县| 九江市| 广东省| 鲁甸县| 华蓥市| 岱山县| 澄迈县| 衢州市| 贺兰县| 肥东县| 金华市| 韶关市| 太康县| 杂多县| 威远县| 东台市| 沙河市| 富顺县| 鲁山县| 合肥市| 高州市| 敦煌市| 施秉县| 武穴市| 高台县| 互助| 鄂托克旗| 伊宁县| 高雄市| 新巴尔虎右旗|