Firewall Rules
The NVOS default firewall rules protect the switch control plane and CPU from DOS and other potentially malicious network attacks.
The default set of firewall rules consists of IP and transport level rules. See Access Control List Configuration for custom ACL rules configurations.
Please note that users cannot bind ACL rules to the Loopback interface (lo).
DoS rules protect the switch control plane and CPU from DOS attacks. NVOS provides firewall DoS rules to do the following:
Allow only internal traffic to the loopback interfaces.
Accept already established connections and outbound traffic.
Drop packets if the first TCP segment is not SYN.
Drop fragmented IP packets.
Drop Christmas tree packets; packets with all TCP flags set.
Drop NULL packets.
Drop invalid packets.
Drop strange MSS values.
Provide brute-force protection.
Drop packets with routing Header Type 0.
Drop packets with a hop limit greater than 1.
Limit excessive TCP reset packets.
Protect against SYN flood.
Rate limit new TCP connections for each IP address.
Log all remaining packets, then drop them.
Whitelist rules specify the services or application ports enabled on the switch. NVOS provides firewall whitelist rules to enable TCP ports and UDP ports.
The following table lists the ports that NVOS enables by default.
Protocol  | Port  | Application  | 
TCP  | 22  | SSH  | 
UDP  | 68  | DHCP Client  | 
UDP  | 67  | DHCP Server  | 
UDP  | 123  | NTP  | 
UDP  | 161  | SNMP  | 
TCP  | 389  | LDAP  | 
TCP  | 636  | LDAP TLS  | 
UDP  | 546  | DHCPv6 Client  | 
UDP  | 547  | DHCPv6 Server  | 
UDP  | 4500  | IPSec-NAT  | 
UDP  | 500  | IKE  | 
UDP  | 1812,1813,1645,1656  | RADIUS  | 
TCP  | 49  | TACACS  | 
UDP/TCP  | 53  | DNS  | 
UDP  | 5353  | mDNS  | 
UDP  | 514  | remote syslog  | 
TCP  | 443  | HTTPS  | 
TCP  | 9339  | gNMI  | 
ICMP  | NA  | Ping  | 
To unset the default firewall rules to accept packets from all addresses and protocols:
            
            nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_CP_DEFAULT 
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_CP_DEFAULT_IPV6
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_DEFAULT
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_DEFAULT_IPV6
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_OUTBOUND_CP_DEFAULT
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_OUTBOUND_CP_DEFAULT_IPV6
nvos@switch:~$ nv unset interface lo acl ACL_LOOPBACK_INBOUND_CP_DEFAULT
nvos@switch:~$ nv unset interface lo acl ACL_LOOPBACK_INBOUND_CP_DEFAULT_IPV6
nvos@switch:~$ nv config apply
        
    
To set the firewall rules back to the default setting:
            
            nvos@switch:~$ nv unset interface
nvos@switch:~$ nv config apply
        
    
To set the firewall rules back to the default setting on specific interface:
            
            nvos@switch:~$ nv unset interface eth0 acl
nvos@switch:~$ nv config apply
        
    
You cannot modify the ACL_MGMT_INBOUND_CP_DEFAULT, ACL_MGMT_INBOUND_CP_DEFAULT_IPV6, ACL_MGMT_INBOUND_DEFAULT, ACL_MGMT_INBOUND_DEFAULT_IPV6, ACL_MGMT_OUTBOUND_CP_DEFAULT, ACL_MGMT_OUTBOUND_CP_DEFAULT_IPV6, ACL_LOOPBACK_INBOUND_CP_DEFAULT and ACL_LOOPBACK_INBOUND_CP_DEFAULT_IPV6 rules. However, you can append or insert additional rules.
If you use non-default ports for an application, NVIDIA recommends that you add a whitelist rule for the non-default port. For example, if you use ports 3020 and 3022 for radius server accounting and authentication instead of 1812 and 1813, you can add the following whitelist rules:
            
            nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 match ip udp source-port 3020
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 match ip connection-state new
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 match ip connection-state established 
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 action permit
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 match ip udp source-port  3022
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 match ip connection-state new
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 match ip connection-state established
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 action permit
nvos@switch:~$ nv config apply
        
    
To show the default rules, run the nv show acl <default-acl-id> command, where <default-acl-id> is one of ACL_MGMT_INBOUND_CP_DEFAULT, ACL_MGMT_INBOUND_CP_DEFAULT_IPV6, ACL_MGMT_INBOUND_DEFAULT, ACL_MGMT_INBOUND_DEFAULT_IPV6, ACL_MGMT_OUTBOUND_CP_DEFAULT, ACL_MGMT_OUTBOUND_CP_DEFAULT_IPV6, ACL_LOOPBACK_INBOUND_CP_DEFAULT and ACL_LOOPBACK_INBOUND_CP_DEFAULT_IPV6:
            
            nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT
      operational  applied
