관리 메뉴

IT창고

CentOS7 - Firewall 설정 본문

서버운영/Linux

CentOS7 - Firewall 설정

방구석여포 2019. 2. 20. 23:09

Firewall에 대해 알아보겠습니다.

CentOS 7은 방화벽이 iptables의 사용이 어려운 단점을 해결하고자 Firewall로 바꿔었습니다. 

CUI에서는 firewall-cmd , GUI에서는 firewall-config 명령어를 사용하여 방화벽 설정을 합니다.


만약 firewall이 없다면 yum -y install firewalld로 설치가 가능합니다.


firewall-cmd --list-all 명령어로 현재 설정된 방화벽 정책들을 확인해볼수있습니다. 


/etc/firewalld/ 디렉토리에 존재하는 firewalld.conf 설정파일 입니다. 여기서 firewall을 설정합니다. 



 zone은 서버의 용도에 맞게 사전에 정의된 네트워크로 현재 어떤 zone이 있는지 확인할수있습니다. 기본적으로 public으로 설정되어있으며 /usr/lib/firewalld/ 디렉토리에 미리 설정된 zone 등이 존재합니다. 방화벽 정책들을 수정한 후 적용하려면 firewall-cmd --reload 명령어로 재시작을 해줘야만 합니다. 


방화벽에 규칙을 설정하는 법을 알아보겠습니다. 

두 가지 방법이 있는데 하나는 firewall-cmd로 바로 규칙을 만들어서 즉시 적용되는 방법으로 대신에 firewall-cmd --reload를 할 경우 규칙들이 사라지는 임시 규칙설정과 

나머지 하나는 firewall-cmd --permanent 명령어로 명령어 사용시 즉시 적용되지는 않지만 firewall-cmd --reload 후에 영구적으로 규칙이 적용이 됩니다. 


예를 들어 82번 tcp포트를 개방하려 합니다. 위와 같이 설정하게 되면 --permanent옵션을 사용하지 않았기에 임시 규칙 적용이 됩니다. 기본적으로 사용되는 zone은 public임으로 public zone을 선택했습니다.

포트를 개방했다면 포트를 삭제하는 법을 간단하게 보면 firewall-cmd --zone=public --remove-port=82/tcp  명령어로 82번tcp포트를 삭제하게 됩니다.


/etc/firewalld/firewalld.conf 파일에서 사용할 zone을 설정할수 있습니다. 설정파일에서 DefaultZone에 사용할 zone을 수정해주면 되며 위의 명령어로 어떤 zone이 있는지 확인할수있으며 자신의 방화벽 설정에 맞는 zone을 선택해서 사용하면 됩니다.


X-Window 환경에서 GUI로 firewall 설정을 위와 같이 할수있습니다. GUI이기 때문에 직관적이고 iptables보다는 쉽게 사용이 가능합니다. 위의 사진에서 런타임 설정이면 임시 규칙이 적용되며 영구적 설정으로도 바뀔수있으며 포트탭에서 직접 개방할 포트를 추가해줄수 있습니다.

'서버운영 > Linux' 카테고리의 다른 글

Alpine Linux 설치 및 활용  (0) 2019.06.12
Linux Log  (0) 2019.03.30
virbr0 인터페이스 제거하기  (0) 2019.01.27
Ubuntu 설치 및 고정IP 설정  (0) 2019.01.08
Reverse Proxy 서버 구축  (0) 2018.09.25
Comments