• 우리는 CIS 기본 규칙에 따라 Linux 운영 체제를 강화하고 있습니다. • 이 명령 프롬프트를 사용하여 "방화벽 기본 영역(자동)이 설정되어 있는지 확인" 규칙을 확인합니다.
다음 명령을 입력하세요:
방화벽 cmd --get-default-zone
출력 명령:
Firewall-cmd --set-default-zone=public 방화벽을 공개로 설정합니다.
- 우리는 ansible의 도움으로 컨트롤러 머신을 구성하고 명령 프롬프트에서 값을 가져오려고 했습니다.
- 그러나 명령 프롬프트에서는 "방화벽이 공개로 설정되어 있기 때문에" ansible 스크립트를 사용하여 출력을 얻을 수 없습니다.
필요한 출력을 얻기 위해 ansible 스크립트를 작성하는 데 도움을 줄 수 있습니까?
답변1
여기의 기존 문법을 보면 영어에 대한 오해 및/또는 오용이 있다는 인상을 즉시 받습니다.
"firewalld 기본 영역이 설정되어 있는지 확인하세요(자동)"
CIS 규칙의 링크나 실제 문구를 게시하세요...
firewalld
이는 이미 표준 Linux 방화벽입니다.자동화된모든 네트워크 인터페이스가 할당되어 있기 때문에기본영역, 기본 영역은 처음에사람들. 영역 구성이 마음에 들지 않으면 public
편집하거나 새 영역을 생성하고 새 영역 /etc/firewalld/firewalld.conf
DefaultZone=public
을 /etc/firewalld/zones/public.xml
.
5.7.3. 기본 영역 변경
시스템 관리자는 구성 파일에서 네트워크 인터페이스에 영역을 할당합니다. 인터페이스가 특정 영역에 할당되지 않은 경우 기본 영역에 할당됩니다. 방화벽 서비스를 다시 시작할 때마다 방화벽은 기본 영역의 설정을 로드하고 활성화합니다.
답변2
이는 CIS 기준 문서의 오해 또는 형식 오류일 수 있습니다.
Firewall is set to be public
이는 실제로 명령의 출력이 아니라 firewall-cmd --set-default-zone=public
명령의 예상 효과에 대한 설명입니다.
Ansible 스크립트가 명령을 실행 firewall-cmd --set-default-zone=public
하고 명령이 오류 없이 종료되면 방화벽 기본 영역이 성공적으로 설정된 것입니다 public
.
이를 확인하기 위해 스크립트에서 명령을 실행 firewall-cmd --get-default-zone
하고 해당 명령이 를 반환하는지 확인할 수 있습니다 public
.