![방화벽에서 사전 구성된 영역을 삭제하는 방법](https://linux55.com/image/72185/%EB%B0%A9%ED%99%94%EB%B2%BD%EC%97%90%EC%84%9C%20%EC%82%AC%EC%A0%84%20%EA%B5%AC%EC%84%B1%EB%90%9C%20%EC%98%81%EC%97%AD%EC%9D%84%20%EC%82%AD%EC%A0%9C%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
사전 구성된 영역은 삭제할 수 없습니다.
[root@fabian ~]# firewall-cmd --permanent --delete-zone=block
Error: BUILTIN_ZONE: block
[root@fabian ~]#
내가 할 수 있는 방법이 있나요? 해당 영역 파일만 삭제하면 방화벽이 시작되지 않습니다.
그렇게 할 수 없다면 사람들은 왜 이 내장된 영역을 없애지 못하는 걸까요? 미리 정의된 빈 방화벽을 보는 것만으로도 구역질이 납니다.
[root@fabian ~]# firewall-cmd --list-all-zones
block
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
dmz
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
drop
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
external (active)
interfaces: enp0s26u1u1
sources:
services:
ports:
masquerade: yes
forward-ports:
icmp-blocks:
rich rules:
home
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
internal (default, active)
interfaces: enp4s0
sources:
services: ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
public
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
trusted
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
work
interfaces:
sources:
services:
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
[root@fabian ~]#
도와주세요.
답변1
기본 영역은 다음 디렉터리에 저장됩니다.
/usr/lib/방화벽/영역
Firewall-cmd 기본 영역을 검색한 후 다음을 추출했습니다.
[https://www.linode.com/docs/security/firewalls/introduction-to-firewalld-on-centos]
방화벽 구성D
Firewalld는 구성을 위해 XML 파일을 사용합니다. 매우 구체적인 구성을 제외하고는 이를 처리할 필요가 없으며 대신 Firewall-cmd를 사용해야 합니다.
구성 파일은 다음 두 디렉터리에 있습니다.
/usr/lib/FirewallD holds default configurations like default zones and common services. Avoid updating them because those files will be overwritten by each firewalld package update.
/etc/firewalld holds system configuration files. These files will overwrite a default configuration.
그렇긴 하지만... /usr/lib/FirewallD/zones에서 Internal이라는 내장 영역을 제거하고 Firewalld를 다시 로드했는데 --list-all-zones를 수행해도 해당 영역이 여전히 존재합니다.
그래서 /etc/firewalld/zones에서 내부 영역을 제거하고 방화벽을 다시 로드했는데 이제 내부 영역이 사라졌습니다.
패키지 업데이트 후에 다시 나올지는 모르겠고, 아직 사용해본 적은 없습니다.
답변2
/etc/firewalld/zones/docker.xml
내 데비안 불스아이 시스템에는 방화벽에 영역을 생성하는 파일이 있습니다 docker
(실행 시 표시됨 firewall-cmd --list-all-zones
).
영역을 제거하는 유일한 방법은 docker
파일을 삭제하는 것입니다.
rm /etc/firewalld/zones/docker.xml
답변3
GitHub에서 이에 대한 기능 요청은 다음과 같이 추적됩니다.897화. 방화벽이 내장된 영역의 존재를 예상하고 드문 경우에 사용하므로 사용자가 모든 내장 영역을 삭제할 수 있는 것은 아닌 것 같습니다. 문제에 대한 논의에서는 이러한 사례를 제거하는 것이 가능해야 함을 시사합니다.
(저는 상당히 새롭기 때문에 이 링크를 해당 설명과 함께 자체 답변으로 두는 것이 적절하기를 바랍니다.)