Docker 비밀은 안전합니까?

Docker 비밀은 안전합니까?

Docker 비밀이 안전한 것으로 간주되므로 보안 수준이 궁금합니다. 예상대로 비밀에 대한 서비스 액세스 권한을 부여하면 /var/lib/docker/containers/<container ID>/mounts/secrets서비스 작업을 호스팅하는 노드의 컨테이너 경로( )에 tempfs가 마운트되는 것을 볼 수 있습니다. 그러나 이 경로 안에 있는 파일을 cat하여 비밀 내용을 볼 수 있었습니다.

그 시점에서 나는 구성보다 비밀을 더 안전하게 만드는 것이 무엇인지 궁금했습니다. 내가 아는 한 RAM 디스크에 저장된다는 사실이 RAM 디스크와 구성 간의 주요 차이점입니다. 구성과 비밀은 모두 래프트 내에서 암호화됩니다. 유일한 차이점은 구성이 RAM 디스크에 있는 비밀과 달리 컨테이너에 마운트되는 동안 디스크의 파일에 저장된다는 것입니다. 하지만 비밀의 내용을 볼 수 있다면 정말 차이가 있을까요?

답변1

안타깝게도,안전하다불안한 용어가 아닙니다. 나는 오히려 그것에 대해 이야기하고 싶습니다위험 평가그리고위험 수용. 모든 것은 질문에 답하는 것, 당신이 얼마나 편집증적인 사람인지에 관한 것입니다. 어떤 종류의 솔루션이 안전하다고 주장합니까?

문서에 따르면,우리는:

Swarm에 비밀을 추가하면 Docker는 상호 TLS 연결을 통해 Swarm 관리자에게 비밀을 보냅니다. 비밀은 암호화된 Raft 로그에 저장됩니다. 전체 Raft 로그는 다른 관리자에 복제되어 나머지 떼 관리 데이터와 마찬가지로 비밀에 대한 동일한 고가용성을 보장합니다.

비밀 가용성.컨테이너당일시적인 것. 컨테이너가 실행되고 있는 노드를 전혀 알 수 없으므로 크게 신경 쓰지 않아도 됩니다. 즉, 이 비밀은 컨테이너가 실행되는 모든 곳에서 사용할 수 있어야 합니다.

기억 속의 비밀.비밀을 기억 속에 간직하는 것에 관한 일종의 글이 있습니다.여기. 문제는... 시스템과 메모리 관리를 신뢰하지 않으면 메모리에 저장된 비밀번호보다 훨씬 더 큰 문제가 있다는 것입니다.

차이점.

  • 파일의 비밀은 일반적으로 일반 텍스트로 유지됩니다.wp-config지속적으로 암호화된 상태로 유지하고 메모리에만 암호화되지 않은 상태로 유지하는 것이 훨씬 더 좋습니다.
  • 비밀은 다음과 같아야합니다회전.

달성할 수 있다고 합니다거의마찬가지로 비밀 파일을 암호화된 상태로 유지하면 됩니다.openssl, 이를 해독하고 암호화되지 않은 콘텐츠를 메모리에 저장합니다. 수동으로 수행하는 모든 작업입니다.

관련 정보