<!-- ============================================================ -->
<!-- VantagePoint Networks — Palo Alto PA-5220 NGFW Baseline      -->
<!-- Zero Trust · CIS Level 2 · PAN-OS 11.1                       -->
<!-- ============================================================ -->
<!-- DEPLOYMENT NOTES:                                             -->
<!--   1. Replace all <VARIABLES> with your site values            -->
<!--   2. Import via Panorama or direct CLI: set cli config-output-format set -->
<!--   3. Review zone/interface mappings for your chassis          -->
<!--   4. Commit with: commit force                                -->
<!--   5. Sections marked OPTIONAL can be removed if not needed    -->
<!-- ============================================================ -->

<config version="11.1.0">
<mgt-config>
  <users>
    <entry name="<ADMIN_USER>">
      <permissions>
        <role-based>
          <superuser>yes</superuser>
        </role-based>
      </permissions>
      <phash><ADMIN_PASSWORD_HASH></phash>
    </entry>
    <entry name="<READONLY_USER>">
      <permissions>
        <role-based>
          <custom>
            <profile>auditadmin</profile>
          </custom>
        </role-based>
      </permissions>
      <phash><READONLY_PASSWORD_HASH></phash>
    </entry>
  </users>
</mgt-config>

<shared>
  <log-settings>
    <syslog>
      <entry name="SYSLOG-PROFILE">
        <server>
          <entry name="SYSLOG-1">
            <transport>UDP</transport>
            <port>514</port>
            <server><SYSLOG_SERVER_1></server>
            <syslog-format>BSD</syslog-format>
            <facility>LOG_LOCAL7</facility>
          </entry>
          <entry name="SYSLOG-2">
            <transport>UDP</transport>
            <port>514</port>
            <server><SYSLOG_SERVER_2></server>
            <syslog-format>BSD</syslog-format>
            <facility>LOG_LOCAL7</facility>
          </entry>
        </server>
      </entry>
    </syslog>
    <profiles>
      <entry name="LOG-ALL">
        <match-list>
          <entry name="TRAFFIC-LOGS">
            <log-type>traffic</log-type>
            <send-syslog>
              <using-syslog-setting>SYSLOG-PROFILE</using-syslog-setting>
            </send-syslog>
          </entry>
          <entry name="THREAT-LOGS">
            <log-type>threat</log-type>
            <send-syslog>
              <using-syslog-setting>SYSLOG-PROFILE</using-syslog-setting>
            </send-syslog>
          </entry>
          <entry name="URL-LOGS">
            <log-type>url</log-type>
            <send-syslog>
              <using-syslog-setting>SYSLOG-PROFILE</using-syslog-setting>
            </send-syslog>
          </entry>
          <entry name="AUTH-LOGS">
            <log-type>auth</log-type>
            <send-syslog>
              <using-syslog-setting>SYSLOG-PROFILE</using-syslog-setting>
            </send-syslog>
          </entry>
        </match-list>
      </entry>
    </profiles>
  </log-settings>
</shared>

<devices>
<entry name="localhost.localdomain">

  <!-- ============================================================ -->
  <!-- DEVICE CONFIG                                                 -->
  <!-- ============================================================ -->
  <deviceconfig>
    <system>
      <hostname>PA-5220-01</hostname>
      <domain><DOMAIN_NAME></domain>
      <ip-address><MGMT_IP></ip-address>
      <netmask><MGMT_MASK></netmask>
      <default-gateway><MGMT_GATEWAY></default-gateway>
      <timezone>UTC</timezone>

      <dns-setting>
        <servers>
          <primary><DNS_SERVER_1></primary>
          <secondary><DNS_SERVER_2></secondary>
        </servers>
      </dns-setting>

      <ntp-servers>
        <primary-ntp-server>
          <ntp-server-address><NTP_SERVER_1></ntp-server-address>
          <authentication-type>
            <autokey/>
          </authentication-type>
        </primary-ntp-server>
        <secondary-ntp-server>
          <ntp-server-address><NTP_SERVER_2></ntp-server-address>
        </secondary-ntp-server>
      </ntp-servers>

      <login-banner>
