Firewall-cmd 설정 --permanent는 재부팅 후 지속되지 않습니다.

Firewall-cmd 설정 --permanent는 재부팅 후 지속되지 않습니다.

eth0과 p2p1이라는 두 개의 네트워크 인터페이스가 있습니다. 내 기본 로케일은 공개입니다. p2p1을 신뢰할 수 있는 것으로 영구적으로 설정하고 싶습니다.

이를 달성하기 위해 다음을 실행합니다.

sudo firewall-cmd --permanent --change-zone=p2p1 --zone=trusted

나중에 나는 이것을 얻습니다 :

The interface is under control of NetworkManager, setting zone to 'trusted'.
success

(나는 가지고있다네트워크 계획내 네트워크를 제어하세요. ) 모든 것이 괜찮은지 확인하기 위해 다음을 수행합니다.

sudo firewall-cmd --get-active-zones
public
  interfaces: eth0
trusted
  interfaces: p2p1

그러나 다시 시작한 후 모든 것이 사라졌습니다. 이 막대기를 어떻게 만들 수 있나요?

고쳐 쓰다:내가 찾은이것"영구적으로 할당됩니다.이더넷 0내부 영역에 대한 네트워크 인터페이스(/etc/firewalld/zones 디렉터리에 external.xml이라는 파일 생성..."

root@me:~# nmcli con show | grep p2p1
netplan-p2p1  44db1fb7-b83f-36aa-8dd1-faa6fb97f6c4  ethernet  p2p1   
p2p1          3ad65062-db85-4ba6-9104-76644e78a5c4  ethernet  --     
p2p1          c3297794-7641-4033-9f68-156f26ffe024  ethernet  --     
root@me:~# nmcli con mod "netplan-p2p1" connection.zone trusted
root@me:~# nmcli con up "netplan-p2p1"
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)

...위의 호출이 변경됩니다.포인트 투 포인트 1영역=신뢰할 수 있습니다. 하지만 같은 문제 - 달라붙지 않았습니다.

Ubuntu 18.10 시스템을 사용하고 있으므로 제안된 대로 구성 파일을 추가했습니다.여기작동하지 않습니다. 확실하지는 않지만 "/etc/network/if-up.d" 폴더에 일부 스크립트를 추가해야 한다고 가정합니다.

업데이트 2:netplan 구성 파일 01-netcfg.yaml

network:
  version: 2
  renderer: NetworkManager
  ethernets:
#   WAN
    eth0:
        dhcp4: no
        dhcp6: no
        addresses: [76.80.54.221/29]
        gateway4: 76.80.54.217
        nameservers:
            addresses: [209.18.47.61,209.18.47.62]
#   LAN
    p2p1:
        dhcp4: no
        dhcp6: no     
        addresses: [192.168.1.99/24]
        gateway4: 192.168.1.100

답변1

드디어 이해가 되네요.

zone-for-p2p1디렉토리에 스크립트 파일을 추가했습니다 /etc/network/if-up.d.

zone-for-p2p1스크립트 파일 내용:

#!/bin/sh
#
# sets zone for p2p1 adapter to "trusted"
# to find out adapter name run "nmcli con show | grep p2p1"
#
nmcli con mod "netplan-p2p1" connection.zone trusted

그런 다음 파일에 실행 권한이 있는지도 확인했습니다.

sudo chmod +x /etc/network/if-up.d/zone-for-p2p1

이제 재부팅하면 스크립트가 어댑터에 올바른 영역을 할당합니다.이 게시물나를 위해 스크립트를 추가했습니다.

답변2

인터페이스가 제어되므로 영구 설정 영역을 직접 사용하여 NetworkManager연결 설정을 조작할 수 있습니다.nmcli

sudo nmcli connection modify p2p1 connection.zone trusted

이 명령의 기본 동작은 재부팅 후에도 지속되는 지속적인 방식으로 변경 사항을 적용하는 것입니다.

답변3

내가 하나 찾았어블로그 게시물이것은 관련성이 있는 것 같습니다. 방화벽을 다시 시작해 보세요.

systemctl restart firewalld.service

이 작업은 규칙을 추가한 후 다시 시작하기 전에 수행해야 합니다.

답변4

여기에 해결책이 있습니다우분투18.04만약 일어나면스크립트와방화벽 명령도구(어떤 이유로 nmcli가 작동하지 않습니다)

  1. 루트가 되어 실행 권한이 있는 if-up 파일 생성

    sudo su -
    touch /etc/network/if-up.d/p2p1-trusted && chmod +x $_
    
  2. 다음을 입력하고 파일을 저장합니다.

    #!/bin/sh
    
    # check if script is executed for the interface we need
    if [ "$IFACE" != "p2p1" ]; then
        exit 0
    fi
    firewall-cmd --zone=trusted --change-interface="$IFACE"
    
  3. 재시작

  4. 확인하다

    $ sudo firewall-cmd --get-active-zones
    trusted
      interfaces: p2p1
    public
      interfaces: wlp1s0
    

관련 정보