This lab recreates a very basic scenario of micro-segmentation where you are allowing access to an internal web server endpoint for an app while blocking the other web server endpoint for the same app. We have defined Security Groups that contain virtual machines. These Security Groups will permit access to one or more virtual machines based on a series of rules.
Note: Please refer to NSX documentation for more details on Security Groups.
1. Network Addressing and Routing
Note: This section assumes that you have a good understanding of IP sets and Security Groups from NSX. Please refer to NSX documentation for more details on IP sets and Security Groups.
AirWatch integrates with NSX by mapping security groups containing IP sets to mobile applications in AirWatch. For this integration, each security group must have an IP Set. When the vpnd service (responsible for per-app VPN) starts on the AirWatch Tunnel it creates an IP alias for each of the IP networks assigned to AirWatch. The IP alias interfaces are then used to to communicate with the network endpoints based on the assigned NSX Security Group for the application.
- The AirWatch tunnel mediates the connection from the device to the designated endpoint. When a managed app on the enrolled device makes connection via per-app tunnel, it is assigned an IP addresses belonging to the IP Sets defined in the diagram.
- Each of our applications (Firefox and Dolphin browser) require a separate range to communicate. In our lab scenario, Dolphin Browser communicates on the range: 10.10.20.x/254 (belonging to IP_SET1). This interface is tied to Edge Services Gateway on 10.10.20.254/24.
- Similarly, Firefox Browser communicates on the range: 10.10.30.x/254 (belonging to IP_SET2). This interface it tied to Edge Services Gateway on 10.10.30.254/24.
- We have our Web-01 setup on a different network with IP address 192.168.20.20/24. This interface is tied to Edge Services Gateway on 192.168.20.254/24.
- Similarly, we have our Web-02 setup on a different network with IP address 192.168.30.20/24. This interface is tied to Edge Services Gateway on 192.168.30.254/24.
With the above architecture, we have NSX Edge Gateway firewall routing traffic the following way:
- SG_IP1 (corresponding to IP_SET1) > SG_Web01 (corresponding to Web-01 server).
- SG_IP2 (corresponding to IP_SET2) > SG_Web01 (corresponding to Web-02 server).
The final piece of the integration is the mapping of AirWatch managed apps:
- Dolphin > SG_IP1 (so that we can access Web-01 server via Dolphin).
- Firefox > SG_IP2 (so that we can access Web-02 server via Chrome).
Important Note: The default access rule is to reject the traffic that does not belong to the above Security groups. This results in Dolphin browser having no access to Web-02 and Chrome browser having no to access Web-01.
2. Lab Flow
To limit the scope of this lab, we have already implemented NSX configuration to enable micro-segmentation. We will perform the following steps (in sequence) to complete this lab:
- Enable REST API Key for your AirWatch Organization Group and install Cloud Connector.
- Complete AirWatch Tunnel Configuration.
- Install AirWatch Tunnel on Linux machine.
- Configure routing on the Tunnel server to allow NSX Edge Gateway to route traffic.
- Enroll an iOS device.
- Validate AirWatch - NSX integration on the enrolled device using browser applications.