Linux/Rocky Linux

Rokcy Linux : firewall 관리 및 사용법

제주도 조랑말 2023. 6. 15. 13:43
728x90

https://mpjamong.tistory.com/130

참고 글

firewalld 서비스 관리

 서비스 시작
[root@localhost ~]# systemctl start firewalld

# 서비스 재시작
[root@localhost ~]# systemctl restart firewalld

# 서비스 중지
[root@localhost ~]# systemctl stop firewalld

# 서비스 등록
[root@localhost ~]# systemctl enable firewalld

# 서비스 상태 확인
[root@localhost ~]# systemctl status firewalld

# firewalld 정책 저장 또는 적용
[root@localhost ~]# firewall-cmd --reload

# firewalld 설정파일 경로
[root@localhost ~]# vi /etc/firewalld/firewalld.conf

 

 

firewalld 존(zone) 관리

 

# 사전 정의된 zone 목록 확인
[root@localhost ~]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work

# 기본 설정 zone 확인
[root@localhost ~]# firewall-cmd --get-default-zone
public

# 기본 zone 변경
[root@localhost ~]# firewall-cmd --set-default-zone=external

# 현재 설정 확인
[root@localhost ~]# firewall-cmd --list-all

# 전체 zone 목록 상세 확인
[root@localhost ~]# firewall-cmd --list-all-zones

# 네트워크 인터페이스에 적용된 zone 리스트 확인 (변경 전)
[root@localhost ~]# firewall-cmd --get-active-zone
external
  interfaces: enp0s8 enp0s3

# 네트워크 인터페이스에 zone 변경
[root@localhost ~]# firewall-cmd --change-interface=enp0s3 --zone=public

# 네트워크 인터페이스에 적용된 zone 리스트 확인 (변경 후)
[root@localhost ~]# firewall-cmd --get-active-zone
external
  interfaces: enp0s8
public
  interfaces: enp0s3

# 신규 zone 추가
[root@localhost ~]# firewall-cmd --permanent --new-zone=test
success

# 기존 zone 삭제
[root@localhost ~]# firewall-cmd --permanent --delete-zone=test
success

 

firewalld 서비스 관리

 

# 사전 등록된 서비스 목록 확인
[root@localhost ~]# firewall-cmd --get-services

# 사전 정의된 서비스 파일 위치
[root@localhost ~]# firewall-cmd --get-services

# 특정 zone에 허용된 서비스 리스트 확인 (서비스 추가 전)
[root@localhost ~]# firewall-cmd --list-service --zone=public
cockpit dhcpv6-client ssh

# 특정 zone에 서비스 추가 (http, https, dns, telnet)
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=http
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=https
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=dns
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=telnet

# 특정 zone에 서비스 삭제 (telnet)
[root@localhost ~]# firewall-cmd --permanent --zone=public --remove-service=telnet

# 서비스 추가 후 서비스 적용을 위해 방화벽 재시작
[root@localhost ~]# firewall-cmd --reload

# 특정 zone에 허용된 서비스 리스트 확인 (서비스 추가 후)
[root@localhost ~]# firewall-cmd --list-service --zone=public
cockpit dhcpv6-client dns http https ssh

 

 

 

firealld 포트(port) 관리

# 허용 포트 리스트 확인 (추가 전)
[root@localhost ~]# firewall-cmd --list-port --zone=public

# 특정 포트 TCP 8080, 8081 추가
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-port=8080/tcp
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-port=8081/tcp

# 특정 포트 TCP 8081 삭제
[root@localhost ~]# firewall-cmd --permanent --zone=public --remove-port=8081/tcp

# 포트 적용을 위한 방화벽 재시작
[root@localhost ~]# firewall-cmd --reload

# 허용 포트 리스트 확인 (추가 후)
[root@localhost ~]# firewall-cmd --list-port --zone=public
8080/tcp

728x90