iptables를 사용하여 정확한 Docker 컨테이너 포트(예: 7777)를 닫아 인터넷 액세스를 차단하는 방법. 하지만 다른 컨테이너에는 액세스할 수 있어야 합니다.
답변1
iptables
포트 7777에서 들어오는 트래픽을 차단하는 규칙을 설정할 수 있습니다.
iptables -A INPUT -p tcp --dport 7777 -j REJECT
외부 사용자가 ICMP 응답을 받지 못하게 하려면 다음을 수행할 수 있습니다 DROP
.
iptables -A INPUT -p tcp --dport 7777 -j DROP
답변2
여기서 기본 docker 네트워크(docker0)의 컨테이너에 대해 이야기하고 있다고 가정해 보겠습니다.
기본적으로 도커 컨테이너는 도커 호스트 외부에서 액세스할 수 없지만, 컨테이너 간 통신(--icc=true)을 활성화하는 기본 docker-engine 구성에서는 기본 네트워크의 컨테이너가 서로의 포트를 볼 수 있으므로 액세스할 수 없습니다. 다른 포트에 액세스하려면 특별한 구성이 필요하지 않습니다.
따라서 대답은 기본 docker-engine 설치에서 설명하는 내용이 제대로 작동해야 한다는 것입니다. 구성이 다른 경우 수행 중인 작업에 대한 추가 세부 정보가 유용할 것입니다.