> 네트워크 관리 > firewalld

firewalld: 동적 방화벽 서비스 관리

firewalld는 Linux 시스템의 동적 방화벽 관리 데몬입니다. 이는 네트워크 영역(zone) 개념을 사용하여 방화벽 규칙을 쉽게 관리할 수 있도록 하며, 서비스가 실행 중인 동안에도 규칙 변경이 가능합니다. 기존의 iptables를 대체하거나 보완하는 역할을 합니다.

개요

firewalld는 시스템의 네트워크 트래픽을 제어하는 데몬으로, 미리 정의된 영역(zone)을 통해 네트워크 인터페이스나 소스 IP 주소에 따라 다른 보안 수준을 적용할 수 있습니다. 이는 복잡한 iptables 규칙을 직접 다루는 대신, 사용자 친화적인 인터페이스를 제공합니다.

주요 특징

  • 동적 규칙 관리: 서비스 재시작 없이 규칙 변경 가능
  • 영역(Zone) 기반: 네트워크 인터페이스나 소스에 따라 다른 보안 정책 적용
  • 서비스 및 포트 관리: 특정 서비스(SSH, HTTP 등)나 포트 개방/차단 용이
  • 풍부한 규칙(Rich Rules): 복잡한 조건 기반의 규칙 설정 가능
  • IPv4 및 IPv6 지원

주요 옵션

firewalld 데몬 자체를 실행할 때 사용되는 옵션입니다. 대부분의 방화벽 규칙 관리는 firewall-cmd 명령어를 통해 이루어집니다.

데몬 실행 옵션

생성된 명령어:

명령어를 조합해 보세요.

설명:

`firewalld` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

사용 예시

firewalld 서비스는 주로 systemctl 명령어를 통해 관리됩니다. 방화벽 규칙 설정은 firewall-cmd 명령어를 사용합니다.

firewalld 서비스 시작

sudo systemctl start firewalld

firewalld 데몬을 시작합니다.

firewalld 서비스 활성화 (부팅 시 자동 시작)

sudo systemctl enable firewalld

시스템 부팅 시 firewalld가 자동으로 시작되도록 설정합니다.

firewalld 서비스 상태 확인

sudo systemctl status firewalld

firewalld 서비스의 현재 상태를 확인합니다.

firewalld 서비스 재시작

sudo systemctl restart firewalld

firewalld 서비스를 재시작합니다.

firewalld 설정 다시 로드 (규칙 변경 후)

sudo firewall-cmd --reload

서비스를 중단하지 않고 방화벽 규칙을 다시 로드하여 적용합니다.

설치

firewalld는 CentOS, Fedora, RHEL 등 많은 Red Hat 계열 리눅스 배포판에 기본으로 포함되어 있습니다. Debian/Ubuntu 계열에서는 수동으로 설치해야 할 수 있습니다.

CentOS/Fedora/RHEL

sudo dnf install firewalld

dnf (또는 yum)를 사용하여 firewalld를 설치합니다.

Debian/Ubuntu

sudo apt install firewalld

apt를 사용하여 firewalld를 설치합니다.

팁 & 주의사항

firewalld를 효과적으로 사용하기 위한 팁과 주의사항입니다.

firewall-cmd 활용

firewalld의 모든 방화벽 규칙 설정 및 관리는 'firewall-cmd' 명령어를 통해 이루어집니다. 예를 들어, 포트 개방, 서비스 추가, 영역 설정 등은 firewall-cmd를 사용해야 합니다.

  • 현재 활성화된 영역 확인: `firewall-cmd --get-active-zones`
  • 특정 포트 개방 (예: HTTP 80/tcp): `sudo firewall-cmd --zone=public --add-port=80/tcp --permanent`
  • 변경 사항 적용: `sudo firewall-cmd --reload`

영구적인 규칙 적용

firewall-cmd로 규칙을 추가할 때 `--permanent` 옵션을 사용해야 시스템 재부팅 후에도 규칙이 유지됩니다. `--permanent` 옵션 사용 후에는 반드시 `firewall-cmd --reload`를 실행하여 변경 사항을 적용해야 합니다.

기본 영역 이해

firewalld는 기본적으로 'public' 영역을 사용하지만, 'home', 'work', 'internal', 'external', 'trusted', 'drop', 'block' 등 다양한 영역을 제공합니다. 각 영역은 다른 보안 수준을 가집니다.

iptables와의 관계

firewalld는 내부적으로 iptables(또는 nftables)를 사용하지만, 직접 iptables 명령어를 사용하는 것보다 추상화된 인터페이스를 제공합니다. firewalld를 사용하는 시스템에서는 iptables 명령어를 직접 조작하는 것을 피하는 것이 좋습니다.


동일 카테고리 명령어