使用 IRONSECUREDOC

Docker 認證(如何為開發者工作)

發佈 2025年1月14日
分享:

什麼是Docker

Docker 是一個免費的開源容器化平台,因此更容易開發、部署和維護應用程式。 它確實只是有點薄,一個實際包含應用程式的輕量事物,其中包含應用程式所依賴的一切; 它需要在盡可能多的情境下運作,從開發者自己的電腦到生產伺服器。 這些容器因共享作業系統而顯著提高了效率和速度。核心與標準虛擬機不同,宿主系統。

Docker 認證(開發人員的工作原理):圖 1

Docker 引擎只是提供生成、管理和共享容器的多家公司之一。 此模型的某個版本甚至被命名為 Docker 映像。 用於共享和存儲容器映像的特殊類型的 Docker 存儲庫是 Docker Hub。 Docker 技術在雲端開發工作流程和 DevOps 中如此受歡迎的主要原因之一是其在可擴展性、可移植性和效率方面的優勢。 Docker 提供兩個版本:個人版和企業版。

什麼是 Docker 證書?

ADocker 證書是一種數位憑證,用於透過 HTTPS 在 Docker 客戶端和 Docker 伺服器(如 Docker 守護程式或 Docker 登錄)之間建立安全的通信。 這是 Docker 的 TLS 配置的一個重要方面,它只允許客戶端和伺服器彼此互動。 當在生產或分散式環境中部署 Docker 時,這是相當有用的。

Docker 證書的功能

TLS/SSL 身份驗證: 它應用 TLS/SSL 證書來驗證客戶端和伺服器,以確保它們來自合法來源。

加密: Docker 透過證書啟用客戶端與服務器端之間的加密數據傳輸。 這些憑證無法被他人閱讀。

雙向驗證: 雙向 TLS 實現了客戶端和服務器之間證書的雙向驗證。 它提供了絕對的安全性,因為在任何數據傳輸之前,必須先驗證任一方的證書。

Docker 中的證書類型

伺服器證書: 它允許客戶端驗證 Docker 守護進程。 伺服器證書已安裝在運行 Docker 的伺服器上。

客户端证书:它是发给发出它的 Docker 客户端,用于在服务器上进行身份验证。 用戶端證書必須由可信的CA簽署。

CA 憑證: 這應該是雙方用來簽署伺服器或客戶端憑證的 CA 憑證,並在雙方之間建立信任關係。

使用自定義憑證授權機構 (CA)

如果我們運行一個自訂 CA,我們將需要讓 Docker 信任此 CA。 我們通常會透過將 CA 憑證儲存在 Docker 主機的 /etc/docker/certs.d//ca.crt 來配置 Docker 指向您的 CA。

我們應該將 CA 憑證貼到 Docker 主機的 /etc/docker/certs.d/<你的 registry>/ca.crt 中。

使用 Docker 與 TLS

可以透過生成伺服器和客戶端證書,然後配置 Docker 使用它們進行通信來保護 Docker 守護程式本身的安全。

生成證書

使用 OpenSSL 生成所需的證書:

openssl genrsa -aes256 -out ca-key.pem 4096
openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
openssl genrsa -aes256 -out ca-key.pem 4096
openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'openssl genrsa -aes256 -out ca-key.pem 4096 openssl req -New -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
VB   C#

Docker 認證(開發者如何使用):圖 2

立即創建客戶端和服務器密鑰及證書:

openssl genrsa -out server-key.pem 4096
openssl req -subj "/CN=your-server" -sha256 -new -key server-key.pem -out server.csr
openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
openssl genrsa -out server-key.pem 4096
openssl req -subj "/CN=your-server" -sha256 -new -key server-key.pem -out server.csr
openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'openssl genrsa -out server-key.pem 4096 openssl req -subj "/CN=your-server" -sha256 -New -key server-key.pem -out server.csr openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
VB   C#

最後,配置 Docker 以使用這些證書:將它們放在正確的目錄中並更正 Docker daemon 配置。

配置 Docker 守护进程

要使用生成的證書,更改 Docker 守護程式的配置:

{
  "tls": true,
  "tlsverify": true,
  "tlscacert": "/etc/docker/ca.pem",
  "tlscert": "/etc/docker/server-cert.pem",
  "tlskey": "/etc/docker/server-key.pem",
  "hosts": ["tcp://0.0.0.0:2376", "unix:///var/run/docker.sock"]
}
{
  "tls": true,
  "tlsverify": true,
  "tlscacert": "/etc/docker/ca.pem",
  "tlscert": "/etc/docker/server-cert.pem",
  "tlskey": "/etc/docker/server-key.pem",
  "hosts": ["tcp://0.0.0.0:2376", "unix:///var/run/docker.sock"]
}
If True Then
  "tls": True, "tlsverify": True, "tlscacert": "/etc/docker/ca.pem", "tlscert": "/etc/docker/server-cert.pem", "tlskey": "/etc/docker/server-key.pem", "hosts": ("tcp://0.0.0.0:2376", "unix:///var/run/docker.sock")
