1장. firewalld 사용 및 구성

방화벽 은 원치 않는 트래픽에서 시스템을 보호하는 방법입니다. 사용자는 방화벽 규칙 집합을 정의하여 호스트 시스템에서 들어오는 네트워크 트래픽을 제어할 수 있습니다. 이러한 규칙은 들어오는 트래픽을 정렬하고 이를 차단하거나 허용하는 데 사용됩니다.

firewalld 는 D-Bus 인터페이스를 사용하여 동적 사용자 지정 가능한 호스트 기반 방화벽을 제공하는 방화벽 서비스 데몬입니다. 동적이므로 규칙이 변경될 때마다 방화벽 데몬을 다시 시작할 필요 없이 규칙을 생성, 변경 및 삭제할 수 있습니다.

firewalld 는 트래픽 관리를 간소화하는 영역 및 서비스 개념을 사용합니다. 영역은 사전 정의된 규칙 세트입니다. 네트워크 인터페이스 및 소스를 영역에 할당할 수 있습니다. 허용되는 트래픽은 컴퓨터가 연결된 네트워크에 따라 다르며 이 네트워크에는 보안 수준이 할당됩니다. 방화벽 서비스는 특정 서비스에 대한 들어오는 트래픽을 허용하고 영역 내에서 적용하기 위해 필요한 모든 설정을 포함하는 사전 정의된 규칙입니다.

서비스는 네트워크 통신에 하나 이상의 포트 또는 주소를 사용합니다. 방화벽 필터는 포트를 기반으로 합니다. 서비스에 대한 네트워크 트래픽을 허용하려면 해당 포트가 열려 있어야 합니다. firewalld 는 명시적으로 open으로 설정되지 않은 포트에서 모든 트래픽을 차단합니다. trusted와 같은 일부 영역은 기본적으로 모든 트래픽을 허용합니다.

nftables 백엔드가 포함된 firewalld --direct 옵션을 사용하여 사용자 정의 nftables 규칙 전달을 지원하지 않습니다.

1.1. firewalld, nftables 또는 iptables를 사용하는 경우

다음은 다음 유틸리티 중 하나를 사용해야 하는 시나리오에 대한 간략한 개요입니다.

  • firewalld: 간단한 방화벽 사용 사례에 firewalld 유틸리티를 사용합니다. 이 유틸리티는 사용하기 쉽고 이러한 시나리오의 일반적인 사용 사례를 다룹니다.
  • nftables: nftables 유틸리티를 사용하여 전체 네트워크에 대해 과 같이 복잡하고 성능이 중요한 방화벽을 설정합니다.
  • iptables: Red Hat Enterprise Linux의 iptables 유틸리티는 레거시 백엔드 대신 nf_tables 커널 API를 사용합니다. nf_tables API는 이전 버전과의 호환성을 제공하므로 iptables 명령을 사용하는 스크립트가 여전히 Red Hat Enterprise Linux에서 작동합니다. 새 방화벽 스크립트의 경우 Red Hat은 nftables 를 사용하도록 권장합니다.
중요

다른 방화벽 관련 서비스(firewalld,nftables 또는 iptables)가 서로 영향을 미치지 않도록 하려면 RHEL 호스트에서 해당 서비스 중 하나만 실행하고 다른 서비스를 비활성화합니다.