1.2 Firewalld 구성(Directories, firewallld.conf)
Directories
/usr/lib/firewalld
ICMP TYPES, Service, Zone에 대해 Firewalld에서 제공하는 구성 설정 파일이 있으며 이에 대한 추가적인 설정은 패키지가 따로 제공되거나 파일을 생성해서 사용가능합니다.
/usr/firewalld
시스템 또는 사용자 구성 파일이 존재하는 곳이며 시스템 관리자 또는 Firewalld 구성 인터페이스를 사용해 사용자가 직접 정의 하거나 생성이 가능합니다.
만약 별다른 구성이 없으면 기본설정(firewalld.conf)을 사용하게 됩니다.
Runtime VS Permanent
Runtime
실제로 적용고 사용되고있는 구성이며 서비스가 시작되면 영구 구성을 런타임 구성으로 가져와 사용하게 됩니다.
서비스 시작뿐만 아니라 서비스 reload를 할 때도 똑같으며 이와 같은 경우에는 아래와 같은 형태로 진행이 됩니다.
Permanent
영구적으로 설정되는 구성으로 구성파일에 따로 저장되어 사용될 때 로드됩니다.
보통 Booting 될 때나 Reload시에 새로운 런타임 구성을 덮어씌울때 사용되는 구성이며 런타임 구성에서 영구 구성으로 마이그레이션하는 명령어는 아래와 같습니다.
firewall-cmd --runtime-to-permanent
Firewalld.conf
개념
Firewalld의 기본 구성을 제공하는 파일로 만약 파일이 존재하지 않거나 누락된 경우 firewalld내부의 기본값을 사용하게 되있습니다.
DefaultZone
Interface가 다른 Zone에 명시가 안되있을 경우 여기 설정해 놓은 DefaultZone에 속하게 됩니다.
MinimalMark
더 이상 사용되지 않는 옵션입니다.
CleanupOnExit
no 또는 false로 설정시 firewalld configuration이 종료나 중지시 정리되지 않습니다.
기본설정 : yes
Lockdown
활성화를 시키게 되면 D-Bus 인터페이스를 사용한 방화벽 변경이 불가능 하게되며 lockdown-whitelist.xml 파일에 나열되어있는 애플리케이션으로 설정이 제한됩니다.
기본설정 : no
IPv6_rpfilter
IPv6용 역방향 경로 필터 테스트를 수행 할건지 확인하는 옵션입니다.
패킷의 응답 패킷이 도착했을 때 보낸곳과 도착한 곳의 인터페이스 같을시 Permit 아니라면 Drop을 수행하는 기능이고 IPv4전용은 sysctl로 제어하게 됩니다.
기본설정 : yes
Individual Calls
비활성화시 방화벽에 설정 저장을 하게되면 combined(결합된) -restore 호출이 사용됩니다
만약 활성화 해서 사용하게되면 데몬의 시작시간이 증가하지만 오류메시지가 구체적이여서 디버깅에 좋습니다.
기본설정 : no
Log Denied
거부 된 패킷에 대한 로깅을 설정 할 수있으며 기본 규칙 체인의 거부 및 삭제 규칙 앞에 로깅 규칙을 추가 할 수있습니다.
Firewalld.conf 파일 뿐아니라 명령어로도 설정이 가능하며 명령어는 아래와 같습니다.
firewall-cmd --set-log-denied=<value>
사용가능 값 : all, unicast, broadcast, multicast, off
기본설정 : off
AutomaticHelpers
더 이상 사용되지 않는 옵션입니다.
FirewallBackend
방화벽의 백엔드 구축 방법을 선택 할 수있습니다. (1.1 개념 및 특징 <그림 1> Firewalld 계층과 구조 참고)
사용가능 값 : nftables, iptables
기본설정 : nftables
FlushAllOnReload
활성화시 reload를 사용하면 모든 런타임 규칙을 Flush 하게 되고 비활성화시 런타임 구성이 유지됩니다.
기본설정 : yes
RFC3964_IPv4
라우팅되지 않아야 하는 IPv4주소에 해당하는 6to4 대상 주소를 사용하게 되고 이 조건에 맞는 IPv6 트래픽을 필터링 하게 됩니다.
- 6to4
Automatic Tunnel이라고도 불리며 IPv6 헤더의 목적지 IPv6 주소에서 Tunnel Destination 으로 사용 할 수 있 는 IPv4 주소를 구하는 것
기본설정 : yes
AllowZoneDrifting
이전 버전의 firewalld에서는 “Zone drifting” 이라는 동작이 존재 했고 이 동작은 여러 Zone에서 패킷이 수신 되는 행위를 말합니다.
이는 영역(Zone)기반 방화벽에 어긋나는 행위이지만 일부 사용자들은 “Default-Zone”과 같은 “Catch-all” Zone을 갖기위해 설정을 만들게 되었습니다.
Yes로 설정 할 경우 패킷은 source-based-zone에서 interface-based-zone 으로만 drifting 하게 됩니다.
패킷은 interface-based-zone 에서 다른 interface-based-zone으로 drifting 하지 않습니다.
기본설정 : yes
'방화벽 > Firewalld' 카테고리의 다른 글
1.3 Firewalld 구성 도구(firewall-cmd, Firewall-offline-cmd 등) (0) | 2020.10.09 |
---|---|
1.1 Firewalld 개념 및 특징 (0) | 2020.09.29 |