Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
При работе с Бастионом Azure можно использовать группы безопасности сети (NSG). Дополнительные сведения см. в статье Группы безопасности.
На этой схеме:
- Узел Бастиона развернут в виртуальной сети.
- Пользователь подключается к порталу Azure с помощью любого браузера HTML5.
- Пользователь переходит на виртуальную машину Azure по протоколу RDP или SSH.
- Интеграция подключения — установление сеанса RDP или SSH в браузере однократным щелчком
- На виртуальной машине Azure не требуется общедоступный IP-адрес.
Группы безопасности сети
В этом разделе показан сетевой трафик между пользователем и Бастионом Azure, а также через целевые виртуальные машины в виртуальной сети.
Внимание
Если вы решили использовать группу безопасности сети с ресурсом Бастиона Azure, необходимо создать все следующие правила входящего и исходящего трафика. Отсутствие любого из следующих правил в группе безопасности сети приведет к блокировке ресурса Бастиона Azure, в результате чего он не сможет получать необходимые обновления в будущем и, следовательно, не сможет защитить ресурс от возможных уязвимостей системы безопасности.
AzureBastionSubnet
Бастион Azure развертывается, в частности, в подсети AzureBastionSubnet.
Входящий трафик.
- Входящий трафик из общедоступного Интернета. Бастион Azure создаст общедоступный IP-адрес, для которого в общедоступном IP-адресе входящего трафика должен быть включен порт 443. Открывать порт 3389/22 в подсети AzureBastionSubnet НЕ требуется. Обратите внимание, что источником может быть Интернет или указанный вами набор общедоступных IP-адресов.
- Входящий трафик из уровня управления Бастиона Azure. Для подключения уровня управления включите порт 443, входящий для тега службы GatewayManager. Это позволяет включить уровень управления, то есть диспетчер шлюзов сможет взаимодействовать с Бастионом Azure.
- Входящий трафик из плоскости данных Бастиона Azure. Для обмена данными с плоскостью данных между базовыми компонентами Бастиона Azure включите порты 8080, 5701 во входящем направлении из тега службы VirtualNetwork в тег службы VirtualNetwork. Это позволит компонентам Бастиона Azure взаимодействовать друг с другом.
- Входящий трафик из Azure Load Balancer. Для проб работоспособности включите порт 443 во входящем направлении из тега службы AzureLoadBalancer. Это позволит Azure Load Balancer обнаруживать подключение
Исходящий трафик.
- Исходящий трафик на целевые виртуальные машины (ВМ). Бастион Azure будет связываться с целевыми виртуальными машинами по частному IP-адресу. Группы безопасности сети должны разрешить исходящий трафик в другие целевые подсети виртуальных машин для портов 3389 и 22. Если вы используете пользовательские функции портов в номере SKU уровня "Стандартный", убедитесь, что группы безопасности сети разрешают исходящий трафик в тег службы VirtualNetwork в качестве назначения.
- Исходящий трафик из плоскости данных Бастиона Azure. Для обмена данными с плоскостью данных между базовыми компонентами Бастиона Azure включите порты 8080, 5701 в исходящем направлении из тега службы VirtualNetwork в тег службы VirtualNetwork. Это позволит компонентам Бастиона Azure взаимодействовать друг с другом.
- Исходящий трафик к другим общедоступным конечным точкам в Azure. Бастион Azure должен иметь возможность подключения к различным общедоступным конечным точкам в Azure (например, для хранения журналов диагностики и журналов потребления ресурсов). По этой причине Бастиону Azure требуется исходящее подключение через порт 443 к тегу службы AzureCloud.
- Исходящий трафик в Интернет: Бастион Azure должен иметь возможность взаимодействовать с Интернетом для сеанса, бастиона Shareable Link и проверки сертификатов. Поэтому, мы рекомендуем включить порт 80 в исходящем направлении к Интернету.
Скрипт PowerShell для создания указанных выше правил трафика входящего трафика и исходящего трафика
# Connect to Azure Account
Connect-AzAccount
# Get the Network Security Group details
$resourceGroupName = Read-Host ("Enter the name of the Resource Group")
$nsgName = Read-Host ("Enter the name of the Network Security Group")
# Ingress and Egress rules
$rules = @(
@{
Name = "AllowHttpsInbound"
Priority = 120
Direction = "Inbound"
Access = "Allow"
SourceAddressPrefix = "Internet"
SourcePortRange = "*"
DestinationAddressPrefix = "*"
DestinationPortRange = "443"
Protocol = "TCP"
},
@{
Name = "AllowGatewayManagerInbound"
Priority = 130
Direction = "Inbound"
Access = "Allow"
SourceAddressPrefix = "GatewayManager"
SourcePortRange = "*"
DestinationAddressPrefix = "*"
DestinationPortRange = "443"
Protocol = "TCP"
},
@{
Name = "AllowAzureLoadBalancerInbound"
Priority = 140
Direction = "Inbound"
Access = "Allow"
SourceAddressPrefix = "AzureLoadBalancer"
SourcePortRange = "*"
DestinationAddressPrefix = "*"
DestinationPortRange = "443"
Protocol = "TCP"
},
@{
Name = "AllowBastionHostCommunication"
Priority = 150
Direction = "Inbound"
Access = "Allow"
SourceAddressPrefix = "VirtualNetwork"
SourcePortRange = "*"
DestinationAddressPrefix = "VirtualNetwork"
DestinationPortRange = 8080,5701
Protocol = "Ah"
}
@{
Name = "AllowSshRdpOutbound"
Priority = 100
Direction = "Outbound"
Access = "Allow"
SourceAddressPrefix = "*"
SourcePortRange = "*"
DestinationAddressPrefix = "VirtualNetwork"
DestinationPortRange = 22,3389
Protocol = "Ah"
},
@{
Name = "AllowAzureCloudOutbound"
Priority = 110
Direction = "Outbound"
Access = "Allow"
SourceAddressPrefix = "*"
SourcePortRange = "*"
DestinationAddressPrefix = "AzureCloud"
DestinationPortRange = "443"
Protocol = "TCP"
},
@{
Name = "AllowBastionCommunication"
Priority = 120
Direction = "Outbound"
Access = "Allow"
SourceAddressPrefix = "VirtualNetwork"
SourcePortRange = "*"
DestinationAddressPrefix = "VirtualNetwork"
DestinationPortRange = 8080,5701
Protocol = "Ah"
},
@{
Name = "AllowHttpOutbound"
Priority = 130
Direction = "Outbound"
Access = "Allow"
SourceAddressPrefix = "*"
SourcePortRange = "*"
DestinationAddressPrefix = "Internet"
DestinationPortRange = "80"
Protocol = "Ah"
}
)
foreach ($rule in $rules) {
$nsgRule = New-AzNetworkSecurityRuleConfig -Name $rule.Name `
-Priority $rule.Priority `
-Direction $rule.Direction `
-Access $rule.Access `
-SourceAddressPrefix $rule.SourceAddressPrefix `
-SourcePortRange $rule.SourcePortRange `
-DestinationAddressPrefix $rule.DestinationAddressPrefix `
-DestinationPortRange $rule.DestinationPortRange `
-Protocol $rule.Protocol
# Get the details of the Network Security Group and Add rules to the group
$nsg = Get-AzNetworkSecurityGroup -ResourceGroupName $resourceGroupName -Name $nsgName
$nsg.SecurityRules.Add($nsgRule)
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg
}
Подсеть целевой виртуальной машины
Это подсеть, содержащая целевую виртуальную машину, к которой будет нужно подключаться по протоколу RDP или SSH.
- Входящий трафик из Бастиона Azure. Бастион Azure будет подключаться к целевой виртуальной машине через частный IP-адрес. Порты RDP/SSH (порты 3389/22 соответственно или пользовательские значения портов, если вы используете функцию пользовательского порта в рамках номера SKU уровня "Стандартный" или "Премиум") необходимо открыть на целевой стороне виртуальной машины через частный IP-адрес. В этом правиле рекомендуется добавить диапазон IP-адресов подсети Бастиона Azure, чтобы только Бастион мог открывать эти порты на целевых виртуальных машинах в подсети целевой виртуальной машины.
Следующие шаги
Дополнительные сведения о Бастионе Azure см. в разделе Часто задаваемые вопросы.