7.13. firewalld를 사용하여 IP 세트 설정 및 제어
IP 세트는 보다 유연하고 효율적인 방화벽 규칙 관리를 위해 IP 주소 및 네트워크를 세트로 그룹화하는 RHEL 기능입니다.
예를 들어 필요한 경우 IP 세트는 시나리오에서 중요합니다.
- 대규모 IP 주소 목록 처리
- 이러한 대규모 IP 주소 목록에 대한 동적 업데이트 구현
- 사용자 지정 IP 기반 정책을 생성하여 네트워크 보안 및 제어 강화
Red Hat은 firewall-cmd
명령을 사용하여 IP 세트를 생성하고 관리하는 것이 좋습니다.
7.13.1. IP 세트를 사용하여 허용 목록에 대한 동적 업데이트 구성
예측할 수 없는 조건에서도 IP 세트의 특정 IP 주소 또는 범위를 유연하게 허용하도록 거의 실시간 업데이트를 수행할 수 있습니다. 이러한 업데이트는 보안 위협 탐지 또는 네트워크 동작 변경과 같은 다양한 이벤트에 의해 트리거될 수 있습니다. 일반적으로 이러한 솔루션은 자동화를 활용하여 수동 작업을 줄이고 상황에 신속하게 대응하여 보안을 개선합니다.
사전 요구 사항
-
firewalld
서비스가 실행 중입니다.
절차
의미 있는 이름으로 IP 세트를 생성합니다.
# firewall-cmd --permanent --new-ipset=allowlist --type=hash:ip
allowlist
라는 새 IP 세트에는 방화벽에서 허용할 IP 주소가 포함되어 있습니다.IP 세트에 동적 업데이트를 추가합니다.
# firewall-cmd --permanent --ipset=allowlist --add-entry=198.51.100.10
이 구성은 방화벽에서 네트워크 트래픽을 전달할 수 있는 새로 추가된 IP 주소로
허용 목록
IP 세트를 업데이트합니다.이전에 생성한 IP 세트를 참조하는 방화벽 규칙을 생성합니다.
# firewall-cmd --permanent --zone=public --add-source=ipset:allowlist
이 규칙이 없으면 IP 세트가 네트워크 트래픽에 영향을 미치지 않습니다. 기본 방화벽 정책이 우선합니다.
방화벽 구성을 다시 로드하여 변경 사항을 적용합니다.
# firewall-cmd --reload
검증
모든 IP 세트를 나열합니다.
# firewall-cmd --get-ipsets allowlist
활성 규칙을 나열합니다.
# firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: enp0s1 sources: ipset:allowlist services: cockpit dhcpv6-client ssh ports: protocols: ...
명령줄 출력의
소스
섹션에서는 특정 방화벽 영역에 대한 액세스 허용 또는 거부되는 트래픽(호스트, 인터페이스, IP 세트, 서브넷 등)에 대한 인사이트를 제공합니다. 이 경우허용 목록
IP 세트에 포함된 IP 주소는공용
영역의 방화벽을 통해 트래픽을 전달할 수 있습니다.IP 세트의 내용을 살펴봅니다.
# cat /etc/firewalld/ipsets/allowlist.xml <?xml version="1.0" encoding="utf-8"?> <ipset type="hash:ip"> <entry>198.51.100.10</entry> </ipset>
다음 단계
-
스크립트 또는 보안 유틸리티를 사용하여 위협 정보 피드를 가져오고 이에 따라
허용 목록을
자동화된 방식으로 업데이트합니다.
추가 리소스
-
firewall-cmd(1)
매뉴얼 페이지