# Configure Virtual Firewall on Pix ###### tags: `cisco` `pix` Pix image: pix802.bin ### Scenario ``` a. The pix will be configured to support two virtual firewalls (contexts) as admin and ctx2. b. Admin will allocate ethernet0 and ethernet1 and configuration will use admin.cfg in flash c. ctx2 will allocate ethernet2 and ethernet3 and configuration will use ctx2.cfg in flash ``` ### Configuration Example ``` --------------------------------------------------- [1]. Change mode to multiple --------------------------------------------------- pixfirewall# conf t pixfirewall(config)# mode multiple WARNING: This command will change the behavior of the device WARNING: This command will initiate a Reboot Proceed with change mode? [confirm] Convert the system configuration? [confirm] ! The old running configuration file will be written to flash The admin context configuration will be written to flash The new running configuration file was written to flash Security context mode: multiple *** *** ¡X SHUTDOWN NOW ¡X *** *** Message to all terminals: *** *** change mode Rebooting¡K. . . . pixfirewall# show mode Security context mode: multiple pixfirewall# --------------------------------------------------- [2]. Create new contexts --------------------------------------------------- pixfirewall(config)# admin-context admin pixfirewall(config)# context admin pixfirewall(config-ctx)# allocate-interface e0 pixfirewall(config-ctx)# allocate-interface e1 pixfirewall(config-ctx)# config-url flash:/admin.cfg WARNING: Policy map global_policy is already configured as a service policy Cryptochecksum (changed): db73d439 c68976ce 511b0514 cc30ceda INFO: Context admin was created with URL flash:/admin.cfg INFO: Admin context will take some time to come up ¡K. please wait. pixfirewall(config-ctx)# exit pixfirewall(config)# context ctx2 Creating context ¡¥ctx2¡¦¡K Done. (2) pixfirewall(config-ctx)# allocate-interface e2 pixfirewall(config-ctx)# allocate-interface e3 pixfirewall(config-ctx)# config-url flash:/ctx2.cfg WARNING: Could not fetch the URL flash:/ctx2.cfg INFO: Creating context with default config pixfirewall(config-ctx)#exit pixfirewall(config)# --------------------------------------------------- [3]. Configure created virtual context --------------------------------------------------- pixfirewall(config)# changeto context admin pixfirewall/admin(config)# interface e0 pixfirewall/admin(config-if)# ip add 192.168.0.1 255.255.255.0 pixfirewall/admin(config-if)# nameif outside INFO: Security level for "outside" set to 0 by default. pixfirewall/admin(config-if)# interface e1 pixfirewall/admin(config-if)# ip add 10.0.0.1 255.255.255.0 pixfirewall/admin(config-if)# nameif inside INFO: Security level for "inside" set to 100 by default. pixfirewall/admin(config-if)# changeto context ctx2 pixfirewall/ctx2(config)# int e2 pixfirewall/ctx2(config-if)# ip add 192.168.1.1 255.255.255.0 pixfirewall/ctx2(config-if)# nameif outside INFO: Security level for "outside" set to 0 by default. pixfirewall/ctx2(config-if)# int e3 pixfirewall/ctx2(config-if)# ip add 10.0.1.1 255.255.255.0 pixfirewall/ctx2(config-if)# nameif inside INFO: Security level for "inside" set to 100 by default. pixfirewall/ctx2(config-if)# ```