Skip to main content

VMware on AWS - How to restore NSX DFW firewall rules to previous state

Customers who uses NSX day-in, day-out would like to have a point-in time restore functionality of DFW firewall rules. Many customer have a large footprints in VMC and make changes to DFW quite often.

This feature was missing for long time and we could see its included in recent versions . Let's see how DFW configuration roll back works 

NSX DFW configuration has versioning, and it is stored in the NSX Manager.  Every time when someone update DFW configuration, NSX creates one more version but keep storing the previous ones. You can rollback for previous config but reapplying it once again. 

You can find the options under Networking & Security tab, > Security > Distributed Firewall. In the right side we see an Actions drop down. Choose View to get to the below screen. 



Let’s go through the use case: 

  • 1. Original state- default config with no custom rules: 
  • a. There are no saved configurations during last 30 days:



In my existing test setup, with the current setting everything works well. The test vms are able to ping each other. 



  • 2. New configuration : Let's go ahead and create new rules 
  • 1. Create a new rule to reject the traffic from VM 172.16.30.11. 



As we see in the screenshot the traffic from the VM is now rejected .  Let's try to ping test and confirm the same. 



Let's go to Actions and View the saved configurations. 

In the screen we see a dot with and when we place the cursor on the dot we get to see when the last rule update was done. Look at the time of the change and click on the rule Name 



When we open the last draft , a new window appears with more details. As we see the last change was done by the user " userid" and also the time stamps. 






Expand the lower section under Draft changes to check the rule details : 



The rule what we added shows up here. 

Let's create another policy and a rule for a demo purpose. 


Now we see a new rule Change-2 as well as the Change-1. Let's review the configuration changes snapshot under Actions, > View.  



Let say the changes we made is wrong and impacting the pings. And we decide to roll back to the previous state. 

A. Go to Actions and under View choose the state we need to go back to. In our case its the first dot ( confirm the time lines as well). 




Here we should see 2 Firewall config and 2 Policy ( 1 we added to reject and another one to demo) . Both the policies and rules will be deleted  - 4 in total ( going to exact previous state - before state). 

Push “Load” and revert configuration to the last known-good state before these changes: When below screen appears , click on Load 



In the next screen we could see the state as exactly as previous one. We need to publish them to make it effect. ( click publish) 




Now check the connectivity of the VMs are restored to the original state. 





Other Options : 

Under Actions > click on Save > 

This option helps to store the state of the DFW firewall. We can use this option before making any major changes ( like before change management window). This helps to restore to the previous state if the Change fails. 




And we could see a dot with Star - highlight helps to fetch the details without opening multiple dots. 




FAQ: Service disruptions:

 Rollback of NSX rules is the same process as applying new (or change) DFW rules. I.e., underneath, each ESXi host will get a new list of rules, which corresponds to the ones at the time we are doing the roll back. 

This will lead to the fact that if some other rules (let's call them, useful and valid) were created from the point we want to go back to, they too will be revoked. And consequently, the traffic that was going through them will stop going through right after the rollback. For this reason, before doing a rollback, it is worth looking at all the changes that have happened since then and fixing (cloning/exporting) the "useful" rules. And add them again after you do the rollback. 




Popular posts from this blog

HOW TO EDIT THE BCD REGISTRY FILE

The BCD registry file controls which operating system installation starts and how long the boot manager waits before starting Windows. Basically, it’s like the Boot.ini file in earlier versions of Windows. If you need to edit it, the easiest way is to use the Startup And Recovery tool from within Vista. Just follow these steps: 1. Click Start. Right-click Computer, and then click Properties. 2. Click Advanced System Settings. 3. On the Advanced tab, under Startup and Recovery, click Settings. 4. Click the Default Operating System list, and edit other startup settings. Then, click OK. Same as Windows XP, right? But you’re probably not here because you couldn’t find that dialog box. You’re probably here because Windows Vista won’t start. In that case, you shouldn’t even worry about editing the BCD. Just run Startup Repair, and let the tool do what it’s supposed to. If you’re an advanced user, like an IT guy, you might want to edit the BCD file yourself. You can do this

DNS Scavenging.

                        DNS Scavenging is a great answer to a problem that has been nagging everyone since RFC 2136 came out way back in 1997.  Despite many clever methods of ensuring that clients and DHCP servers that perform dynamic updates clean up after themselves sometimes DNS can get messy.  Remember that old test server that you built two years ago that caught fire before it could be used?  Probably not.  DNS still remembers it though.  There are two big issues with DNS scavenging that seem to come up a lot: "I'm hitting this 'scavenge now' button like a snare drum and nothing is happening.  Why?" or "I woke up this morning, my DNS zones are nearly empty and Active Directory is sitting in a corner rocking back and forth crying.  What happened?" This post should help us figure out when the first issue will happen and completely avoid the second.  We'll go through how scavenging is setup then I'll give you my best practices.  Scavenging s

AD LDS – Syncronizing AD LDS with Active Directory

First, we will install the AD LDS Instance: 1. Create and AD LDS instance by clicking Start -> Administrative Tools -> Active Directory Lightweight Directory Services Setup Wizard. The Setup Wizard appears. 2. Click Next . The Setup Options dialog box appears. For the sake of this guide, a unique instance will be the primary focus. I will have a separate post regarding AD LDS replication at some point in the near future. 3. Select A unique instance . 4. Click Next and the Instance Name dialog box appears. The instance name will help you identify and differentiate it from other instances that you may have installed on the same end point. The instance name will be listed in the data directory for the instance as well as in the Add or Remove Programs snap-in. 5. Enter a unique instance name, for example IDG. 6. Click Next to display the Ports configuration dialog box. 7. Leave ports at their default values unless you have conflicts with the default values. 8. Click N