Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

5.12. firewalld를 사용하여 IP 세트 설정 및 제어

firewalld 에서 지원하는 IP 세트 유형 목록을 보려면 root로 다음 명령을 입력합니다.
~]# firewall-cmd --get-ipset-types
hash:ip hash:ip,mark hash:ip,port hash:ip,port,ip hash:ip,port,net hash:mac hash:net hash:net,iface hash:net,net hash:net,port hash:net,port,net

5.12.1. 명령줄 클라이언트를 사용하여 IP 설정 옵션 구성

IP 세트는 firewalld 영역에서 소스로 사용할 수도 있고 리치 규칙의 소스로도 사용할 수 있습니다. Red Hat Enterprise Linux 7에서 기본 방법은 직접 규칙에 firewalld 로 생성된 IP 세트를 사용하는 것입니다.
영구 환경에서 firewalld 에 알려진 IP 세트를 나열하려면 다음 명령을 root 로 사용하십시오.
~]# firewall-cmd --permanent --get-ipsets
새 IP 세트를 추가하려면 영구 환경을 root 로 사용하여 다음 명령을 사용하십시오.
~]# firewall-cmd --permanent --new-ipset=test --type=hash:net
success
이전 명령은 test 라는 이름과 IPv4 에 대한 hash:net 유형으로 새 IP 세트를 생성합니다. IPv6 에 사용할 IP 세트를 만들려면 --option=family=inet6 옵션을 추가합니다. 런타임 환경에서 새 설정을 적용하려면 firewalld 를 다시 로드합니다. 다음 명령을 root 로 사용하여 새 IP 세트를 나열합니다.
~]# firewall-cmd --permanent --get-ipsets
test
IP 세트에 대한 자세한 내용을 보려면 root 로 다음 명령을 사용하십시오.
~]# firewall-cmd --permanent --info-ipset=test
test
type: hash:net
options:
entries:
현재 IP 세트에는 항목이 없습니다. 테스트 IP 세트에 항목을 추가하려면 root 로 다음 명령을 사용하십시오.
~]# firewall-cmd --permanent --ipset=test --add-entry=192.168.0.1
success
이전 명령은 IP 주소 192.168.0.1 을 IP 세트에 추가합니다. IP 세트의 현재 항목 목록을 가져오려면 다음 명령을 root 로 사용합니다.
~]# firewall-cmd --permanent --ipset=test --get-entries
192.168.0.1
IP 주소 목록이 포함된 파일을 생성합니다. 예를 들면 다음과 같습니다.
~]# cat > iplist.txt <<EOL
192.168.0.2
192.168.0.3
192.168.1.0/24
192.168.2.254
EOL
IP 세트의 IP 주소 목록이 있는 파일에는 행당 항목이 포함되어야 합니다. 해시, 부분 또는 빈 줄로 시작하는 줄은 무시됩니다.
iplist.txt 파일에서 주소를 추가하려면 다음 명령을 root 로 사용하십시오.
~]# firewall-cmd --permanent --ipset=test --add-entries-from-file=iplist.txt
success
IP 세트의 확장 항목 목록을 보려면 다음 명령을 root 로 사용합니다.
~]# firewall-cmd --permanent --ipset=test --get-entries
192.168.0.1
192.168.0.2
192.168.0.3
192.168.1.0/24
192.168.2.254
IP 세트에서 주소를 제거하고 업데이트된 항목 목록을 확인하려면 root 로 다음 명령을 사용하십시오.
~]# firewall-cmd --permanent --ipset=test --remove-entries-from-file=iplist.txt
success
~]# firewall-cmd --permanent --ipset=test --get-entries 192.168.0.1
IP 세트를 영역에 소스로 추가하여 영역으로 IP 세트에 나열된 주소에서 들어오는 모든 트래픽을 처리할 수 있습니다. 예를 들어 테스트 IP 세트를 드롭다운 영역에 소스로 추가하려면 테스트 IP 세트에 나열된 모든 항목에서 들어오는 모든 패킷을 삭제하려면 root 로 다음 명령을 사용합니다.
~]# firewall-cmd --permanent --zone=drop --add-source=ipset:test
success
소스의 ipset: 접두사에는 소스가 IP 주소 또는 주소 범위가 아닌 firewalld 가 표시됩니다.
IP 세트 생성 및 제거만 영구 환경으로 제한되며, --permanent 옵션 없이 런타임 환경에서 다른 모든 IP 세트 옵션도 사용할 수 있습니다.