End If
VB   C#

重啟 Docker 守護程序以應用更改。

Docker 認證考試

Docker Certified Associate 是一項全球認可的認證,旨在驗證候選人在 Docker 技能方面的專業知識。 Docker 認證考試包含約 55 題多項選擇和多選題型,這些問題會在此線上監考考試中被提問。(Docker 認證助理認證),應在 90 分鐘內解決。

它包括六個主要領域:協同調度、圖像創建與管理、安裝與配置、網路、安全性和存儲。 雖然沒有嚴格的先決條件,但建議候選人具有至少六個月的 Docker 實際使用經驗,並應具備對容器化應用程序工作流程運作方式的良好理解,Docker 認證的有效期為兩年。

準備工作包括學習 Docker 文檔、練習 CLI 命令、使用 Docker Swarm 和 Docker Compose,並使用模擬考試。 取得 DCA 表示在 Docker 方面展現出熟練程度,並在 DevOps、雲端原生開發和容器編排中帶來更好的職業前景。 若要了解更多有關 Docker 培訓課程的資訊,請查看這裡.

什麼是 IronSecureDoc?

IronSecureDoc 是 Iron Software 最近開發的一款產品,專門設計用於數位安全文檔,特別是 PDF,並且具有相當強大的加密和控制功能。 這將進一步允許組織安裝像 AES-256 這樣的先進加密協議,以確保未經授權的許可無法查看所述的敏感信息。 公司對打印、編輯或複製設有自訂權限和限制,這表示只有授權用戶才能開啟該文件。 密碼保護和數位簽章也能提升文件和浮水印的安全性和完整性。

Docker 認證(它對開發者的運作方式):圖 3 - IronSecureDoc:PDF 安全性和合規性伺服器

IronSecureDoc 對開發者友好,並且可以通過 Docker 或其他程式環境輕鬆整合到應用程式中,因此應能適應許多業務工作流程。 例如,在健康、金融和法律行業中,文件的保密性至關重要。 IronSecureDoc 將結合加密和組織內文件控制的功能,確保文件的安全保管,以便與外部合作夥伴或客戶合規且容易、安全地共享。

證書如何增強IronSecureDoc的安全性

身份验证: 這些證書允許用戶或系統在受保護的文件上進行身份驗證,僅允許授權人員訪問該文件。這對於合規性和內部安全性非常重要,特別是在金融和醫療等受監管行業中。

加密:在公鑰加密中,文件可以使用IronSecureDoc加密,使得只有擁有相應私鑰的人才能打開該加密文件。 因此,無論多麼努力地嘗試,被截取的內容都無法訪問。

數位簽章: 憑證允許進行數位簽名,從而賦予文件來源和完整性。 有效的簽名可以保證文件未被更改,從而增加信任,並滿足數位交易的法律標準。

安裝及運行IronSecureDoc

在命令提示符或開啟的終端視窗中運行以下命令,以從存儲庫中拉取IronSecureDoc Docker映像。

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker pull ironsoftwareofficial/ironsecuredoc
VB   C#

Docker 認證(對開發者的運作方式):圖 4

從 Docker 容器提取映像後,我們可以使用另一個命令來啟動 IronSecureDoc,一個正在運行的容器。

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
VB   C#

上述的 Docker 執行命令將創建一個 IronSecureDoc 的容器實例。

使用 IronSecuredoc

IronSecureDoc 的 REST API 讓用戶可以在安裝和啟動 Docker 時對文件進行編輯、驗證和加密; 這也在其他地方提到過。 這裡是連結至文件。

Docker 認證(對開發者的運作方式):圖 5

例如,要加密文件,您可以向IronSecureDoc API發送POST請求:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'curl -X 'POST' \ 'http: -H 'accept: */ *' \ -H 'Content-Type: multipart/form-data' \ -F 'pdf_file=@test.pdf;type=application/pdf'
VB   C#

這將自動將文件轉發到 IronSecureDoc,在那裡將適當地加密。

結論

Docker 證書和 IronSecureDoc 因此構成了一個全面的安全框架,用於在容器化環境中管理文件。 Docker 憑證促進 Docker 客戶端與服務器之間的加密和身份驗證通信,以確保安全部署和管理像 IronSecureDoc 這樣的容器託管應用程式。 只有受信任的實體能夠訪問和修改 Docker 容器,從而防止在伺服器環境中發生任何未授權的行為。

這由IronSecureDoc支持,可以在其中添加文件特定的安全功能,比如文件加密、實施存取控制,以及通過數位簽章驗證文件的真實性。 結合 Docker 證書和 IronSecureDoc,提供了對基礎設施和儲存敏感數據的完整安全防護。 如需有關許可 IronSecureDoc 的更多資訊,請點擊此處。頁面. 如需了解有關 Iron Software 許多產品的資訊,請參考此連結.

< 上一頁
如何使用 C# 在 Docker 中保護 PDF API
下一個 >
Zabbix Docker(開發人員如何運作)