이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 7537|회답: 4

Docker 컨테이너가 인터넷(엑스트라넷)에 접근하는 것을 금지하기

[링크 복사]
2022-12-14 22:53:18에 게시됨 | | | |
요구사항: 개인 홈 앨범 시스템은 Docker 컨테이너를 사용해 구축되었으며, Docker 이미지는 제3자 개발자가 개발한 것이므로 집 LAN에서의 접근과 보기만 제한됩니다. 보안 문제인지 모르겠습니다개인정보 침해 발생이 문제를 더 잘 해결하기 위해, 도커 컨테이너가 인터넷(외부 네트워크)에 접근하는 것을 금지하여 프라이버시 보장을 추가하고자 합니다.

CentOS 7은 IP가 서버에 접근하는 것을 금지합니다
https://www.itsvse.com/thread-10264-1-1.html

iptables 방화벽은 특정 IP만 특정 포트와 특정 웹사이트에 접근할 수 있도록 허용합니다
https://www.itsvse.com/thread-2535-1-1.html

CentOS7 뷰 및 방화벽 끄기
https://www.itsvse.com/thread-7771-1-1.html

이 글은 CentOS7 시스템, Docker 버전 20.10.20을 사용하며, nginx 이미지를 사용해 테스트를 제공합니다.

인터넷 접속(엑스트라넷)은 기본적으로 허용됩니다

웹 서비스를 제공하는 새로운 nginx 컨테이너를 생성하세요.18080 포트 접근, 컨테이너는 기본적으로 인터넷(외부 네트워크)에 접속할 수 있으며, 명령어는 다음과 같습니다:

컨테이너에 들어가 curl 명령어를 통해 이 사이트의 자원을 요청하세요. 이 명령어는 아래 그림과 같이 일반적으로 얻을 수 있습니다:



Docker 컨테이너가 인터넷 접속을 차단하는 방법 (extranet)

먼저, 도커를 통해 커스텀 네트워크를 만들고 가상 네트워크 카드를 다음 명령어로 만들어야 합니다:



iptables를 통해 가상 NIC에 다음 명령어로 인터넷 접속을 금지하는 규칙을 설정하세요:

iptables 서비스가 제공되든 없든, 방화벽이 켜져 있든 아니든,명령어에 의해 추가된 iptables 규칙은 즉시 적용됩니다!!!

참고: 이 계획은 적절합니다서로 다른 컨테이너가 같은 네트워크에 합류하면 컨테이너끼리 통신할 수 없게 됩니다!!!!

아래에 표시된 DOCKER-USER 규칙을 살펴보세요:



새로운 nginx 컨테이너를 다시 생성하세요. 컨테이너는 웹 서비스를 제공하며,18081 포트는 외부 세계에 서비스를 제공하며, 컨테이너는 인터넷(공용 네트워크) 접속이 금지되어 있습니다. 명령은 다음과 같습니다:



우리는 목표를 달성했지만,서버를 재시작하면 iptables에서 만든 규칙들이 사라집니다서버가 재시작된 후 어떻게 자동으로 커스텀 규칙을 불러올 수 있나요?

iptables-save 명령어는 리눅스 커널의 iptables 테이블을 표준 출력 벤더로 내보내는 데 사용되며, 보통 셸의 I/O 리디렉션 함수를 사용해 출력을 지정된 파일에 저장합니다.

기존 iptables 규칙을 저장하세요

부팅 시 restore iptables 규칙을 추가하고, 부팅 파일은 /etc/rc.d/rc.local입니다. 파일을 편집한 후 마지막에 다음 명령을 추가하세요:

마지막으로, 다음 명령어로 실행 권한을 추가하세요:

설정이 완료된 후에도 iptables 규칙은 서버를 재시작해도 여전히 적용됩니다.

Docker의 모든 컨테이너는 인터넷(extranet) 접속이 금지되어 있습니다.검사 안 했어, 명령어는 다음과 같습니다:

(끝)






이전의:자산 파일 "project.assets.json"를 찾을 수 없습니다. NuGet 패키지 복원을 실행하세요...
다음:BBR, BBRplus vs BBR2 일반 네트워크 속도 비교
2022-12-16 21:14:15에 게시됨 |
배우세요
 집주인| 2023-1-2 17:43:19에 게시됨 |
사건은 다음과 같습니다:

【실용 전투】소프트 라우팅이 있는 Gitea 개인 Git 저장소를 구축하세요
https://www.itsvse.com/thread-10403-1-1.html


2023-4-7 18:55:08에 게시됨 |
이 기능은 매우 중요하니 직접 배우러 오세요
2023-4-21 12:00:24에 게시됨 |
공유해 주셔서 감사합니다, 배웠습니다.
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com