서버 외부에 위치한 네트워크 방화벽 또는 클라우드 제공 업체의 방화벽과 별개로 Linux 자체에도 방화벽이 설정되어 있습니다. 이 방화벽은 서버 운영체제(OS) 수준에서 동작하며, firewalld 명령어를 통해 제어됩니다. (네트워크 방화벽은 서버에 도달하기 전 네트워크 계층에서 트래픽을 제어합니다)
Linux 방화벽 firewalld 사용법에 대해 알아보겠습니다.
※ 테스트 환경
- Rocky Linux(CentOS 6이하에서는 iptables 명령어를 사용합니다)
서비스 활성화
systemctl disable firewalld
서비스 비활성화
systemctl enable firewalld
서비스 실행
systemctl start firewalld
서비스 중지
systemctl stop firewalld
서비스 재실행
systemctl restart firewalld
서비스 상태 확인
systemctl status firewalld
포트 등록
# 8080 포트
firewall-cmd --permanent --zone=public --add-port=8080/tcp
# 9090 포트
firewall-cmd --permanent --zone=public --add-port=9090/tcp
방화벽 재실행
firewall-cmd --reload
허용된 포트 확인
firewall-cmd --list-port --zone=public
IP 등록
firewall-cmd --permanent --zone=public --add-source=211.1.1.1/24