----  -----------  -------
type  ipv4         ipv4
 
 
 
rule
=======
    Number  Summary
    ------  ----------------------------------------
    10      action:                             deny
            match.ip.dest-ip:            127.0.0.0/8
    20      action:                           permit
    30      action:                             deny
            match.ip.protocol:                   tcp
    40      action:                             deny
            match.ip.protocol:                   tcp
    50      action:                             deny
            match.ip.protocol:                   tcp
    60      action:                             deny
            match.ip.protocol:                   tcp
    70      action:                             deny
    80      action:                             deny
            match.ip.protocol:                   tcp
    90      action:                             deny
            match.ip.protocol:                   tcp
    100     action:                             deny
    110     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:               22
    120     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:               22
    130     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              161
    140     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              161
    150     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:              443
    160     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      150
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:              443
    170     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:             9339
    180     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:             9339
    190     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:              636
    200     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:              636
    210     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:              389
    220     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:              389
    230     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:               49
    240     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:               49
    250     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              123
    260     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              123
    270     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:               53
    280     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:               53
    290     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:               53
    300     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:               53
    310     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              514
    320     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              514
    330     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             5353
    340     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             5353
    350     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:               68
    360     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:               68
    370     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:               67
    380     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:               67
    390     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             4500
    400     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             4500
    410     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              500
    420     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              500
    430     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1812
    440     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1812
    450     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1813
    460     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1813
    470     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1645
    480     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1645
    490     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1646
    500     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1646
    510     action:                             deny
            match.ip.hashlimit.burst:              2
            match.ip.hashlimit.expire:         30000
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:          TCPRST
            match.ip.hashlimit.rate-above:     5/min
            match.ip.hashlimit.source-mask:       32
            match.ip.protocol:                   tcp
    520     action:                             deny
            match.ip.hashlimit.burst:             30
            match.ip.hashlimit.expire:         30000
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:       TCPGENRAL
            match.ip.hashlimit.rate-above: 50/second
            match.ip.hashlimit.source-mask:       32
            match.ip.protocol:                   tcp
    530     action:                             deny
            match.ip.hashlimit.burst:             30
            match.ip.hashlimit.expire:          3000
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:       TCPGENRAL
            match.ip.hashlimit.rate-above: 50/second
            match.ip.hashlimit.source-mask:       32
            match.ip.protocol:                   tcp
    560     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              161
            remark:                   Whitelist-snmp
    570     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:              443
            remark:                  Whitelist-https
    580     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:               22
            remark:                    Whitelist-ssh
    590     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:             9339
            remark:                   Whitelist-gnmi
    600     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:              636
            remark:               Whitelist-ldap-tls
    610     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              514
            remark:                Whitelist-rsyslog
    620     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:              389
            remark:                   Whitelist-ldap
    630     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:               49
            remark:                 Whitelist-tacacs
    640     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              123
            remark:                    Whitelist-ntp
    650     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:               53
            remark:                    Whitelist-dns
    660     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:               53
            remark:                    Whitelist-dns
    670     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             5353
            remark:                   Whitelist-mDNS
    680     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:               68
            remark:                   Whitelist-dhcp
    690     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:               67
            remark:                   Whitelist-dhcp
    700     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             4500
            remark:              Whitelist-IPSec-NAT
    710     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              500
            remark:                    Whitelist-IKE
    720     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1812
            remark:                 Whitelist-radius
    730     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1813
            remark:                 Whitelist-radius
    740     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1645
            remark:                 Whitelist-radius
    750     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1646
            remark:                 Whitelist-radius
    760     action:                           permit
            match.ip.protocol:                  icmp
            remark:                   Whitelist-icmp
    770     action:                              log
            match.ip.hashlimit.burst:              5
            match.ip.hashlimit.expire:    4294967295
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:         LOGGING
            match.ip.hashlimit.rate-above:     1/min
            match.ip.hashlimit.source-mask:       32
    780     action:                             deny
        
    
Run the nv show acl ACL_MGMT_INBOUND_CP_DEFAULT --rev=applied -o json command to show additional information, such as the connection state, hit count and update interval:
            
            nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT --rev=applied -o json     
...
 
