linux/CentOS

CentOS 7 firewall 방화벽 설정

IT공부 2020. 4. 1. 23:24
반응형

◎ 방화벽 설정 시 주의 사항​

 

- 아래의 안내 예제를 그대로 따라하시면 방화벽 설정 오류 및 각종 서비스의 통신에 문제가 발생할 수 있습니다. 설정을 참고 하시어 사용하시는 서비스에 맞게 설정 바랍니다.

 

- ​CentOS 7에서는 기본 방화벽이 Firewalld 데몬으로 변경되어 명령어 및 설정이 다르므로 본인의 서버 OS 버전에 맞게 설정 바랍니다.

 

 

 

 

◎ CentOS 7에서 firewalld 방화벽 설정 방법​​

 

 

1. firewalld 설치 확인 및 설치 방법

 

- CentOS 7 Minimal 설치 시 firewalld 데몬이 설치되어 있습니다. 

 

(1) firewalld 설치 확인

# rpm -qa | grep firewalld

 

 

(2) firewalld 설치가 되어 있지 않으시면 firewalld 데몬을 설치 하시길 바랍니다.

# yum install -y firewalld

 

 

 

2. firewalld 시작 및 중지, 시작 등록, 정책 확인 방법

 

(1) firewalld 데몬 시작 및 중지

 

- firewalld 데몬 시작

# systemctl start firewalld

(주의) 기본으로 22번 포트만 허용되어 있으므로 서비스 중인 포트가 있다면 미리 iptables에 포트 허용(3. 포트 및 IP 허용, 차단 설정 및 저장 방법)을 진행하신 후 서비스 시작하시길 바랍니다.

- firewalld 데몬 중지

# systemctl stop firewalld

 

(2) 서버 부팅 시 firewalld 데몬 자동 시작 설정

# systemctl enable firewalld

 

(3) firewalld 설정 정보 확인

# firewall-cmd --zone=public --list-all

 

 

 

 

(위 그림과 같이 22번 포트 SSH, dhcpv6-client는 기본으로 허용되어 있으며, 나누미넷 서버호스팅 서버를 사용하시는 경우 기본으로 22, 21, 20, 80, 443, 3306, 161 등의 포트는 허용 설정되어 있습니다.)

 

 

3. firewalld 포트 및 IP 허용, 차단, 삭제, 설정 적용 방법 

- vi편집기를 통해 방화벽 구성파일(/etc/firewalld/zones/public.xml)을 수정하여 정책 등록, 수정, 삭제를 가능하며, 아래는 명령어를 사용하는 방법입니다.

 

(1) 특정 포트 허용 방법

# firewall-cmd --permanent --zone=public --add-port=포트번호/tcp

(포트번호에 원하는 서비스 포트번호로 입력하고 UDP의 경우에 tcp를 udp로 변경하시길 바랍니다.)

 

 

(2) 특정 IP 허용 방법

- 모든 서비스에 대해 특정 IP주소 허용

# firewall-cmd --permanent --add-source=IP주소

(IP주소에 원하는 IP로 변경하시길 바랍니다.)

 

- 특정 포트에 대해 특정 IP주소 허용

# firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="IP주소" port protocol="tcp" port="포트번호" accept"

(IP주소  포트번호에 원하는 IP 및 포트번호로 입력하고 프로토콜이 UDP의 경우에 tcp를 udp로 변경하시길 바랍니다.)

 

 

(3) 특정 IP 차단 방법

# firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="IP주소" drop"

(IP주소에 원하는IP로 변경하시길 바랍니다.)

 

- 특정 포트에 대해 특정 IP주소 차단

# firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="IP주소"port protocol="tcp" port="포트번호" drop"

(IP주소  포트번호에 원하는 IP 및 포트번호로 입력하고 프로토콜이 UDP의 경우에 tcp를 udp로 변경하시길 바랍니다.)

 

 

(4) 정책 삭제 방법

# firewall-cmd --permanent --remove-port=포트번호/tcp

(포트번호  tcp는 등록되어 있는 설정 대로 입력바랍니다.)

 

 

(5) firewall 설정 적용 방법

# firewall-cmd --reload

(주의) firewall 설정 후 reload 하지 않으면 적용이 되지 않습니다.

 

 

 

 

5. firewalld 설정 예제

 

- HTTP(TCP 80) 포트를 허용하는 예제입니다.

 

(1) 정책 등록

# firewall-cmd --permanent --zone=public --add-port=80/tcp

 

- firewalld 설정 적용

# firewall-cmd --reload

 

- iptbles 설정 정보 확인

# firewall-cmd --zone=public --list-all

 

(HTTP 80 포트가 허용된 것을 확인 할 수 있습니다.)

 

 

 

'linux > CentOS' 카테고리의 다른 글

가상호스트(virtual host)란?  (2) 2020.06.16
[CentOS7 APM 설치]  (0) 2020.06.16
CentOS7 - APM 웹서버 구축  (0) 2020.04.01
CentOS 6 초기 세팅(2)  (0) 2020.03.15
CentOS7 - 초기 세팅(2)  (0) 2020.03.15