자체 관리형 배포를 위한 네트워크 및 구성 강화
이 페이지의 내용
전체 MongoDB 시스템의 위험 노출을 줄이려면 신뢰할 수 있는 호스트만 MongoDB에 액세스할 수 있도록 해야 합니다.
MongoDB 구성 강화
IP 바인딩
MongoDB 바이너리 mongod
및 mongos
는 기본값 localhost
에 바인딩됩니다.
경고
공개적으로 액세스할 수 있는 IP 주소 에 인스턴스 를 바인딩하기 전에 무단 액세스 로부터 클러스터 를 보호해야 합니다. 보안 권장 사항의 전체 목록은 자체 관리 배포서버를 위한 보안 체크리스트를 참조하세요. 최소한 인증 을 활성화 하고 네트워크 인프라를 강화하는 것을 고려하세요.
경고
자세한 내용 은 자체 관리 배포서버의 IP 바인딩을 참조하세요.
네트워크 강화
방화벽
방화벽을 통해 관리자는 네트워크 통신을 세부적으로 제어하여 시스템에 대한 액세스를 필터링하고 제어할 수 있습니다. MongoDB 관리자에게는 특정 포트의 수신 트래픽을 특정 시스템으로 제한하고 신뢰할 수 없는 호스트에서 들어오는 트래픽을 제한하는 기능이 중요합니다.
Linux 시스템에서 iptables
인터페이스는 기본 netfilter
방화벽에 대한 액세스를 제공합니다. Windows 시스템에서는 netsh
명령줄 인터페이스를 통해 기본 Windows 방화벽에 액세스할 수 있습니다. 방화벽 구성에 대한 자세한 내용은 방화벽 구성을 참조하세요.
최상의 결과를 얻고 전체 노출을 최소화하려면 신뢰할 수 있는 소스의 트래픽만 mongod
및 mongos
인스턴스에 도달할 수 있고 mongod
및 mongos
인스턴스는 신뢰할 수 있는 출력에만 연결할 수 있도록 합니다.
가상 사설 네트워크
VPN(가상 사설망)을 사용하면 암호화되고 액세스가 제한된 신뢰할 수 있는 네트워크를 통해 두 네트워크를 연결할 수 있습니다. 일반적으로 VPN을 사용하는 MongoDB 사용자는 성능 문제로 IPSEC VPN 대신 TLS/SSL을 사용합니다.
구성 및 구현에 따라 VPN은 인증서 유효성 검사 및 암호화 프로토콜 선택을 제공하므로 모든 클라이언트에 대한 엄격한 수준의 인증 및 식별이 필요합니다. 또한 VPN은 보안 터널을 제공하기 때문에 VPN 연결을 통해 MongoDB 인스턴스에 대한 액세스를 제어하면 변조 및 "중간자(man-in-the-middle)" 공격을 방지할 수 있습니다.
IP 전달 비활성화
IP 전달을 사용하면 서버가 패킷을 다른 시스템으로 전달할 수 있습니다. mongod
를 호스팅하는 서버에서는 이 기능을 비활성화합니다.
Linux에서 IP 전달을 비활성화하려면 sysctl
명령을 사용합니다.
sudo sysctl -w net.ipv4.ip_forward=0
변경 내용을 유지하려면 /etc/sysctl.conf
파일을 편집하여 다음 줄을 추가합니다:
net.ipv4.ip_forward = 0
IP 전달은 Windows 에서 기본값 으로 비활성화되어 있습니다.