Repository navigation
Clarification on custom TCP port support for IP-based endpoints via Azure Bastion #9641
Copy link
Copy link
Open
Labels
Auto-AssignAuto assign by botAuto assign by botNetworkNetwork - BastionService AttentionThis issue is responsible by Azure service team.This issue is responsible by Azure service team.bugThis issue requires a change to an existing behavior in the product in order to be resolved.This issue requires a change to an existing behavior in the product in order to be resolved.customer-reportedIssues that are reported by GitHub users external to the Azure organization.Issues that are reported by GitHub users external to the Azure organization.
Description
Activity
- addedbugThis issue requires a change to an existing behavior in the product in order to be resolved.This issue requires a change to an existing behavior in the product in order to be resolved.
on Mar 1, 2026 Thank you for opening this issue, we will look into it.
- addedquestionThe issue doesn't require a change to the product in order to be resolved. Most issues start as thatThe issue doesn't require a change to the product in order to be resolved. Most issues start as thatcustomer-reportedIssues that are reported by GitHub users external to the Azure organization.Issues that are reported by GitHub users external to the Azure organization.
on Mar 1, 2026 - addedAuto-AssignAuto assign by botAuto assign by botAzure CLI TeamThe command of the issue is owned by Azure CLI teamThe command of the issue is owned by Azure CLI teamService AttentionThis issue is responsible by Azure service team.This issue is responsible by Azure service team.
on Mar 1, 2026 microsoft-github-policy-service commented
on Mar 1, 2026 ContributorMore actionsThanks for the feedback! We are routing this to the appropriate team for follow-up. cc aznetsuppgithub.
microsoft-github-policy-service commented
on Mar 1, 2026 ContributorMore actionsThanks for the feedback! We are routing this to the appropriate team for follow-up. cc Isabelle Morris (@isamorris), bastionsuppgithub.
- removedAzure CLI TeamThe command of the issue is owned by Azure CLI teamThe command of the issue is owned by Azure CLI teamquestionThe issue doesn't require a change to the product in order to be resolved. Most issues start as thatThe issue doesn't require a change to the product in order to be resolved. Most issues start as that
on Mar 1, 2026
Metadata
Metadata
Assignees
Labels
Auto-AssignAuto assign by botAuto assign by botNetworkNetwork - BastionService AttentionThis issue is responsible by Azure service team.This issue is responsible by Azure service team.bugThis issue requires a change to an existing behavior in the product in order to be resolved.This issue requires a change to an existing behavior in the product in order to be resolved.customer-reportedIssues that are reported by GitHub users external to the Azure organization.Issues that are reported by GitHub users external to the Azure organization.
Overview
We are currently using Azure Bastion for secure access to Azure VM resources inside our private virtual network. The native client + tunnel capability works well for Azure VM access (SSH/RDP), but we would like clarification regarding support for generic TCP tunneling to IP-based endpoints.
Azure Bastion also supports secure tunneling to Azure Kubernetes Service (AKS) private clusters, which further demonstrates the value of generic TCP tunneling beyond Azure VM resource IDs, yet the current support still appears to be scoped to specific services rather than arbitrary IP/port pairs.
Operational Use Cases
In environments where public exposure is disabled and VPN connectivity is intentionally avoided, Azure Bastion tunneling would be our preferred secure access mechanism for tasks such as:
These scenarios require secure, point‑to‑point TCP connectivity to private endpoints without introducing additional infrastructure.
Current Limitation and Architectural Inconsistency
Custom port selection is currently supported when targeting an Azure VM via its resource ID, but it is not yet available for IP-based targets, which I assume reflects a deliberate security design decision on your end. From an architectural perspective, however, this distinction appears inconsistent: if Bastion can establish a TCP tunnel to an arbitrary port on Azure VM, there does not appear to be a technical or objective security reason preventing similar behavior for private IP-based endpoints.
Our current workaround involves creating a DNAT rule on a firewall to redirect traffic, effectively allowing the Azure Bastion host to reach the Non-Azure VM target indirectly, however, this adds operational complexity, additional infrastructure components, and most importantly - it's not a
scalableandproduction-worthysolution.Questions for the Azure Bastion Product Team
Related command
Where
10.10.10.10is the private endpoint of our Azure Key Vault, for example.Errors
N/A
Issue script & Debug output
N/A
Expected behavior
N/A
Environment Summary
N/A
Additional context
No response