{"id":18226831,"url":"https://github.com/jpfulton/azure-personal-network","last_synced_at":"2026-05-05T06:39:14.171Z","repository":{"id":187077556,"uuid":"676221346","full_name":"jpfulton/azure-personal-network","owner":"jpfulton","description":"A collection of Bicep templates, PowerShell scripts and shell scripts for working with a personal network in Azure.","archived":false,"fork":false,"pushed_at":"2023-09-15T16:52:50.000Z","size":288,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-10T03:06:59.590Z","etag":null,"topics":["azure","azurecli","bash","bicep","powershell"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jpfulton.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-08-08T17:48:04.000Z","updated_at":"2023-08-28T01:44:40.000Z","dependencies_parsed_at":"2025-06-10T03:07:08.267Z","dependency_job_id":"6bc6d4d9-eb3d-4e00-ae51-fb0dcdbdb250","html_url":"https://github.com/jpfulton/azure-personal-network","commit_stats":null,"previous_names":["jpfulton/azure-personal-network"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/jpfulton/azure-personal-network","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpfulton%2Fazure-personal-network","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpfulton%2Fazure-personal-network/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpfulton%2Fazure-personal-network/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpfulton%2Fazure-personal-network/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jpfulton","download_url":"https://codeload.github.com/jpfulton/azure-personal-network/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpfulton%2Fazure-personal-network/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269772583,"owners_count":24473438,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","azurecli","bash","bicep","powershell"],"created_at":"2024-11-04T05:03:45.574Z","updated_at":"2026-05-05T06:39:09.152Z","avatar_url":"https://github.com/jpfulton.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# azure-personal-network\n\n![License](https://img.shields.io/badge/License-MIT-blue)\n![Visitors](https://visitor-badge.laobi.icu/badge?page_id=jpfulton.azure-personal-network)\n\nA collection of\n[Bicep](https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/overview?tabs=bicep)\ntemplates,\n[PowerShell](https://learn.microsoft.com/en-us/powershell/)\nscripts and shell scripts for working with a personal network in Azure.\n\nControl scripts are stored in the `scripts` directory.\n\n## Prerequisites\n\nThis project has dependencies upon Powershell, the Azure CLI and the sshpass utility.\n\n## Install Rosetta if using Apple Silicon\n\nSeveral dependencies required by this project are built only with Intel x86\ninstruction sets. As a result, if you are using a workstation based on Apple Silicon\nprocessors, [Rosetta 2](\u003chttps://en.wikipedia.org/wiki/Rosetta_(software)\u003e) needs to\nbe installed. Use the following command to install the Rosetta binary translator\nto your workstation.\n\n```bash\nsoftwareupdate --install-rosetta\n```\n\n## Install Dependencies on macOS\n\nInstall [Homebrew](https://brew.sh):\n\n```bash\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\n```\n\nInstall the Azure CLI:\n\n```bash\nbrew update \u0026\u0026 brew install azure-cli\n```\n\nInstall PowerShell:\n\n```bash\nbrew update \u0026\u0026 brew install --cask powershell\n```\n\nInstall the sshpass utility:\n\n```bash\ncd dependencies\n./install-sshpass.sh\n```\n\n## Install Azure Subscription Features\n\nThe virtual machines created in this project utilize the Azure Encryption at Host\nsubscription feature to provide encryption between the virtual machine and managed\ndisk storage. This feature may not be registered for your subscription. Use the\nfollowing command to register the feature using the Azure CLI.\n\n```bash\naz feature register --namespace Microsoft.Compute --name EncryptionAtHost\n```\n\nIt will take several minutes for the feature to be registered. Run the following\ncommand to check registration status. Once the `state` property in the output\nshows `Registered`, the feature will be ready to use and deployments of\nvirtual machines using it will succeed.\n\n```bash\naz feature show --namespace Microsoft.Compute --name EncryptionAtHost\n```\n\n## Create SSH Keys\n\nTwo varieties of local SSH keys will be required in this project:\nan RSA key pair and a ED25519 key pair. The RSA key is required for the Linux\nvirtual machine workflows and the ED22519 key is required for the Windows Server\nvirtual machine workflows. The sections below provide the commands necessary\nto create these keys if your workstation does not already have them in place.\n\n### Create a RSA SSH Key\n\nThis project requires the use of a RSA SSH key. If one has not yet\nbeen generated for your workstation, create one using the following\ncommand.\n\n```bash\nssh-keygen -b 4096 -t rsa\n```\n\n### Create a ED25519 SSH Key\n\nThis project requires the use of\n[ED25519](https://statistics.berkeley.edu/computing/ssh-keys)\nSSH keys. If one has not yet been generated for your workstation,\ncreate one using the following command:\n\n```bash\nssh-keygen -t ed25519 -C \"username@domain.com\"\n```\n\n## Install a Native OpenVPN Client\n\nInstall [Tunnelblick](https://tunnelblick.net/downloads.html) for macOS.\n\n## Next Steps\n\nTo create a basic personal network with a Samba Server configured for\ncompatibility with macOS Time Machine follow this [guide](SETUP_BASIC_NETWORK.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpfulton%2Fazure-personal-network","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjpfulton%2Fazure-personal-network","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpfulton%2Fazure-personal-network/lists"}