CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

안녕하세요~~~ 하파제이 입니다😊

오늘은 CentOS 7 버전에서 방화벽 설정하는 것에 대해

공유하고자 합니다 😎

내용을 간략하게 준비해보았으니

스크롤 내릴 준비만 하시면 됩니다 😁

1. 현재 방화벽 상태 확인
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi
방화벽 상태 확인
2. 방화벽 Off
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

Active: inactive (dead) : 방화벽 off를 알려주는 문구

enabled : 시스템이 재부팅 될 때 방화벽이 자동 활성화 된다는 설정

(OS reboot시 방화벽 off를 유지해주려면 비활성화 설정 필요)

3. 방화벽 비활성화 (OS Reboot 시 방화벽 off 설정)
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

disabled : OS Reboot 시 방화벽 off 설정

4. 방화벽 On
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

현재 방화벽 Off, 비활성화 상태 확인 후

방화벽 On 해주는 상황 (비활성화 disabled 상태는 유지)

5. 방화벽 활성화 (OS Reboot 시 방화벽 on 설정)
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

방화벽 활성화 enabled 변경된 것을 확인

6. 특정 포트(ex. 1433) 추가 설정
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi
7. 특정 포트(ex. 1433) 삭제 설정
CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

도움이 되셨다면 "🤍 공감" →  "❤ 공감"  버튼 클릭 클릭👍👍👍~!  

감사합니다! 😊

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

윈도우 기반의 서버에서만 작업을 하다, 리눅스 환경에도 적응하기 위해 노력중입니다. MS의 정책도 멀티 플랫폼 기반으로 지속적으로 변경을 요하기 때문에 시대에 맞춰, 윈도우 뿐만 아니라 리눅스 환경도 지속적인 공부가 필요해 보입니다. 리눅스 환경을 셋팅하면서 간혹 잊어버리는 부분을 지속적으로 정리해 봅니다.


1. 방화벽 포트 등록

[root@localhost /]# firewall-cmd --permanent --zone=public --add-port=8080/tcp
success 
[root@localhost ~]# firewall-cmd --reload 
success

2. 방화벽 서비스 해제

[root@localhost /]# systemctl stop firewalld

3. 재부팅시 방화벽 실행하지 않기

[root@localhost /]# systemctl disable firewalld

4. 방화벽에 등록된 포트 리스트 가져오기

[root@localhost ~]# firewall-cmd --list-ports
21/tcp 5000/tcp 5001/tcp 8089/tcp

롯사 by IT feedback

안녕하세요 롯사입니다.

이번 시간은 리눅스 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 ( 서비스 상태 확인 )

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

서비스 시작 / 중지.

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

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

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

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

firewalld 설정 파일 경로


* /usr/lib/firewalld

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

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

확인할 수 있습니다.

* /etc/firewalld/firewalld.conf

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

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

동작과 관련된 사항과 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] ( 존을 삭제합니다.)

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

여기서 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 ( 서비스 재구동 )

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

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

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 ( 서비스 재구동 )

CentOS 7 방화벽 포트 열기 - CentOS 7 banghwabyeog poteu yeolgi

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

리스트를 보여줍니다.

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


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

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