본문 바로가기

엔지니어/Linux

Firewalld

728x90
반응형

1. Firewalld 란¶
 

Linux 커널 2.2 까지는 ipchains 이라는 패킷 필터링/방화벽 프레임워크가 구현되어 있었고 2.4부터는 더 유연하고 다양한 기능을 가진 netfilter 로 프레임워크가 교체 되었습니다.

iptables 은 netfilter 프레임워크의 최상단에 위치하는 사용자 레벨의 프로그램으로 시스템 관리자는 iptables 명령어로 리눅스 서버로 들어오고 나가는 패킷을 필터링하거나 포트 포워딩을 설정할 수 있으며 방화벽으로도 사용할 수 있습니다.

iptables 는 숙련된 관리자가 아니면 사용이 어려운 단점이 있었는데 이런 문제를 해결하고자 RHEL/CentOS 7 부터는 방화벽을 firewalld 라는 데몬으로 교체하였고 이에 따라 사용자 레벨의 프로그램은 iptables 명령어 대신 명령행에서는 firewall-cmd , GUI 환경에서는 firewall-config 를 사용하게 되었습니다.

 



Linux Firewall 구조


 

2. 영구적 규칙과 정책 재구동

기본적으로 firewall-cmd 로 방화벽 정책을 변경했을 경우 현재 구동되고 있는 firewalld 에 즉시 적용되지만 정책은 지속성이 없이 임시로 적용되며 정책을 재구동하는 명령어인 firewall-cmd --reload 를 실행하거나 시스템을 재부팅하면 예전 정책으로 다시 초기화 되며 이로 인해 서비스의 장애가 발생할 수 있습니다

이때문에 방화벽 정책을 영구적으로 유지하기 위해서는 --permanent 옵션을 추가해서 실행하면 되지만 이는 즉시 적용되지 않고 firewall-cmd --reload 명령어로 방화벽 정책을 재구동하거나 재부팅을 하기 전에는 변경한 방화벽 설정이 적용되지 않습니다.

firewalld 를 처음에 사용할 때 이 때문에 혼란을 겪고 정책 설정을 잘못한 걸로 오해하는 사용자가 많으므로 꼭 익혀 두어야 합니다.

 

3. Zone

Firewalld 에서는 미리 정의해둔 정책 Zone 들이 있는데, 각각 기본적인 정책이 다르며 Zone 은 생성 또는 삭제도 가능합니다.



인터페이스 별로 Zone 설정

 


 

4. Logging


 



기본 target이 drop 이라 drop 되는 패킷을 로깅

 

5. 장점 및 단점

장점


원치 않는 수신 네트워크 패킷은 삭제됩니다. 나가는 네트워크 연결과 관련된 들어오는 패킷이 허용됩니다. 나가는 네트워크 연결이 허용됩니다.

나가는 네트워크 연결과 관련된 들어오는 패킷이 허용이 되는 점이 큰 장점입니다.

 

단점





룰 순서 관리가 힘들다는 단점이 있습니다.

 

6. 결론

All deny 상태에 원하는 포트, IP만 접근제어하는 방식으로 사용하였을때 나가는 네트워크 연결과 관련된 들어오는 패킷이 허용이 되는 점으로 이전에 경험했던 이슈는 없어 접근제어 관리로 적합해보입니다.

 

 

참고자료

https://firewalld.org/documentation/configuration/

https://www.lesstif.com/ws/firewalld-43844015.html

 

반응형