본문 바로가기
IT 학습 공간 ::)

Centos7/RHEL 리눅스 방화벽 설정 ( 포트 열기 / 포트 확인 )

by 에스타롯사 2019. 5. 16.

안녕하세요 롯사입니다.

 

이번 시간은 리눅스 Centos7의 방화벽에 대해서 알아보는 시간을 갖겠습니다

 

Centos 6.x 버전 때 까지는 iptables 가 방화벽 일부의 역할을 하였다면 Centos7 버전부터는

 

iptables 위에 firewalld라는 보안적으로 한층 더 업그레이드된 방화벽이 기본으로 탑재됩니다.

 

보통 설정할 때 명령어는 firewall-cmd의 형태를 띠고 있으며 --direct 옵션을 사용하면 iptables처럼

 

내부에 접근해서 설정도 가능합니다.

 

 

 

그럼 하나하나 살펴보도록 하겠습니다.

 

 

 

firewalld 서비스 구동 명령어


* systemctl start firewalld ( 서비스 시작 )

* systemctl enable firewalld ( 재부팅 시 자동 시작 )

 

* systemctl stop firewalld ( 서비스 중지 )

* systemctl disable firewalld ( 재부팅 시 자동 중지 )

 

* systemctl status firewalld ( 서비스 상태 확인 )

 

서비스 시작 / 중지.

재부팅 자동 등록 / 자동중지 

firewalld를 firewalld.service로 바꾸어 입력하셔도 동일하게 동작합니다.

 

active ( running ) 상태로 정상적으로 동작하고 있는 상태입니다.

 

 

 

firewalld 설정 파일 경로


* /usr/lib/firewalld

기본적으로 지원하고 있는 zone과 생성된 zone을 확인할 수 있으며 해당하는 zone에 등록된 서비스 등을

확인할 수 있습니다.

 

 

* /etc/firewalld/firewalld.conf

* firewall-cmd --reload ( 방화벽 서비스 재구동 )

동작과 관련된 사항과 default zone 설정들을 변경할 수 있습니다.

설정에 관한 내용들을 변경하였다면 반드시 재시작을 해주어야 정상적으로 반영이 됩니다.

서비스가 운영 중인 서버에서는 systemclt restart firewalld 보다 firewall-cmd --reload를 권장드립니다.

 

 

 

firewalld zone 출력


* firewall-cmd --list-all-zones ( 전체 정의된 존 목록을 정확하게 출력합니다.)

firewall-cmd --get-zones ( 사전 정의된 존 목록을 출력합니다.)

* firewall-cmd --get-default-zone ( 기본 존을 출력합니다.)

firewall-cmd --get-active-zone ( 활성화된 존 목록을 출력합니다.)

* firewall-cmd --permanent --new-zone=[zone name] ( 새로운 이름을 작성하여 존을 추가합니다.)

firewall-cmd --permanent --delete-zone=[zone name] ( 존을 삭제합니다.)

 

여기서 zone이라는 것은??

서버의 용도에 맞게 정책이나 설정들을 달리 한 신뢰적인 레벨 등급이라고 생각하시면 되겠습니다.

 

 

 

firewalld zone 서비스 추가/삭


firewall-cmd --get-services ( 사전에 정의된 서비스 목록을 출력합니다. )

* firewall-cmd --list-all ( 사전에 정의된 목록을 출력합니다.)

firewall-cmd --permanent --list-all --zone=public ( public zone에 등록된 서비스를 확인합니다.)

firewall-cmd --permanent --zone=public --add-service=ftp ( public zone에 ftp 서비스를 추가합니다.)

firewall-cmd --permanent --zone=public --remove-service=ftp ( public zone에 ftp 서비스를 삭제합니다.)

* firewall-cmd --reload ( 서비스 재구동 )

 

변경하고 항상 서비스 재구동을 해주셔야 정상적으로 등록됩니다.

 

 

firewalld zone 포트 추가/삭제


* firewall-cmd --permanent --zone=public --add-port=23/tcp ( public zone에 23번 포트 추가 )

* firewall-cmd --permanent --zone=public --remove-port=23/tcp ( public zone에 23번 포트 제거 )

* firewall-cmd --list-port ( 정의된 서비스 포트 목록 출력 )

firewall-cmd --permanent --list-all --zone=public ( public zone에 등록된 서비스 목록 출력 )

* firewall-cmd --reload ( 서비스 재구동 )

 

firewall-cmd --list-all과 같이 영역을 따로 지정해 주지 않는 경우에는 설정되어 있는 기본 영역의

리스트를 보여줍니다.

그리고 설정 변경 후에는 항상 서비스 재구동 잊지 마시기 바랍니다.

 

 


 

항상 반복 반복하는 습관 잊지 마시고요

 

오늘 포스팅은 여기서 마치겠습니다.