无公网IP的Databricks实例可外部访问,如何限制仅内网/VPN访问?
确保Azure Databricks仅内网/VPN用户访问的解决方案
1. 确认部署模式:必须使用虚拟网络注入(VNet Injection)
- 只有基于VNet注入部署的Databricks实例,才能完全依托企业内网VNet实现访问控制。如果之前是默认部署,需要重新创建实例并选择VNet注入,绑定到你的内网VNet。
2. 配置并验证私有端点(Private Endpoint)
- 给Databricks工作区创建私有端点,关联到VNet的子网:
- 登录Azure门户,找到你的Databricks工作区,进入「网络」>「私有端点连接」,添加私有端点。
- 务必确认私有端点状态为「已批准」,同时配置Azure私有DNS区域,将Databricks的URL解析到私有IP,避免解析到公网地址。
- 检查工作区的网络访问设置:将公网访问设为「禁用」,仅允许私有端点访问,这是防止外部访问的核心配置。
3. 收紧子网的网络安全组(NSG)规则
- 在Databricks所在子网的NSG中,添加精准的入站规则:
- 仅放行企业内网IP段、VPN客户端IP段对443端口的访问,拒绝所有其他来源的入站流量。
- 将NSG的默认入站规则设置为「拒绝」,避免默认规则漏放外部流量。
- 检查VNet路由表:确保没有路由将流量导向公网,所有Databricks相关流量都在VNet内部或通过VPN/ExpressRoute流转。
4. 验证DNS解析的正确性
- 在内网或VPN环境中,测试Databricks URL的解析结果,确认返回的是私有端点的IP,而非公网IP。
- 如果使用自定义DNS服务器,需将
*.azuredatabricks.net这类域名指向Azure私有DNS区域,避免解析到公网地址。
5. 添加工作区级的IP访问列表
- 在Databricks工作区的「管理员设置」>「IP访问列表」中,添加允许的内网/VPN IP范围,将默认规则设为「拒绝」。这一层作为额外安全屏障,即使网络层有疏漏,也能阻挡外部访问。
内容的提问来源于stack exchange,提问作者Karel Macek
相关产品推荐
相关产品推荐

