>  기사  >  운영 및 유지보수  >  도커 컨테이너의 방화벽을 끄는 방법

도커 컨테이너의 방화벽을 끄는 방법

PHPz
PHPz원래의
2023-04-17 15:29:318168검색

Docker는 개발자가 애플리케이션을 더 빠르게 구축, 배포 및 실행하는 데 도움이 되는 강력한 컨테이너화 플랫폼입니다. Docker 컨테이너에는 외부 공격으로부터 컨테이너의 애플리케이션을 보호하기 위해 기본적으로 방화벽이 활성화되어 있습니다. 그러나 경우에 따라 Docker 컨테이너의 방화벽을 꺼야 합니다. 이 문서에서는 Docker 컨테이너의 방화벽을 끄는 방법을 설명합니다.

  1. Docker 컨테이너의 방화벽 상태 확인

Docker 컨테이너의 방화벽을 끄기 전에 먼저 Docker 컨테이너의 방화벽 상태를 확인해야 합니다. 다음 명령을 사용하여 Docker 컨테이너의 방화벽 상태를 볼 수 있습니다.

docker inspect 容器ID | grep -i iptables

여기서 "container ID"는 방화벽 상태를 보려는 Docker 컨테이너의 ID입니다.

출력에 다음 줄이 포함되어 있으면 Docker 컨테이너의 방화벽이 활성화된 것입니다.

"Iptables": true,
"Iptables-Status": "Enabled",

출력에 위 줄이 포함되어 있지 않으면 Docker 컨테이너의 방화벽이 꺼진 것입니다.

  1. Docker 컨테이너의 방화벽을 끄세요

Docker 컨테이너의 방화벽을 끄는 방법에는 두 가지가 있습니다.

방법 1: Docker 컨테이너의 기본 iptables 규칙 비활성화

Docker 컨테이너는 기본적으로 iptables를 사용하여 네트워크 트래픽을 관리하며 iptables는 매우 강력한 방화벽 소프트웨어입니다. Docker 컨테이너의 방화벽 기능을 완전히 비활성화하려면 기본 iptables 규칙을 비활성화하면 됩니다. 다음 명령을 사용하여 Docker 컨테이너의 기본 iptables 규칙을 비활성화할 수 있습니다.

docker run --rm --privileged alpine:latest sh -c "echo 'net.ipv4.conf.all.route_localnet=1' >> /etc/sysctl.conf && sysctl -p && iptables -P FORWARD ACCEPT && iptables -F && iptables -X"

이 명령은 Alpine 컨테이너에서 특정 스크립트를 실행하여 Docker 컨테이너의 기본 iptables 규칙을 비활성화합니다. 이 명령은 Docker 컨테이너에 대한 모든 iptables 규칙을 자동으로 지웁니다.

방법 2: Docker 컨테이너의 iptables 규칙 수정

Docker 컨테이너의 특정 iptables 규칙만 끄려면 다음 명령을 사용할 수 있습니다.

docker exec 容器ID iptables -P INPUT ACCEPT

여기서 "컨테이너 ID"는 컨테이너의 ID입니다. 수정하려는 iptables 규칙이 포함된 Docker 컨테이너입니다. 이 명령은 들어오는 트래픽을 허용하여 Docker 컨테이너의 방화벽을 해제합니다.

  1. Docker 컨테이너의 방화벽 상태 확인

위 작업을 완료한 후 Docker 컨테이너의 방화벽 상태를 다시 확인해야 합니다. 첫 번째 단계의 명령을 사용하여 Docker 컨테이너의 방화벽 상태를 볼 수 있습니다. 출력에 다음 줄이 포함되어 있지 않으면 Docker 컨테이너의 방화벽이 성공적으로 꺼진 것입니다.

"Iptables": true,
"Iptables-Status": "Enabled",

요약:

Docker 컨테이너의 기본 방화벽은 외부 공격으로부터 컨테이너를 보호할 수 있지만 경우에 따라 다음을 수행해야 합니다. Docker 컨테이너 방화벽을 끄십시오. Docker 컨테이너의 방화벽을 끄기 전에 Docker 컨테이너의 방화벽 상태를 확인하고 Docker 컨테이너의 방화벽을 비활성화하는 적절한 방법을 선택해야 합니다. 위 작업을 완료한 후 Docker 컨테이너의 방화벽 상태를 다시 확인하여 방화벽이 성공적으로 꺼졌는지 확인해야 합니다.

위 내용은 도커 컨테이너의 방화벽을 끄는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.