Docker iptables 방화벽 구성
Docker iptables 방화벽 구성
Docker가 iptables를 사용해 컨테이너 네트워킹을 제어하는 방법과, iptables 방화벽 규칙을 관리하는 방법을 설명한 문서예요.
본문
Docker는 컨테이너 네트워크 격리와 포트 게시를 위해 iptables를 자동으로 사용해요. 이 문서는 그 동작을 이해하고 iptables 기반 방화벽에서 Docker와 올바르게 상호작용하는 방법을 안내해요.
Docker가 만드는 규칙
- Docker는 브리지 네트워크의 포워딩, 포트 게시(DNAT), 호스트 방화벽 통합을 위해
FORWARD,NAT체인에 규칙을 추가해요. - 게시된 포트는 DOCKER 체인에서 호스트 포트에서 컨테이너 IP/포트로의 변환 규칙으로 구현돼요.
방화벽과의 상호작용
- 호스트에 방화벽(iptables 정책)이 있으면 Docker 규칙과 충돌할 수 있어요.
FORWARD체인 정책이 DROP이면 컨테이너 간/외부 통신이 막힐 수 있어요. Docker는 이에 대응하기 위해 규칙을 추가하지만, 방화벽 관리 툴과 함께 쓸 때 주의가 필요해요.
Docker iptables 비활성화
daemon.json에서 "iptables": false로 설정하면 Docker가 규칙을 만들지 않아요. 단, 그 경우에는 포트 게시나 컨테이너 네트워킹을 위해 수동으로 규칙을 관리해야 해요.
방화벽과 Docker를 함께 사용할 때 트래픽이 예상대로 흐르게 하려면 이 문서의 지침을 확인하세요.