===============================================================
  UNAUTHORIZED ACCESS TO THIS DEVICE IS PROHIBITED.
  You must have explicit, authorized permission to access or
  configure this device. All activities are monitored and logged.
  Unauthorized access attempts will be reported.
===============================================================
      </login-banner>

      <!-- Management interface restrictions -->
      <permitted-ip>
        <entry name="MGMT-SUBNET">
          <ip-address><MGMT_SUBNET></ip-address>
          <ip-netmask><MGMT_MASK></ip-netmask>
        </entry>
      </permitted-ip>

      <!-- Idle timeout (minutes) -->
      <idle-timeout>10</idle-timeout>

      <!-- SSL/TLS Settings -->
      <ssl-tls-service-profile>TLS-1-2-PROFILE</ssl-tls-service-profile>
    </system>

    <setting>
      <management>
        <!-- Disable HTTP, allow only HTTPS -->
        <admin-lockout>
          <failed-attempts>5</failed-attempts>
          <lockout-time>30</lockout-time>
        </admin-lockout>
        <idle-timeout>10</idle-timeout>
        <enable-log-high-dp-load>yes</enable-log-high-dp-load>
      </management>
      <logging>
        <max-log-rate>5000</max-log-rate>
      </logging>
    </setting>
  </deviceconfig>

  <!-- ============================================================ -->
  <!-- NETWORK                                                       -->
  <!-- ============================================================ -->
  <network>
    <interface>
      <!-- WAN Interface (Untrust) -->
      <ethernet>
        <entry name="ethernet1/1">
          <layer3>
            <ip>
              <entry name="<WAN_IP>/<WAN_PREFIX>"/>
            </ip>
            <interface-management-profile>WAN-MGMT-RESTRICT</interface-management-profile>
            <lldp>
              <enable>no</enable>
            </lldp>
          </layer3>
          <comment>WAN / Internet uplink to ISP</comment>
        </entry>

        <!-- LAN Interface (Trust) -->
        <entry name="ethernet1/2">
          <layer3>
            <ip>
              <entry name="<LAN_IP>/<LAN_PREFIX>"/>
            </ip>
            <interface-management-profile>LAN-MGMT</interface-management-profile>
          </layer3>
          <comment>LAN trunk to Core Switch</comment>
        </entry>

        <!-- LAN Interface 2 (Trust - redundant) -->
        <entry name="ethernet1/3">
          <layer3>
            <ip>
              <entry name="<LAN2_IP>/<LAN2_PREFIX>"/>
            </ip>
            <interface-management-profile>LAN-MGMT</interface-management-profile>
          </layer3>
          <comment>LAN trunk to Core Switch 2 (redundant)</comment>
        </entry>

        <!-- DMZ Interface -->
        <entry name="ethernet1/4">
          <layer3>
            <ip>
              <entry name="<DMZ_IP>/<DMZ_PREFIX>"/>
            </ip>
            <interface-management-profile>DMZ-RESTRICT</interface-management-profile>
          </layer3>
          <comment>DMZ server segment</comment>
        </entry>

        <!-- HA Interfaces -->
        <entry name="ethernet1/15">
          <ha/>
          <comment>HA2 - Data link</comment>
        </entry>
        <entry name="ethernet1/16">
          <ha/>
          <comment>HA3 - Packet forwarding</comment>
        </entry>
      </ethernet>
    </interface>

    <!-- Interface Management Profiles -->
    <profiles>
      <interface-management-profile>
        <entry name="WAN-MGMT-RESTRICT">
          <ping>yes</ping>
          <!-- No management access from WAN -->
        </entry>
        <entry name="LAN-MGMT">
          <ping>yes</ping>
          <ssh>yes</ssh>
          <https>yes</https>
          <snmp>yes</snmp>
          <response-pages>yes</response-pages>
          <permitted-ip>
            <entry name="<MGMT_SUBNET>/<MGMT_PREFIX>"/>
          </permitted-ip>
        </entry>
        <entry name="DMZ-RESTRICT">
          <ping>yes</ping>
          <!-- No management from DMZ -->
        </entry>
      </interface-management-profile>
    </profiles>

    <!-- Virtual Router -->
    <virtual-router>
      <entry name="VR-DEFAULT">
        <interface>
          <member>ethernet1/1</member>
          <member>ethernet1/2</member>
          <member>ethernet1/3</member>
          <member>ethernet1/4</member>
        </interface>
        <routing-table>
          <ip>
            <static-route>
              <entry name="DEFAULT-ROUTE">
                <destination>0.0.0.0/0</destination>
                <nexthop>
                  <ip-address><ISP_GATEWAY></ip-address>
                </nexthop>
                <interface>ethernet1/1</interface>
                <metric>10</metric>
              </entry>
              <entry name="USERS-NETWORK">
                <destination><USERS_SUBNET>/<USERS_PREFIX></destination>
                <nexthop>
                  <ip-address><CORE_SW_IP></ip-address>
                </nexthop>
                <interface>ethernet1/2</interface>
              </entry>
              <entry name="SERVERS-NETWORK">
                <destination><SERVERS_SUBNET>/<SERVERS_PREFIX></destination>
                <nexthop>
                  <ip-address><CORE_SW_IP></ip-address>
                </nexthop>
                <interface>ethernet1/2</interface>
              </entry>
              <entry name="VOICE-NETWORK">
                <destination><VOICE_SUBNET>/<VOICE_PREFIX></destination>
                <nexthop>
                  <ip-address><CORE_SW_IP></ip-address>
                </nexthop>
                <interface>ethernet1/2</interface>
              </entry>
            </static-route>
          </ip>
        </routing-table>

        <!-- OSPF (OPTIONAL - use instead of static routes) -->
        <!--
        <protocol>
          <ospf>
            <router-id><LOOPBACK_IP></router-id>
            <area>
              <entry name="0.0.0.0">
                <interface>
                  <entry name="ethernet1/2">
                    <authentication>md5</authentication>
                    <passive>no</passive>
                    <link-type>p2p</link-type>
                    <bfd>
                      <profile>BFD-FAST</profile>
                    </bfd>
                  </entry>
                  <entry name="ethernet1/3">
                    <authentication>md5</authentication>
                    <passive>no</passive>
                  </entry>
                </interface>
              </entry>
            </area>
            <enable>yes</enable>
          </ospf>
        </protocol>
        -->
      </entry>
    </virtual-router>
  </network>

  <!-- ============================================================ -->
  <!-- ZONES                                                         -->
  <!-- ============================================================ -->
  <zone>
    <entry name="UNTRUST">
      <network>
        <layer3>
          <member>ethernet1/1</member>
        </layer3>
      </network>
      <enable-packet-buffer-protection>yes</enable-packet-buffer-protection>
    </entry>
    <entry name="TRUST">
      <network>
        <layer3>
          <member>ethernet1/2</member>
          <member>ethernet1/3</member>
        </layer3>
      </network>
      <enable-packet-buffer-protection>yes</enable-packet-buffer-protection>
    </entry>
    <entry name="DMZ">
      <network>
        <layer3>
          <member>ethernet1/4</member>
        </layer3>
      </network>
      <enable-packet-buffer-protection>yes</enable-packet-buffer-protection>
    </entry>
  </zone>

  <!-- ============================================================ -->
  <!-- ADDRESS OBJECTS                                                -->
  <!-- ============================================================ -->
  <address>
    <entry name="NET-USERS">
      <ip-netmask><USERS_SUBNET>/<USERS_PREFIX></ip-netmask>
      <description>User workstation network</description>
      <tag>
        <member>Internal</member>
      </tag>
    </entry>
    <entry name="NET-SERVERS">
      <ip-netmask><SERVERS_SUBNET>/<SERVERS_PREFIX></ip-netmask>
      <description>Server network</description>
      <tag>
        <member>Internal</member>
      </tag>
    </entry>
    <entry name="NET-VOICE">
      <ip-netmask><VOICE_SUBNET>/<VOICE_PREFIX></ip-netmask>
      <description>VoIP network</description>
      <tag>
        <member>Internal</member>
      </tag>
    </entry>
    <entry name="NET-DMZ">
      <ip-netmask><DMZ_SUBNET>/<DMZ_PREFIX></ip-netmask>
      <description>DMZ servers</description>
      <tag>
        <member>DMZ</member>
      </tag>
    </entry>
    <entry name="NET-MGMT">
      <ip-netmask><MGMT_SUBNET>/<MGMT_PREFIX></ip-netmask>
      <description>Management network</description>
    </entry>
    <entry name="SRV-DNS-1">
      <ip-netmask><DNS_SERVER_1>/32</ip-netmask>
    </entry>
    <entry name="SRV-DNS-2">
      <ip-netmask><DNS_SERVER_2>/32</ip-netmask>
    </entry>
    <entry name="SRV-SYSLOG-1">
      <ip-netmask><SYSLOG_SERVER_1>/32</ip-netmask>
    </entry>
  </address>

  <address-group>
    <entry name="GRP-INTERNAL-ALL">
      <static>
        <member>NET-USERS</member>
        <member>NET-SERVERS</member>
        <member>NET-VOICE</member>
      </static>
    </entry>
    <entry name="GRP-DNS-SERVERS">
      <static>
        <member>SRV-DNS-1</member>
        <member>SRV-DNS-2</member>
      </static>
    </entry>
  </address-group>

  <!-- ============================================================ -->
  <!-- SECURITY PROFILES                                              -->
  <!-- ============================================================ -->

  <!-- Antivirus Profile -->
  <profiles>
    <virus>
      <entry name="AV-STRICT">
        <decoder>
          <entry name="http">
            <action>reset-both</action>
            <wildfire-action>reset-both</wildfire-action>
          </entry>
          <entry name="smtp">
            <action>reset-both</action>
            <wildfire-action>reset-both</wildfire-action>
          </entry>
          <entry name="ftp">
            <action>reset-both</action>
            <wildfire-action>reset-both</wildfire-action>
          </entry>
          <entry name="imap">
            <action>reset-both</action>
            <wildfire-action>reset-both</wildfire-action>
          </entry>
          <entry name="pop3">
            <action>reset-both</action>
            <wildfire-action>reset-both</wildfire-action>
          </entry>
          <entry name="smb">
            <action>reset-both</action>
            <wildfire-action>reset-both</wildfire-action>
          </entry>
        </decoder>
      </entry>
    </virus>

    <!-- Anti-Spyware Profile -->
    <spyware>
      <entry name="AS-STRICT">
        <rules>
          <entry name="BLOCK-CRITICAL-HIGH">
            <action>
              <reset-both/>
            </action>
            <severity>
              <member>critical</member>
              <member>high</member>
            </severity>
            <threat-name>any</threat-name>
            <category>any</category>
            <packet-capture>single-packet</packet-capture>
          </entry>
          <entry name="DEFAULT-MEDIUM-LOW">
            <action>
              <default-action/>
            </action>
            <severity>
              <member>medium</member>
              <member>low</member>
              <member>informational</member>
            </severity>
            <threat-name>any</threat-name>
            <category>any</category>
          </entry>
        </rules>
        <botnet-domains>
          <lists>
            <entry name="default-paloalto-dns">
              <action>
                <sinkhole/>
              </action>
              <packet-capture>single-packet</packet-capture>
            </entry>
          </lists>
          <dns-security-categories>
            <entry name="pan-dns-sec-malware">
              <action>sinkhole</action>
              <log-level>default</log-level>
              <packet-capture>single-packet</packet-capture>
            </entry>
            <entry name="pan-dns-sec-phishing">
              <action>sinkhole</action>
              <log-level>default</log-level>
            </entry>
            <entry name="pan-dns-sec-cc">
              <action>sinkhole</action>
              <log-level>default</log-level>
              <packet-capture>single-packet</packet-capture>
            </entry>
          </dns-security-categories>
          <sinkhole>
            <ipv4-address>72.5.65.111</ipv4-address>
            <ipv6-address>::1</ipv6-address>
          </sinkhole>
        </botnet-domains>
      </entry>
    </spyware>

    <!-- Vulnerability Protection Profile -->
    <vulnerability>
      <entry name="VP-STRICT">
        <rules>
          <entry name="BLOCK-CRITICAL-HIGH">
            <action>
              <reset-both/>
            </action>
            <vendor-id>
              <member>any</member>
            </vendor-id>
            <severity>
              <member>critical</member>
              <member>high</member>
            </severity>
            <host>any</host>
            <category>any</category>
            <packet-capture>single-packet</packet-capture>
          </entry>
          <entry name="ALERT-MEDIUM">
            <action>
              <alert/>
            </action>
            <severity>
              <member>medium</member>
            </severity>
            <host>any</host>
            <category>any</category>
          </entry>
          <entry name="DEFAULT-LOW-INFO">
            <action>
              <default-action/>
            </action>
            <severity>
              <member>low</member>
              <member>informational</member>
            </severity>
            <host>any</host>
            <category>any</category>
          </entry>
        </rules>
      </entry>
    </vulnerability>

    <!-- URL Filtering Profile -->
    <url-filtering>
      <entry name="URL-STANDARD">
        <credential-enforcement>
          <mode>
            <ip-user/>
          </mode>
        </credential-enforcement>
        <block>
          <member>adult</member>
          <member>command-and-control</member>
          <member>cryptocurrency</member>
          <member>dynamic-dns</member>
          <member>extremism</member>
          <member>gambling</member>
          <member>grayware</member>
          <member>hacking</member>
          <member>malware</member>
          <member>newly-registered-domain</member>
          <member>not-resolved</member>
          <member>parked</member>
          <member>peer-to-peer</member>
          <member>phishing</member>
          <member>proxy-avoidance-and-anonymizers</member>
          <member>questionable</member>
          <member>ransomware</member>
          <member>unknown</member>
          <member>weapons</member>
        </block>
        <alert>
          <member>high-risk</member>
          <member>medium-risk</member>
          <member>insufficient-content</member>
        </alert>
        <log-http-hdr-xff>yes</log-http-hdr-xff>
        <log-http-hdr-referer>yes</log-http-hdr-referer>
      </entry>
    </url-filtering>

    <!-- File Blocking Profile -->
    <file-blocking>
      <entry name="FB-STRICT">
        <rules>
          <entry name="BLOCK-DANGEROUS">
            <application>
              <member>any</member>
            </application>
            <file-type>
              <member>bat</member>
              <member>cab</member>
              <member>class</member>
              <member>cmd</member>
              <member>dll</member>
              <member>exe</member>
              <member>hlp</member>
              <member>hta</member>
              <member>jar</member>
              <member>msi</member>
              <member>pif</member>
              <member>ps1</member>
              <member>reg</member>
              <member>scr</member>
              <member>vbe</member>
              <member>vbs</member>
              <member>wsf</member>
            </file-type>
            <direction>both</direction>
            <action>block</action>
          </entry>
          <entry name="ALERT-EXECUTABLES">
            <application>
              <member>any</member>
            </application>
            <file-type>
              <member>pe</member>
              <member>elf</member>
              <member>mach-o</member>
            </file-type>
            <direction>both</direction>
            <action>alert</action>
          </entry>
        </rules>
      </entry>
    </file-blocking>

    <!-- WildFire Analysis Profile -->
    <wildfire-analysis>
      <entry name="WF-ALL">
        <rules>
          <entry name="FORWARD-ALL">
            <application>
              <member>any</member>
            </application>
            <file-type>
              <member>any</member>
            </file-type>
            <direction>both</direction>
            <analysis>public-cloud</analysis>
          </entry>
        </rules>
      </entry>
    </wildfire-analysis>

    <!-- Security Profile Group -->
    <profile-group>
      <entry name="SPG-STANDARD">
        <virus>
          <member>AV-STRICT</member>
        </virus>
        <spyware>
          <member>AS-STRICT</member>
        </spyware>
        <vulnerability>
          <member>VP-STRICT</member>
        </vulnerability>
        <url-filtering>
          <member>URL-STANDARD</member>
        </url-filtering>
        <file-blocking>
          <member>FB-STRICT</member>
        </file-blocking>
        <wildfire-analysis>
          <member>WF-ALL</member>
        </wildfire-analysis>
      </entry>
    </profile-group>
  </profiles>

  <!-- ============================================================ -->
  <!-- SECURITY POLICIES (Zero Trust - Deny by Default)              -->
  <!-- ============================================================ -->
  <rulebase>
    <security>
      <rules>
        <!-- === TRUST → UNTRUST === -->
        <entry name="USERS-INTERNET">
          <from>
            <member>TRUST</member>
          </from>
          <to>
            <member>UNTRUST</member>
          </to>
          <source>
            <member>NET-USERS</member>
          </source>
          <destination>
            <member>any</member>
          </destination>
          <application>
            <member>ssl</member>
            <member>web-browsing</member>
            <member>dns</member>
            <member>ntp</member>
            <member>ms-update</member>
            <member>apple-update</member>
            <member>ubuntu-update</member>
          </application>
          <service>
            <member>application-default</member>
          </service>
          <action>allow</action>
          <profile-setting>
            <group>
              <member>SPG-STANDARD</member>
            </group>
          </profile-setting>
          <log-setting>LOG-ALL</log-setting>
          <log-start>no</log-start>
          <log-end>yes</log-end>
          <description>Allow users to browse internet with full inspection</description>
          <tag>
            <member>Outbound</member>
          </tag>
        </entry>

        <entry name="SERVERS-UPDATES">
          <from>
            <member>TRUST</member>
          </from>
          <to>
            <member>UNTRUST</member>
          </to>
          <source>
            <member>NET-SERVERS</member>
          </source>
          <destination>
            <member>any</member>
          </destination>
          <application>
            <member>ssl</member>
            <member>web-browsing</member>
            <member>dns</member>
            <member>ntp</member>
            <member>apt-get</member>
            <member>yum</member>
            <member>ms-update</member>
          </application>
          <service>
            <member>application-default</member>
          </service>
          <action>allow</action>
          <profile-setting>
            <group>
              <member>SPG-STANDARD</member>
            </group>
          </profile-setting>
          <log-setting>LOG-ALL</log-setting>
          <log-end>yes</log-end>
          <description>Allow servers to fetch updates and DNS</description>
        </entry>

        <!-- === TRUST → DMZ === -->
        <entry name="USERS-TO-DMZ-WEB">
          <from>
            <member>TRUST</member>
          </from>
          <to>
            <member>DMZ</member>
          </to>
          <source>
            <member>NET-USERS</member>
          </source>
          <destination>
            <member>NET-DMZ</member>
          </destination>
          <application>
            <member>ssl</member>
            <member>web-browsing</member>
          </application>
          <service>
            <member>application-default</member>
          </service>
          <action>allow</action>
          <log-setting>LOG-ALL</log-setting>
          <log-end>yes</log-end>
          <description>Allow users to access DMZ web services</description>
        </entry>

        <!-- === UNTRUST → DMZ (Published Services) === -->
        <entry name="INTERNET-TO-DMZ-WEB">
          <from>
            <member>UNTRUST</member>
          </from>
          <to>
            <member>DMZ</member>
          </to>
          <source>
            <member>any</member>
          </source>
          <destination>
            <member>NET-DMZ</member>
          </destination>
          <application>
            <member>ssl</member>
            <member>web-browsing</member>
          </application>
          <service>
            <member>application-default</member>
          </service>
          <action>allow</action>
          <profile-setting>
            <group>
              <member>SPG-STANDARD</member>
            </group>
          </profile-setting>
          <log-setting>LOG-ALL</log-setting>
          <log-end>yes</log-end>
          <description>Published web services accessible from internet</description>
        </entry>

        <!-- === DMZ → TRUST (restricted backend access) === -->
        <entry name="DMZ-TO-SERVERS-DB">
          <from>
            <member>DMZ</member>
          </from>
          <to>
            <member>TRUST</member>
          </to>
          <source>
            <member>NET-DMZ</member>
          </source>
          <destination>
            <member>NET-SERVERS</member>
          </destination>
          <application>
            <member>mysql</member>
            <member>postgresql</member>
            <member>mssql-db</member>
          </application>
          <service>
            <member>application-default</member>
          </service>
          <action>allow</action>
          <log-setting>LOG-ALL</log-setting>
          <log-end>yes</log-end>
          <description>DMZ web servers to backend databases only</description>
        </entry>

        <!-- === TRUST Intra-zone (optional micro-segmentation) === -->
        <entry name="USERS-TO-SERVERS-RESTRICTED">
          <from>
            <member>TRUST</member>
          </from>
          <to>
            <member>TRUST</member>
          </to>
          <source>
            <member>NET-USERS</member>
          </source>
          <destination>
            <member>NET-SERVERS</member>
          </destination>
          <application>
            <member>ssl</member>
            <member>web-browsing</member>
            <member>ms-ds-smb</member>
            <member>msrpc</member>
            <member>dns</member>
            <member>active-directory</member>
            <member>ldap</member>
            <member>kerberos</member>
          </application>
          <service>
            <member>application-default</member>
          </service>
          <action>allow</action>
          <log-setting>LOG-ALL</log-setting>
          <log-end>yes</log-end>
          <description>Users to servers - approved applications only (zero trust)</description>
        </entry>

        <!-- === EXPLICIT DENY ALL (with logging) === -->
        <entry name="DENY-ALL-LOG">
          <from>
            <member>any</member>
          </from>
          <to>
            <member>any</member>
          </to>
          <source>
            <member>any</member>
          </source>
          <destination>
            <member>any</member>
          </destination>
          <application>
            <member>any</member>
          </application>
          <service>
            <member>any</member>
          </service>
          <action>deny</action>
          <log-setting>LOG-ALL</log-setting>
          <log-end>yes</log-end>
          <description>Explicit deny-all with full logging</description>
          <tag>
            <member>Cleanup</member>
          </tag>
        </entry>
      </rules>
    </security>

    <!-- NAT Rules -->
    <nat>
      <rules>
        <entry name="SNAT-INTERNAL-TO-WAN">
          <from>
            <member>TRUST</member>
          </from>
          <to>
            <member>UNTRUST</member>
          </to>
          <source>
            <member>GRP-INTERNAL-ALL</member>
          </source>
          <destination>
            <member>any</member>
          </destination>
          <service>any</service>
          <source-translation>
            <dynamic-ip-and-port>
              <interface-address>
                <interface>ethernet1/1</interface>
              </interface-address>
            </dynamic-ip-and-port>
          </source-translation>
          <description>Source NAT for internal networks going to internet</description>
        </entry>
      </rules>
    </nat>
  </rulebase>

  <!-- ============================================================ -->
  <!-- HIGH AVAILABILITY (Active/Passive)                             -->
  <!-- ============================================================ -->
  <!-- OPTIONAL: Uncomment and configure if HA pair -->
  <!--
  <high-availability>
    <interface>
      <ha1>
        <port>management</port>
        <ip-address><HA1_IP></ip-address>
        <netmask><HA1_MASK></netmask>
      </ha1>
      <ha2>
        <port>ethernet1/15</port>
        <ip-address><HA2_IP></ip-address>
        <netmask><HA2_MASK></netmask>
      </ha2>
      <ha3>
        <port>ethernet1/16</port>
      </ha3>
    </interface>
    <group>
      <group-id>1</group-id>
      <peer-ip><HA_PEER_MGMT_IP></peer-ip>
      <mode>
        <active-passive>
          <passive-link-state>auto</passive-link-state>
        </active-passive>
      </mode>
      <state-synchronization>
        <enabled>yes</enabled>
      </state-synchronization>
      <election-option>
        <device-priority>100</device-priority>
        <preemptive>no</preemptive>
        <heartbeat-backup>yes</heartbeat-backup>
      </election-option>
      <monitoring>
        <link-monitoring>
          <link-group>
            <entry name="WAN-MONITOR">
              <interface>
                <member>ethernet1/1</member>
              </interface>
            </entry>
            <entry name="LAN-MONITOR">
              <interface>
                <member>ethernet1/2</member>
                <member>ethernet1/3</member>
              </interface>
            </entry>
          </link-group>
        </link-monitoring>
      </monitoring>
    </group>
  </high-availability>
  -->

</entry>
</devices>
</config>

<!-- ============================================================ -->
<!-- END OF CONFIGURATION                                          -->
<!-- VantagePoint Networks · vantagepointnetworks.com               -->
<!-- ============================================================ -->