"630": {
      "action": {
        "permit": {}
      },
      "match": {
        "ip": {
          "connection-state": {
            "established": {},
            "new": {}
          },
          "protocol": "tcp",
          "tcp": {
            "dest-port": {
              "49": {}
            }
          }
        }
      },
      "remark": "Whitelist-tacacs"
    },
 
...
 
"500": {
      "action": {
        "deny": {}
      },
      "match": {
        "ip": {
          "connection-state": {
            "new": {}
          },
          "protocol": "udp",
          "recent-list": {
            "action": "update",
            "hit-count": 100,
            "name": "UDP",
            "update-interval": 60
          },
          "udp": {
            "dest-port": {
              "1646": {}
            }
          }
        }
      }
...
        
    
To show information about a specific rule, run the nv show acl <default-acl-id> rule <rule> command:
            
            nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT rule 500
                       operational  applied
---------------------  -----------  -------
match
  ip
    protocol           udp          udp
    udp
      [dest-port]      1646         1646
    recent-list
      name             UDP          UDP
      update-interval  60           60
      hit-count        100          100
      action           update       update
action                 deny         deny
 
Run the nv show acl <default-acl-id> rule <rule> --rev=applied -o json command to see additional information, such as the connection state:
 
 
nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT rule 500 --rev=applied -o json {
  "action": {
    "deny": {}
  },
  "match": {
    "ip": {
      "connection-state": {
        "new": {}
      },
      "protocol": "udp",
      "recent-list": {
        "action": "update",
        "hit-count": 100,
        "name": "UDP",
        "update-interval": 60
      },
      "udp": {
        "dest-port": {
          "1646": {}
        }
      }
    }
  }
}
        
    
Default firewall rules include a log rule for packets that arrive in the control plane and do not match user defined or default firewall rules. The switch generates a log message in/var/log/firewall_packet_capture.log for packets that match the log rule.
The NVOS Linux default firewall rules protect the switch control plane and CPU from DOS and other potentially malicious network attacks.
The default set of firewall rules consists of IP and transport level rules. See Access Control List Configuration for custom ACL rules configurations.
DoS rules protect the switch control plane and CPU from DOS attacks. NVOS provides firewall DoS rules to do the following:
Allow only internal traffic to the loopback interfaces.
Accept already established connections and outbound traffic.
Drop packets if the first TCP segment is not SYN.
Drop fragmented IP packets.
Drop Christmas tree packets; packets with all TCP flags set.
Drop NULL packets.
Drop invalid packets.
Drop strange MSS values.
Provide brute-force protection.
Drop packets with routing Header Type 0.
Drop packets with a hop limit greater than 1.
Limit excessive TCP reset packets.
Protect against SYN flood.
Rate limit new TCP connections for each IP address.
Log all remaining packets, then drop them.
Whitelist rules specify the services or application ports enabled on the switch. NVOS provides firewall whitelist rules to enable TCP ports and UDP ports.
The following table lists the ports that NVOS enables by default.
Protocol  | Port  | Application  | 
TCP  | 22  | SSH  | 
UDP  | 68  | DHCP Client  | 
UDP  | 67  | DHCP Server  | 
UDP  | 123  | NTP  | 
UDP  | 161  | SNMP  | 
TCP  | 389  | LDAP  | 
TCP  | 636  | LDAP TLS  | 
UDP  | 546  | DHCPv6 Client  | 
UDP  | 547  | DHCPv6 Server  | 
UDP  | 4500  | IPSec-NAT  | 
UDP  | 500  | IKE  | 
UDP  | 1812,1813,1645,1656  | RADIUS  | 
TCP  | 49  | TACACS  | 
UDP/TCP  | 53  | DNS  | 
UDP  | 5353  | mDNS  | 
UDP  | 514  | remote syslog  | 
TCP  | 443  | HTTPS  | 
TCP  | 9339  | gNMI  | 
ICMP  | NA  | Ping  | 
To unset the default firewall rules to accept packets from all addresses and protocols:
            
            nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_CP_DEFAULT 
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_CP_DEFAULT_IPV6
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_DEFAULT
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_INBOUND_DEFAULT_IPV6
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_OUTBOUND_CP_DEFAULT
nvos@switch:~$ nv unset interface eth0 acl ACL_MGMT_OUTBOUND_CP_DEFAULT_IPV6
nvos@switch:~$ nv unset interface lo acl ACL_LOOPBACK_INBOUND_CP_DEFAULT
nvos@switch:~$ nv unset interface lo acl ACL_LOOPBACK_INBOUND_CP_DEFAULT_IPV6
nvos@switch:~$ nv config apply
        
    
To set the firewall rules back to the default setting:
            
            nvos@switch:~$ nv unset interface
nvos@switch:~$ nv config apply
        
    
To set the firewall rules back to the default setting on speific interface:
            
            nvos@switch:~$ nv unset interface eth0 acl
nvos@switch:~$ nv config apply
        
    
You cannot modify the ACL_MGMT_INBOUND_CP_DEFAULT, ACL_MGMT_INBOUND_CP_DEFAULT_IPV6, ACL_MGMT_INBOUND_DEFAULT, ACL_MGMT_INBOUND_DEFAULT_IPV6, ACL_MGMT_OUTBOUND_CP_DEFAULT, ACL_MGMT_OUTBOUND_CP_DEFAULT_IPV6, ACL_LOOPBACK_INBOUND_CP_DEFAULT and ACL_LOOPBACK_INBOUND_CP_DEFAULT_IPV6 rules. However, you can append or insert additional rules.
If you use non-default ports for an application, NVIDIA recommends that you add a whitelist rule for the non-default port. For example, if you use ports 3020 and 3022 for radius server accounting and authentication instead of 1812 and 1813, you can add the following whitelist rules:
            
            nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 match ip udp source-port 3020
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 match ip connection-state new
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 match ip connection-state established 
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 765 action permit
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 match ip udp source-port  3022
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 match ip connection-state new
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 match ip connection-state established
nvos@switch:~$ nv set acl ACL_MGMT_INBOUND_CP_DEFAULT rule 766 action permit
nvos@switch:~$ nv config apply
        
    
To show the default rules, run the nv show acl <default-acl-id> command, where <default-acl-id> is one of ACL_MGMT_INBOUND_CP_DEFAULT, ACL_MGMT_INBOUND_CP_DEFAULT_IPV6, ACL_MGMT_INBOUND_DEFAULT, ACL_MGMT_INBOUND_DEFAULT_IPV6, ACL_MGMT_OUTBOUND_CP_DEFAULT, ACL_MGMT_OUTBOUND_CP_DEFAULT_IPV6, ACL_LOOPBACK_INBOUND_CP_DEFAULT and ACL_LOOPBACK_INBOUND_CP_DEFAULT_IPV6:
            
            nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT
      operational  applied
----  -----------  -------
type  ipv4         ipv4
 
 
 
rule
=======
    Number  Summary
    ------  ----------------------------------------
    10      action:                             deny
            match.ip.dest-ip:            127.0.0.0/8
    20      action:                           permit
    30      action:                             deny
            match.ip.protocol:                   tcp
    40      action:                             deny
            match.ip.protocol:                   tcp
    50      action:                             deny
            match.ip.protocol:                   tcp
    60      action:                             deny
            match.ip.protocol:                   tcp
    70      action:                             deny
    80      action:                             deny
            match.ip.protocol:                   tcp
    90      action:                             deny
            match.ip.protocol:                   tcp
    100     action:                             deny
    110     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:               22
    120     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:               22
    130     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              161
    140     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              161
    150     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:              443
    160     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      150
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:              443
    170     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:             9339
    180     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:             9339
    190     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:              636
    200     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:              636
    210     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:              389
    220     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:              389
    230     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:               49
    240     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:               49
    250     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              123
    260     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              123
    270     match.ip.protocol:                   tcp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           TCP
            match.ip.tcp.dest-port:               53
    280     action:                             deny
            match.ip.protocol:                   tcp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           TCP
            match.ip.recent-list.update-interval: 60
            match.ip.tcp.dest-port:               53
    290     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:               53
    300     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:               53
    310     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              514
    320     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              514
    330     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             5353
    340     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             5353
    350     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:               68
    360     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:               68
    370     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:               67
    380     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:               67
    390     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             4500
    400     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             4500
    410     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:              500
    420     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:              500
    430     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1812
    440     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1812
    450     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1813
    460     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1813
    470     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1645
    480     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1645
    490     match.ip.protocol:                   udp
            match.ip.recent-list.action:         set
            match.ip.recent-list.name:           UDP
            match.ip.udp.dest-port:             1646
    500     action:                             deny
            match.ip.protocol:                   udp
            match.ip.recent-list.action:      update
            match.ip.recent-list.hit-count:      100
            match.ip.recent-list.name:           UDP
            match.ip.recent-list.update-interval: 60
            match.ip.udp.dest-port:             1646
    510     action:                             deny
            match.ip.hashlimit.burst:              2
            match.ip.hashlimit.expire:         30000
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:          TCPRST
            match.ip.hashlimit.rate-above:     5/min
            match.ip.hashlimit.source-mask:       32
            match.ip.protocol:                   tcp
    520     action:                             deny
            match.ip.hashlimit.burst:             30
            match.ip.hashlimit.expire:         30000
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:       TCPGENRAL
            match.ip.hashlimit.rate-above: 50/second
            match.ip.hashlimit.source-mask:       32
            match.ip.protocol:                   tcp
    530     action:                             deny
            match.ip.hashlimit.burst:             30
            match.ip.hashlimit.expire:          3000
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:       TCPGENRAL
            match.ip.hashlimit.rate-above: 50/second
            match.ip.hashlimit.source-mask:       32
            match.ip.protocol:                   tcp
    560     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              161
            remark:                   Whitelist-snmp
    570     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:              443
            remark:                  Whitelist-https
    580     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:               22
            remark:                    Whitelist-ssh
    590     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:             9339
            remark:                   Whitelist-gnmi
    600     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:              636
            remark:               Whitelist-ldap-tls
    610     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              514
            remark:                Whitelist-rsyslog
    620     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:              389
            remark:                   Whitelist-ldap
    630     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:               49
            remark:                 Whitelist-tacacs
    640     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              123
            remark:                    Whitelist-ntp
    650     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:               53
            remark:                    Whitelist-dns
    660     action:                           permit
            match.ip.protocol:                   tcp
            match.ip.tcp.dest-port:               53
            remark:                    Whitelist-dns
    670     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             5353
            remark:                   Whitelist-mDNS
    680     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:               68
            remark:                   Whitelist-dhcp
    690     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:               67
            remark:                   Whitelist-dhcp
    700     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             4500
            remark:              Whitelist-IPSec-NAT
    710     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:              500
            remark:                    Whitelist-IKE
    720     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1812
            remark:                 Whitelist-radius
    730     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1813
            remark:                 Whitelist-radius
    740     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1645
            remark:                 Whitelist-radius
    750     action:                           permit
            match.ip.protocol:                   udp
            match.ip.udp.dest-port:             1646
            remark:                 Whitelist-radius
    760     action:                           permit
            match.ip.protocol:                  icmp
            remark:                   Whitelist-icmp
    770     action:                              log
            match.ip.hashlimit.burst:              5
            match.ip.hashlimit.expire:    4294967295
            match.ip.hashlimit.mode:          src-ip
            match.ip.hashlimit.name:         LOGGING
            match.ip.hashlimit.rate-above:     1/min
            match.ip.hashlimit.source-mask:       32
    780     action:                             deny
        
    
Run the nv show acl ACL_MGMT_INBOUND_CP_DEFAULT --rev=applied -o json command to show additional information, such as the connection state, hit count and update interval:
            
            nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT --rev=applied -o json     
...
 
"630": {
      "action": {
        "permit": {}
      },
      "match": {
        "ip": {
          "connection-state": {
            "established": {},
            "new": {}
          },
          "protocol": "tcp",
          "tcp": {
            "dest-port": {
              "49": {}
            }
          }
        }
      },
      "remark": "Whitelist-tacacs"
    },
 
...
 
"500": {
      "action": {
        "deny": {}
      },
      "match": {
        "ip": {
          "connection-state": {
            "new": {}
          },
          "protocol": "udp",
          "recent-list": {
            "action": "update",
            "hit-count": 100,
            "name": "UDP",
            "update-interval": 60
          },
          "udp": {
            "dest-port": {
              "1646": {}
            }
          }
        }
      }
...
        
    
To show information about a specific rule, run the nv show acl <default-acl-id> rule <rule> command:
            
            nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT rule 500
                       operational  applied
---------------------  -----------  -------
match
  ip
    protocol           udp          udp
    udp
      [dest-port]      1646         1646
    recent-list
      name             UDP          UDP
      update-interval  60           60
      hit-count        100          100
      action           update       update
action                 deny         deny
 
Run the nv show acl <default-acl-id> rule <rule> --rev=applied -o json command to see additional information, such as the connection state:
 
 
nvos@switch:~$ nv show acl ACL_MGMT_INBOUND_CP_DEFAULT rule 500 --rev=applied -o json {
  "action": {
    "deny": {}
  },
  "match": {
    "ip": {
      "connection-state": {
        "new": {}
      },
      "protocol": "udp",
      "recent-list": {
        "action": "update",
        "hit-count": 100,
        "name": "UDP",
        "update-interval": 60
      },
      "udp": {
        "dest-port": {
          "1646": {}
        }
      }
    }
  }
}
        
    
Default firewall rules include a log rule for packets that arrive in the control plane and do not match user defined or default firewall rules. The switch generates a log message in/var/log/firewall_packet_capture.log for packets that match the log rule.