Ⅰ. firewall-cmd 란?
리눅스에서 방화벽 설정을 관리하기 위한 명령줄 도구로, CentOS, RHEL (Red Hat Enterprise Linux), Fedora와 같은 리눅스 배포판에서 주로 사용됩니다. 이 도구는 firewalld라는 방화벽 관리 데몬과 함께 사용되며, 방화벽 규칙을 쉽게 관리하고 조작할 수 있도록 도와줍니다
Ⅱ. firewall-cmd 특징
1) Zone 기반 보안 관리: firewalld는 시스템을 여러 보안 영역 또는 "존"으로 나누어 관리합니다. 각각의 존은 특정한 보안 수준과 규칙 집합을 가질 수 있으며, firewall-cmd를 사용하여 각 존에 대한 규칙을 쉽게 설정할 수 있습니다.
2) 서비스 기반 규칙 관리: firewall-cmd를 사용하면 서비스 이름을 기반으로 방화벽 규칙을 관리할 수 있습니다. 서비스 이름을 사용하면 해당 서비스에 필요한 포트 및 프로토콜을 자동으로 구성할 수 있습니다.
3) 동적 규칙 관리: firewalld는 네트워크 인터페이스의 상태 변화에 따라 규칙을 동적으로 조절할 수 있습니다. 예를 들어, 인터넷 연결이 끊겼을 때 방화벽 규칙을 변경할 수 있습니다.
4) 룰 추가/제거/조회: firewall-cmd를 사용하여 존, 서비스, 포트, 소스 IP 주소 등을 기반으로 방화벽 규칙을 추가, 제거, 조회할 수 있습니다.
5) 영구 설정: firewall-cmd로 설정한 방화벽 규칙은 현재 세션뿐만 아니라 시스템 재부팅 후에도 유지됩니다. 따라서 설정을 영구적으로 적용할 수 있습니다.
Ⅲ . firewall-cmd 와 iptables 차이
1) 구조: iptables는 표준 리눅스 방화벽 도구로서, 복잡한 규칙을 설정하고 관리하는 데 더 많은 명령어와 이해가 필요합니다. 반면에 firewall-cmd는 더 추상화된 인터페이스를 제공하여 더 쉽게 사용자가 방화벽 규칙을 관리할 수 있습니다.
2) 동적 규칙 관리: firewalld와 firewall-cmd는 동적 규칙 관리를 지원하여 네트워크 상태에 따라 규칙을 자동으로 조절할 수 있습니다. iptables는 이러한 기능을 지원하지 않습니다.
3) 서비스 기반 규칙 관리: firewall-cmd는 서비스 이름을 사용하여 포트 및 프로토콜을 쉽게 설정할 수 있습니다. iptables에서는 이를 수동으로 구성해야 합니다.
4) 보안 영역: firewalld는 보안 영역(zone)을 사용하여 규칙을 관리하는데, 이는 iptables에서 직접적으로 지원되지 않습니다.
Ⅳ. firewalld-cmd 사용방법
1) firewalld-cmd (방화벽) 상태 확인
firewall-cmd --state * 실행 중이면 running, 실행 중이 아니면 not running을 출력합니다. |
2) 방화벽 규칙 적용
firewall-cmd --reload * 방화벽 설정 후 다시 로드해야 적용됩니다. |
3) 존(Zone) 출력하기
firewall-cmd --get-zones * 존(zone) 목록을 출력합니다. |
4) 기본 존을 출력합니다.
firewall-cmd --get-default-zone |
5) 현재 설정된 방화벽 규칙 조회
firewall-cmd --list-all |
6) 활성화된 존을 출력합니다.
firewall-cmd --get-active-zones |
7) 사용 가능한 모든 서비스/포트 목록을 출력
서비스 확인 : firewall-cmd --get-services 포트 확인 : firewall-cmd --list-ports |
8) public 존에 속한 사용 가능한 모든 서비스/포트 목록을 출력
firewall-cmd --zone=public --list-all |
9) 특정 존에 포트 추가
firewall-cmd --zone=public --add-port=[Port Number]/tcp --permanent |
10) sftp 서비스를 추가/제거
추가 = firewall-cmd --add-service=sftp 제거 = firewall-cmd --remove-service=sftp |
'시스템(Linux)' 카테고리의 다른 글
logrotate 에 대해 알아보겠습니다. (1) | 2023.10.06 |
---|---|
리눅스에서 CPU, MEMORY, 커널 정보 확인방법에 대해 알아보겠습니다. (0) | 2023.10.05 |
Linux 및 Unix 에서 많이 사용되는 압축과 압축해제에 대해 알아보겠습니다. (0) | 2023.09.20 |
리눅스에서 사용되는 텍스트 편집기 중 하나인 "vi"에 대해 알아보겠습니다. (0) | 2023.09.12 |
Docker 란 무엇일까요 ? (0) | 2023.09.11 |