Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.
  • Labs icon Lab
  • A Cloud Guru
Azure icon

Create Azure NSGs with Terraform

This lab demonstrates the ease with which we can deploy and manage a Network Security Group. NSGs provides a simple mechanism to filter traffic to and from an Azure internal network. However, NSGs are somewhat limited in the number of rules you can have in place and keeping track of what rules apply in what priority can occasionally have you pulling out your hair. Terraform provides a straightforward way to ensure that new NSGs automatically acquire any base rules required by your IT department, and will allow you to make updates as well as re-order rule priorities without having to manually destroy NSG rules before recreating them.

Azure icon

Path Info

Clock icon Beginner
Clock icon 30m
Clock icon Jan 31, 2020

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    Log into the Azure Portal and set up the Azure CLI for use.

    1. Open the CLI.
    2. Select Bash at the prompt.
    3. Click Show Advanced Settings. Both the Resource Group and Storage Account should be pre-selected with the lab generated values.
    4. In the File share section, choose the Create new radio button and enter console.
    5. Click the Attach Storage button.
    6. Once the command prompt is initialized, proceed to Task 2.
  2. Challenge

    Deploy a Network Security Group with inbound/outbound rules.

    To complete this exercise, please make sure you've completed Task 1.

    1. Use the code block found in the Additional Information and Resources section to create a file and upload it to the CLI.
    2. In the (resource "azurerm_storage_account" "lab") declaration, you'll need to edit the resource_group_name value with the name generated by the lab. Additionally, you'll need to enter a unique name for the storage account that will be used for the file share. The "provider" statement has been added to the code, so you won't need to create a file to deploy the storage account.
    3. Once the file has been uploaded, run terraform init.
    4. Run terraform plan and review the output to confirm that Terraform will create the desired resource. Green plus signs will indicate the resources that need to be added.
    5. Run terraform apply, answering yes to the prompt to continue.
    6. Once Terraform completes the deployment, check the Azure Portal to confirm.

    You're done! Go ahead and shut down the lab.

The Cloud Content team comprises subject matter experts hyper focused on services offered by the leading cloud vendors (AWS, GCP, and Azure), as well as cloud-related technologies such as Linux and DevOps. The team is thrilled to share their knowledge to help you build modern tech solutions from the ground up, secure and optimize your environments, and so much more!

What's a lab?

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.

Start learning by doing today

View Plans