본문 바로가기
IT/linux

Linux firewalld 포트 허용 설정하기

by 방구석꼰머 2022. 9. 8.
반응형

Linux에서는 firewalld 라는 방화벽을 기본으로 제공합니다.

이번 포스팅에서는 Linuxfirewalld 사용시 특정 포트를 허용하는 방법에 대해 알아보도록 하겠습니다.

 

이 포스팅은 Red Hat Enterprise Linux release 8.5 에서 테스트한 내용을 기반으로 작성하였습니다.

 

 


1. firewalld 상태 확인하기

먼저 firewall-cmd --state 명령을 통해 firewalld 의 상태를 확인합니다.

# firewall-cmd --state
running

 

not running 이 표시되면 중지 상태이므로 systemctl start firewalld 명령으로 firewalld 를 기동 합니다.

# systemctl start firewalld

# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2022-09-08 21:23:01 KST; 16s ago
     Docs: man:firewalld(1)
 Main PID: 16441 (firewalld)
    Tasks: 2 (limit: 11231)
   Memory: 23.8M
   CGroup: /system.slice/firewalld.service
           └─16441 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork --nopid

Sep 08 21:23:01 server1 systemd[1]: Starting firewalld - dynamic firewall daemon...
Sep 08 21:23:01 server1 systemd[1]: Started firewalld - dynamic firewall daemon.
Sep 08 21:23:01 server1 firewalld[16441]: WARNING: AllowZoneDrifting is enabled. This is considered

 

기동 상태가 확인되면 firewall-cmd --get-active-zones 명령으로 firewalld 의 active-zone을 확인합니다.

# firewall-cmd --get-active-zones
public
  interfaces: ens160 ens224

active-zone 은 public 이며 , 해당되는 인터페이스가 표시됩니다.

 

 

반응형

 

2. 포트 허용 설정하기

포트 허용은 firewall-cmd 명령에 다음의 옵션을 조합하여 수행합니다.

 

“--zone=” : 룰을 활성화할 zone을 지정합니다.

firewall-cmd --get-active-zones 으로 확인한 zone을 지정합니다. 해당옵션이 없으면 default zone이 지정됩니다.

 

“--permanent” : 룰을 영구적으로 활성화합니다. 다만, firewall-cmd --reload 을 수행해야만 룰이 반영됩니다

해당 옵션이 없으면 룰은 즉시 반영되지만 firewalld가 재시작되기 전까지만 유지됩니다.

 

“--add-port=” : 허용할 포트를 지정합니다.

 

81번 포트를 public zone에 영구 활성화하려면 아래와 같이 수행 후 firewall-cmd --reload 로 반영합니다.

# firewall-cmd --permanent --zone=public --add-port=81/tcp
success
# firewall-cmd --reload
Success

add-port를 remove-port 로 바꾸어 수행하면 설정한 룰이 삭제됩니다.

# firewall-cmd --permanent --zone=public --remove-port=81/tcp

 

firewall-cmd --list-all 명령으로 현재 firewalld 의 정책 상태를 확인합니다.

# firewall-cmd --list-all

81 port 허용 확인

ports 항목에 81/tcp 가 추가된 것을 확인할 수 있습니다.

 

 

이번 포스팅은 여기까지 입니다.

감사합니다.

 

반응형

댓글