Gedetailleerde stappen om SSH-problemen op te lossen bij verbindingsproblemen van een Linux-VM in Azure
Van toepassing op: ✔️ Virtuele Linux-machines
Er zijn veel mogelijke redenen waarom de SSH-client de SSH-service mogelijk niet kan bereiken op de VIRTUELE machine. Als u de algemenere stappen voor het oplossen van SSH-problemen hebt gevolgd, moet u het verbindingsprobleem verder oplossen. In dit artikel wordt u begeleid bij gedetailleerde stappen voor probleemoplossing om te bepalen waar de SSH-verbinding mislukt en hoe u deze kunt oplossen.
Voorbereidende stappen uitvoeren
In het volgende diagram ziet u de betrokken onderdelen.
Met de volgende stappen kunt u de bron van de fout isoleren en oplossingen of tijdelijke oplossingen bepalen.
Controleer de status van de VIRTUELE machine in de portal. Selecteer in de Azure-portal de naam van virtuele machines>.
In het statusvenster voor de VIRTUELE machine moet Actief worden weergegeven. Schuif omlaag om recente activiteiten weer te geven voor reken-, opslag- en netwerkresources.
Selecteer Instellingen om eindpunten, IP-adressen, netwerkbeveiligingsgroepen en andere instellingen te onderzoeken.
De VIRTUELE machine moet een eindpunt hebben dat is gedefinieerd voor SSH-verkeer dat u kunt weergeven in eindpunten of netwerkbeveiligingsgroep. Eindpunten in VM's die zijn gemaakt met Resource Manager, worden opgeslagen in een netwerkbeveiligingsgroep. Controleer of de regels zijn toegepast op de netwerkbeveiligingsgroep en waarnaar wordt verwezen in het subnet.
Als u de netwerkverbinding wilt controleren, controleert u de geconfigureerde eindpunten en controleert u of u via een ander protocol verbinding kunt maken met de VIRTUELE machine, zoals HTTP of een andere service.
Voer na deze stappen de SSH-verbinding opnieuw uit.
De bron van het probleem zoeken
De SSH-client op uw computer kan geen verbinding maken met de SSH-service op de Azure-VM vanwege problemen of onjuiste configuraties in de volgende gebieden:
- SSH-clientcomputer
- Edge-apparaat van organisatie
- Netwerkbeveiligingsgroepen
- Op Linux gebaseerde Azure-VM
Bron 1: SSH-clientcomputer
Als u uw computer wilt elimineren als de bron van de fout, controleert u of deze SSH-verbindingen met een andere on-premises, linux-computer kan maken.
Als de verbinding mislukt, controleert u op de volgende problemen op uw computer:
- Een lokale firewallinstelling die binnenkomend of uitgaand SSH-verkeer blokkeert (TCP 22)
- Lokaal geïnstalleerde clientproxysoftware die SSH-verbindingen verhindert
- Lokaal geïnstalleerde netwerkbewakingssoftware die SSH-verbindingen verhindert
- Andere typen beveiligingssoftware die verkeer bewaken of specifieke typen verkeer toestaan/toestaan
Als een van deze voorwaarden van toepassing is, schakelt u de software tijdelijk uit en probeert u een SSH-verbinding met een on-premises computer om erachter te komen waarom de verbinding wordt geblokkeerd op uw computer. Werk vervolgens samen met uw netwerkbeheerder om de software-instellingen te corrigeren om SSH-verbindingen toe te staan.
Als u certificaatverificatie gebruikt, controleert u of u over deze machtigingen beschikt voor de map .ssh in uw basismap:
- Chmod 700 ~/.ssh
- Chmod 644 ~/.ssh/*.pub
- Chmod 600 ~/.ssh/id_rsa (of andere bestanden waarop uw persoonlijke sleutels zijn opgeslagen)
- Chmod 644 ~/.ssh/known_hosts (bevat hosts waarmee u verbinding hebt gemaakt via SSH)
Bron 2: Edge-apparaat van organisatie
Als u het edge-apparaat van uw organisatie wilt elimineren als de bron van de fout, controleert u of een computer die rechtstreeks is verbonden met internet SSH-verbindingen met uw Azure-VM kan maken. Als u de VIRTUELE machine opent via een site-naar-site-VPN of een Azure ExpressRoute-verbinding, gaat u verder met bron 3: netwerkbeveiligingsgroepen.
Als u geen computer hebt die rechtstreeks is verbonden met internet, maakt u een nieuwe Azure-VM in een eigen resourcegroep of cloudservice en gebruikt u die nieuwe VM. Zie Een virtuele machine met Linux maken in Azure voor meer informatie. Verwijder de resourcegroep of VM en cloudservice wanneer u klaar bent met het testen.
Als u een SSH-verbinding kunt maken met een computer die rechtstreeks is verbonden met internet, controleert u het edge-apparaat van uw organisatie op:
- Een interne firewall die SSH-verkeer blokkeert met internet
- Een proxyserver die SSH-verbindingen verhindert
- Inbraakdetectie of netwerkbewakingssoftware die wordt uitgevoerd op apparaten in uw edge-netwerk die SSH-verbindingen verhindert
Werk samen met uw netwerkbeheerder om de instellingen van edge-apparaten van uw organisatie te corrigeren om SSH-verkeer met internet toe te staan.
Bron 3: Netwerkbeveiligingsgroepen
Met netwerkbeveiligingsgroepen kunt u meer gedetailleerde controle hebben over toegestaan inkomend en uitgaand verkeer. U kunt regels maken voor subnetten en cloudservices in een virtueel Azure-netwerk. Controleer de regels voor uw netwerkbeveiligingsgroep om ervoor te zorgen dat SSH-verkeer van en naar internet is toegestaan. Zie Over netwerkbeveiligingsgroepen voor meer informatie.
U kunt ip-verificatie ook gebruiken om de NSG-configuratie te valideren. Zie het overzicht van Azure-netwerkbewaking voor meer informatie.
Bron 4: virtuele Azure-machine op basis van Linux
De laatste bron van mogelijke problemen is de virtuele Azure-machine zelf.
Als u dit nog niet hebt gedaan, volgt u de instructies voor het opnieuw instellen van een op Linux gebaseerd wachtwoord voor virtuele machines.
Probeer opnieuw verbinding te maken vanaf uw computer. Als het nog steeds mislukt, zijn de volgende mogelijke problemen:
- De SSH-service wordt niet uitgevoerd op de virtuele doelmachine.
- De SSH-service luistert niet op TCP-poort 22. Als u wilt testen, installeert u een telnet-client op uw lokale computer en voert u telnet cloudServiceName.cloudapp.net 22 uit. Deze stap stelt vast of de virtuele machine binnenkomende en uitgaande communicatie naar het SSH-eindpunt toestaat.
- De lokale firewall op de virtuele doelmachine bevat regels die binnenkomend of uitgaand SSH-verkeer verhinderen.
- Inbraakdetectie of netwerkbewakingssoftware die wordt uitgevoerd op de virtuele Azure-machine verhindert SSH-verbindingen.
Aanvullende bronnen
Zie Problemen met toegang tot een toepassing oplossen die wordt uitgevoerd op een virtuele Azure-machine voor meer informatie over het oplossen van problemen met toegang tot toepassingen.
Contact met ons opnemen voor ondersteuning
Als u vragen hebt of hulp nodig hebt, maakt u een ondersteuningsaanvraag of stelt u ondersteuning voor de Azure-community. U kunt ook productfeedback verzenden naar de Azure-feedbackcommunity.