자체 관리형 배포서버를 위한 네트워크 및 구성 강화
이 페이지의 내용
전체 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에서 기본적으로 비활성화되어 있습니다.