Azure SQL Server(禁用公网访问)通过Azure Firewall公网连接可行性咨询
问题解答:禁用公网访问的Azure SQL Server能否通过Azure Firewall从公网访问
结论:直接通过Azure Firewall的DNAT/Application NAT/Network NAT规则无法实现该场景
原因很明确:当Azure SQL Server禁用公网访问并配置私有端点后,SQL服务仅接受来自关联虚拟网络或对等虚拟网络的私有流量,其公共IP地址会被完全禁用,公网流量无法直接触达SQL服务的私有端点。你尝试的NAT类规则本质是将公网流量转发到私有IP,但SQL服务端会拒绝源为公网的请求——因为私有端点的流量强制要求来自Azure私有网络环境。
可行的替代方案
- 使用Azure Bastion跳板访问
在Hub虚拟网络部署Azure Bastion,公网用户通过Bastion连接到Hub或Spoke内的一台跳转虚拟机(无需公网IP),再从该虚拟机使用SSMS连接SQL Server的私有DNS名称或私有IP。这种方式全程流量在Azure私有网络内流转,是最安全合规的公网访问途径。 - 通过企业专线接入
若你有本地VPN或ExpressRoute连接到Azure Hub网络,可将Azure Firewall作为流量出口,本地网络通过专线接入Azure私有网络后,访问SQL Server的私有端点。但这不属于直接从公网WWW访问,而是企业内网延伸场景。 - 临时开启公网访问(不推荐)
若需临时应急访问,可短暂开启SQL Server的公网访问,将Azure Firewall的公网IP添加到SQL的防火墙白名单,直接用SSMS连接SQL的公共FQDN。完成操作后立即关闭公网访问,避免安全风险。
内容的提问来源于stack exchange,提问作者Phil
相关产品推荐
相关产品推荐

