Назад | Перейти на главную страницу

Как включить Ping на виртуальной машине Azure Linux

Как я могу включить Ping на виртуальной машине Azure Linux, Centos 6.6 - я знаю, что мы можем включить это на виртуальной машине Windows, но как это сделать для виртуальной машины Linux?

Спасибо.

По умолчанию Azure блокирует ICMP-трафик с помощью групп сетевой безопасности. Для включения необходимо создать специальное разрешающее правило. По соображениям безопасности Azure не разрешает ICMP из Интернета

Некоторые примеры того, как это сделать:

http://setspn.blogspot.com.es/2015/08/azure-quick-tip-block-or-allow-icmp.html

http://www.theconsultit.com/blog/2016/11/10/how-to-configure-azure-network-security-group-nsg-rule-for-icmp-traffic/

  • Пинг внешнего адреса с виртуальной машины Azure - не работает, поскольку Azure не разрешает исходящий ICMP

  • Проверка связи с виртуальной машиной Azure с внешнего адреса - не работает, поскольку Azure не разрешает входящий ICMP

  • Пинг между виртуальными машинами Azure с использованием внутреннего IP-адреса (DIP) - работает, но брандмауэр гостевой ОС должен быть настроен так, чтобы разрешить его, поскольку по умолчанию ICMP блокируется гостем.

  • Пинг между виртуальной машиной Azure и локальной средой через Azure Connect (туннель IPSec VPN точка-точка) или виртуальный сетевой шлюз (туннель IPSec VPN типа «сеть-сеть») - работает, но брандмауэр гостевой ОС должен быть настроен так, чтобы разрешить его как по умолчанию ICMP заблокирован гостем.

В качестве альтернативы проверке связи с помощью ICMP вы можете проверить подключение, пытаясь достичь определенного порта TCP с помощью таких инструментов, как TCPing, PortQuery или NMap. Они будут работать с входящей связью с виртуальной машиной Azure, если вы открыли конечную точку для порта, к которому пытаетесь подключиться, и гостевой брандмауэр позволяет это, и что-то прослушивает этот порт. Для Azure Connect и виртуальных сетевых шлюзов вам не нужны конечные точки, потому что вы общаетесь через VPN-туннель, но гостевой брандмауэр все равно должен разрешить порт, который вы тестируете, и что-то должно прослушивать этот порт.

Ничего не требуется для включения ответов ping, что происходит по умолчанию.

Если от целевого хоста нет ответов ICMP (ping), это фактически означает, что они блокируются где-то по пути. Это может произойти в любой момент в любом направлении, но чаще всего происходит на брандмауэре вашей виртуальной машины.

Поэтому вы должны подтвердить, что брандмауэр виртуальной машины блокирует эхо-запрос, отключив его. Если это сработает, просто активируйте его повторно и добавьте правило, разрешающее его.

Если отключение брандмауэра виртуальной машины по-прежнему не обеспечивает ответа на запросы ICMP, вам следует использовать traceroute (или tracert в Windows), чтобы увидеть, до какого момента вы получите ответы, и изучите два перехода до IP-адреса вашей виртуальной машины. В этот момент он, скорее всего, будет заблокирован брандмауэром хоста вашей виртуальной машины.

После некоторого исследования я смог заставить это работать с помощью следующей команды PS oneliner.

Get-AzureRmNetworkSecurityGroup -Name "nsgName" -ResourceGroupName "GroupName" | Add-AzureRmNetworkSecurityRuleConfig -Name "AllowPing" -Description "Allow Ping" -Access "Allow" -Protocol "*" -Direction "Inbound" -Priority 40002 -SourceAddressPrefix "*" -SourcePortRange "*" -DestinationAddressPrefix "*" -DestinationPortRange "*" | Set-AzureRmNetworkSecurityGroup

Вы можете получить входящий ping, разрешив порт 0 в правиле NSG.

Get-AzureRmNetworkSecurityGroup -Name "nsgName" -ResourceGroupName "GroupName" | 
    Add-AzureRmNetworkSecurityRuleConfig -Name "AllowPing" -Description "Allow Ping" -Access 
    "Allow" -Protocol "*" -Direction "Inbound" -Priority 40002 -SourceAddressPrefix 
    "*" -SourcePortRange "*" -DestinationAddressPrefix "*" -DestinationPortRange "0" |
    Set-AzureRmNetworkSecurityGroup

Мне удалось выполнить эхо-запрос из виртуальной машины Azure под управлением Ubuntu 18 LTS, но я не могу выполнить эхо-запрос из внешнего местоположения на виртуальную машину.

Я осмотрелся и обнаружил, что входящие запросы проверки связи ICMP отключены Azure. Они рассматривают возможность его включения или, по крайней мере, разрешения одному из них включить его на своем портале в разделе «Сеть».