SSH-sleutelverificatie gebruiken

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

U kunt verbinding maken met uw Git-opslagplaatsen via SSH op macOS, Linux of Windows om veilig verbinding te maken met behulp van HTTPS-verificatie.

Belangrijk

SSH-URL's zijn gewijzigd, maar oude SSH-URL's blijven werken. Als u SSH al hebt ingesteld, werkt u uw externe URL's bij naar de nieuwe indeling:

Bijgewerkte SSH-URL's beginnen met ssh.dev.azure.com. De vorige URL's gebruiken vs-ssh.visualstudio.com.

  • Controleer welke externe apparaten SSH gebruiken. Voer git remote -v in uw shell uit of gebruik in plaats daarvan een GUI-client.
  • Ga naar de opslagplaats op het web en selecteer Clone.
  • Selecteer SSH en kopieer de nieuwe SSH-URL.
  • Voer in uw shell git remote set-url <remote name> <new SSH URL> uit voor elke externe opslagplaats die u wilt bijwerken. U kunt ook een GUI-client gebruiken om de externe URL's bij te werken.

Hoe SSH-sleutelverificatie werkt

Verificatie van openbare SSH-sleutels werkt met een asymmetrisch paar gegenereerde versleutelingssleutels. De openbare sleutel wordt gedeeld met Azure DevOps en wordt gebruikt om de eerste SSH-verbinding te verifiëren. De persoonlijke sleutel wordt veilig en veilig op uw systeem gehouden.

SSH-sleutelverificatie instellen

De volgende stappen hebben betrekking op de configuratie van SSH-sleutelverificatie op de volgende platforms met behulp van de opdrachtregel (ook wel genoemd shell):

Notitie

Vanaf Visual Studio 2017 kan SSH worden gebruikt om verbinding te maken met Azure DevOps Git-opslagplaatsen.

Tip

In Windows raden we het gebruik van Git Credential Manager of Persoonlijke toegangstokens aan.

Stap 1: Uw SSH-sleutels maken

Notitie

Als u al RSA SSH-sleutels op uw systeem hebt gemaakt, slaat u deze stap over en configureert u uw SSH-sleutels. Als u dit wilt controleren, gaat u naar uw basismap en kijkt u naar de .ssh map (%UserProfile%\.ssh\ in Windows of ~/.ssh/ in Linux, macOS en Windows met Git Bash). Als u twee bestanden ziet met de naam id_rsa en id_rsa.pub respectievelijk doorgaan met het configureren van uw SSH-sleutels.

Als u verificatie op basis van sleutels wilt gebruiken, moet u eerst openbare/persoonlijke sleutelparen genereren voor uw client. ssh-keygen.exe wordt gebruikt voor het genereren van sleutelbestanden en de algoritmen DSA, RSA, ECDSA of Ed25519 kunnen worden opgegeven. Als er geen algoritme is opgegeven, wordt RSA gebruikt.

Notitie

Het enige SSH-sleuteltype dat wordt ondersteund door Azure DevOps, is RSA.

Als u sleutelbestanden wilt genereren met behulp van het RSA-algoritme, voert u de volgende opdracht uit vanuit een PowerShell of een andere shell, zoals bash op uw client:

ssh-keygen

In de uitvoer van de opdracht moet de volgende uitvoer worden weergegeven (waarbij username deze wordt vervangen door uw gebruikersnaam):

Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\username/.ssh/id_rsa):

U kunt op Enter drukken om de standaardwaarde te accepteren of een pad en/of bestandsnaam opgeven waar u uw sleutels wilt genereren. Op dit moment wordt u gevraagd om een wachtwoordzin te gebruiken om uw persoonlijke sleutelbestanden te versleutelen. De wachtwoordzin kan leeg zijn, maar dit wordt niet aanbevolen. De wachtwoordzin werkt met het sleutelbestand om tweeledige verificatie te bieden.

Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\username/.ssh/id_rsa.
Your public key has been saved in C:\Users\username/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:FHK6WjcUkcfQjdorarzlak1Ob/x7AmqQmmx5ryYYV+8 username@LOCAL-HOSTNAME
The key's randomart image is:
+---[RSA 3072]----+
|      . ** o     |
|       +.o= .    |
|      . o+       |
|      .+. .      |
|     .ooS  .     |
|  . .oo.=.o      |
|   =.= O.= .     |
|  . B BoE + . .  |
|   . *+*o. .o+   |
+----[SHA256]-----+

U hebt nu een openbaar/persoonlijk rsa-sleutelpaar op de opgegeven locatie. De PUB-bestanden zijn openbare sleutels en bestanden zonder extensie zijn persoonlijke sleutels:

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        10/11/2022   6:29 PM           2610 id_rsa
-a----        10/11/2022   6:29 PM            578 id_rsa.pub

Belangrijk

Deel nooit de inhoud van uw persoonlijke sleutel. Als de persoonlijke sleutel is aangetast, kunnen aanvallers deze gebruiken om servers te misleiden om na te denken dat de verbinding van u afkomstig is. Persoonlijke-sleutelbestanden zijn het equivalent van een wachtwoord en moeten op dezelfde manier worden beveiligd.

Stap 2: De openbare sleutel toevoegen aan Azure DevOps

Koppel de openbare sleutel die in de vorige stap is gegenereerd aan uw gebruikers-id.

Notitie

U moet deze bewerking herhalen voor elke organisatie waar u toegang toe hebt en waarmee u SSH wilt gebruiken.

  1. Open uw beveiligingsinstellingen door naar de webportal te bladeren en het pictogram naast de avatar in de rechterbovenhoek van de gebruikersinterface te selecteren. Selecteer openbare SSH-sleutels in het menu dat wordt weergegeven.

    Schermopname van het menu-item openbare SSH-sleutels en de gebruikers-avatar die is geselecteerd in Azure DevOps.

  2. Selecteer + Nieuwe sleutel.

    Schermopname van toegang tot beveiligingsconfiguratie in Azure DevOps.

  3. Kopieer de inhoud van de openbare sleutel (bijvoorbeeld id_rsa.pub) die u hebt gegenereerd in het veld Openbare sleutelgegevens .

    Belangrijk

    Vermijd het toevoegen van witruimte of nieuwe regels in het veld Sleutelgegevens , omdat azure DevOps een ongeldige openbare sleutel kan gebruiken. Wanneer u de sleutel plakt, wordt er vaak een nieuwe regel toegevoegd aan het einde. Zorg ervoor dat u deze nieuwe regel verwijdert als deze zich voordoet.

    Schermopname van het configureren van een openbare sleutel in Azure DevOps.

  4. Geef de sleutel een nuttige beschrijving (deze beschrijving wordt weergegeven op de pagina openbare SSH-sleutels voor uw profiel), zodat u deze later kunt onthouden. Selecteer Opslaan om de openbare sleutel op te slaan. Nadat u de sleutel hebt opgeslagen, kunt u de sleutel niet meer wijzigen. U kunt de sleutel verwijderen of een nieuwe vermelding voor een andere sleutel maken. Er zijn geen beperkingen voor het aantal sleutels dat u aan uw gebruikersprofiel kunt toevoegen. Houd er ook rekening mee dat SSH-sleutels die zijn opgeslagen in Azure DevOps na één jaar verlopen. Als uw sleutel verloopt, kunt u een nieuwe sleutel of dezelfde uploaden om via SSH toegang te blijven krijgen tot Azure DevOps.

  5. Op de overzichtspagina wordt bovenaan een notitie weergegeven met de vingerafdrukken van de server. Noteer ze omdat ze vereist zijn wanneer u voor het eerst verbinding maakt met Azure DevOps via SSH.

    Schermopname van toegang tot de beveiligingsconfiguratie in Azure DevOps Services.

  6. Test de verbinding door de volgende opdracht uit te voeren:

    ssh -T git@ssh.dev.azure.com
    

    Als dit de eerste keer was dat u verbinding maakt, ontvangt u de volgende uitvoer:

    The authenticity of host 'ssh.dev.azure.com (<IP>)' can't be established.
    RSA key fingerprint is SHA256:ohD8VZEXGWo6Ez8GSEJQ9WpafgLFsOfLOtGGQCQo6Og.
    This key is not known by any other names
    Are you sure you want to continue connecting (yes/no/[fingerprint])?
    

    Vergelijk de opgegeven vingerafdruk met de vingerafdrukken die worden aangeboden op de pagina met bovengenoemde instellingen. Ga alleen door als ze overeenkomen!

    Als alles correct is geconfigureerd, ziet de uitvoer er als volgt uit:

    remote: Shell access is not supported.
    

    Als dat niet het probleem is, raadpleegt u de sectie over vragen en probleemoplossing.

Stap 3: De Git-opslagplaats klonen met SSH

Notitie

Als u SSH wilt gebruiken met een opslagplaats die eerder is gekloond via HTTPS, raadpleegt u De externe apparaten bijwerken naar SSH.

  1. Kopieer de SSH-kloon-URL vanuit de webportal. In dit voorbeeld is de SSH-kloon-URL voor een opslagplaats in een organisatie met de naam fabrikam-fiber, zoals aangegeven door het eerste deel van de URL na dev.azure.com.

    Schermopname van de gekloonde URL van Azure Repos SSH

    Notitie

    Met Azure DevOps Services is dev.azure.com/{your organization}/{your project}de indeling voor de project-URL. De vorige indeling die verwijst naar de visualstudio.com indeling wordt echter nog steeds ondersteund. Zie Inleiding tot Azure DevOps, veranderen van bestaande organisaties om de nieuwe domeinnaam-URL te gebruiken voor meer informatie.

  2. Uitvoeren git clone vanaf de opdrachtprompt.

    git clone git@ssh.dev.azure.com:v3/fabrikam-fiber/FabrikamFiber/FabrikamFiber
    

    U wordt nu gevraagd om uw wachtwoordzin voor uw SSH-sleutel in te voeren voordat u kunt doorgaan, tenzij deze wordt beheerd door een SSH-agent:

    Cloning into 'FabrikamFiber'...
    Enter passphrase for key '/c/Users/username/.ssh/id_rsa':
    remote: Azure Repos
    remote: Found 127 objects to send. (50 ms)
    Receiving objects: 100% (127/127), 56.67 KiB | 2.58 MiB/s, done.
    Resolving deltas: 100% (15/15), done.
    

    Als u in plaats daarvan wordt gevraagd om een vingerafdruk te verifiëren, leest u stap 2: voeg de openbare sleutel opnieuw toe aan Azure DevOps . Lees de sectie over vragen en probleemoplossing voor andere problemen.

Tip

Om optimaal gebruik te maken van SSH is het gebruikelijk om een SSH-agent te gebruiken om uw SSH-sleutel(en) te beheren. Het instellen van een agent valt echter buiten het bereik van dit artikel.

Vragen en probleemoplossing

A: Er zijn twee verschillende waarschuwingsberichten die u kunt zien:

ssh-rsa is about to be deprecated and your request has been throttled. Please use rsa-sha2-256 or rsa-sha2-512 instead. Your session will continue automatically. For more details see https://devblogs.microsoft.com/devops/ssh-rsa-deprecation.

or

You’re using ssh-rsa that is about to be deprecated and your request has been blocked intentionally. Any SSH session using SSH-RSA is subject to brown out (failure during random time periods). Please use rsa-sha2-256 or rsa-sha2-512 instead. For more details see https://devblogs.microsoft.com/devops/ssh-rsa-deprecation.

Mogelijk hebt u uw SSH-configuratie eerder gewijzigd om uw beveiligingsinstellingen voor Azure DevOps te downgraden door het volgende toe te voegen aan uw ~/.ssh/config (%UserProfile%\.ssh\config in Windows)-bestand:

Host ssh.dev.azure.com vs-ssh.visualstudio.com
  HostkeyAlgorithms +ssh-rsa

Verwijder deze regels nu en zorg ervoor dat rsa-sha2-256 en/of rsa-sha2-512 zijn toegestaan.

Raadpleeg het blogbericht voor meer informatie.

V: SSH kan geen verbinding tot stand brengen. Wat moet ik doen?

A: Er zijn meerdere verschillende problemen die kunnen optreden:

  • Gebruik van niet-ondersteunde SSH-RSA

    You’re using ssh-rsa that is unsupported. Please use rsa-sha2-256 or rsa-sha2-512 instead. For more details see https://devblogs.microsoft.com/devops/ssh-rsa-deprecation.
    

    Mogelijk hebt u uw SSH-configuratie eerder gewijzigd om uw beveiligingsinstellingen voor Azure DevOps te downgraden door het volgende toe te voegen aan uw ~/.ssh/config (%UserProfile%\.ssh\config in Windows)-bestand:

    Host ssh.dev.azure.com vs-ssh.visualstudio.com
       HostkeyAlgorithms +ssh-rsa
    

    Verwijder deze regels nu en zorg ervoor dat rsa-sha2-256 en/of rsa-sha2-512 zijn toegestaan.

    Raadpleeg het blogbericht voor meer informatie.

  • Geen overeenkomende hostsleutel

    Dit moet gebeuren in azure DevOps Service of in recentere Versies van Azure DevOps Server, zoals vermeld in het blogbericht.

    Unable to negotiate with <IP> port 22: no matching host key type found. Their offer: ssh-rsa
    

    Wijzig uw SSH-configuratie om uw beveiligingsinstellingen voor Azure DevOps te downgraden door het volgende toe te voegen aan uw ~/.ssh/config (%UserProfile%\.ssh\config in Windows)-bestand:

    Host ssh.dev.azure.com vs-ssh.visualstudio.com
       HostkeyAlgorithms +ssh-rsa
    

    Belangrijk

    OpenSSH heeft het ssh-rsa algoritme voor openbare sleutelhandtekening afgeschaft in versie 8.2 en standaard uitgeschakeld in versie 8.8.

  • Geen overeenkomende MAC

    Unable to negotiate with <IP> port 22: no matching MAC found. Their offer: hmac-sha2-256,hmac-sha2-512
    

    Wijzig uw SSH-configuratie om uw beveiligingsinstellingen voor Azure DevOps te downgraden door het volgende toe te voegen aan uw ~/.ssh/config (%UserProfile%\.ssh\config in Windows)-bestand:

    Host ssh.dev.azure.com vs-ssh.visualstudio.com
       MACs +hmac-sha2-512,+hmac-sha2-256
    
  • Geen overeenkomende methode voor het uitwisselen van sleutels

    Unable to negotiate with <IP> 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha256
    

    Wijzig uw SSH-configuratie om uw beveiligingsinstellingen voor Azure DevOps te downgraden door het volgende toe te voegen aan uw ~/.ssh/config (%UserProfile%\.ssh\config in Windows)-bestand:

    Host ssh.dev.azure.com vs-ssh.visualstudio.com
       KexAlgorithms +diffie-hellman-group-exchange-sha256,+diffie-hellman-group14-sha1,+diffie-hellman-group1-sha1
    

    Belangrijk

    Het algoritme diffie-hellman-group1-sha1 voor sleuteluitwisseling is standaard uitgeschakeld in versie 6.9 van OpenSSH en diffie-hellman-group14-sha1 in versie 8.2.

Tip

Voor zelf-hostende exemplaren van Azure DevOps Server en TFS gebruikt u de juiste hostnaam in de Host regel in plaats van ssh.dev.azure.com vs-ssh.visualstudio.com.

V: Hoe kan ik git de wachtwoordzin voor mijn sleutel onthouden?

A: U kunt hiervoor een SSH-agent gebruiken. Linux, macOS en Windows (beginnend met Windows 10 (build 1809) of met behulp van Git voor Windows met Git Bash) worden allemaal geleverd met een SSH-agent. De SSH-agent kan worden gebruikt om uw SSH-sleutels in de cache op te slaan voor herhaald gebruik. Raadpleeg de handleiding van uw SSH-leverancier voor meer informatie over het gebruik ervan.

V: Ik gebruik PuTTY als mijn SSH-client en heb mijn sleutels gegenereerd met PuTTYgen. Kan ik deze sleutels gebruiken met Azure DevOps Services?

A: Ja. Laad de persoonlijke sleutel met PuTTYgen, ga naar het menu Conversies en selecteer OpenSSH-sleutel exporteren. Sla het bestand met de persoonlijke sleutel op en volg de stappen om niet-standaardsleutels in te stellen. Kopieer uw openbare sleutel rechtstreeks vanuit het puTTYgen-venster en plak deze in het veld Sleutelgegevens in uw beveiligingsinstellingen.

V: Hoe kan ik controleren of de openbare sleutel die ik heb geüpload dezelfde sleutel is als mijn lokale sleutel?

A: U kunt de vingerafdruk controleren van de openbare sleutel die is geüpload met de vingerafdruk die in uw profiel wordt weergegeven door de volgende ssh-keygen opdracht uit te voeren op uw openbare sleutel met behulp van de opdrachtregel. U moet het pad en de bestandsnaam van de openbare sleutel wijzigen als u de standaardinstellingen niet gebruikt.

ssh-keygen -l -E md5 -f ~/.ssh/id_rsa.pub

Vervolgens kunt u de MD5-handtekening vergelijken met de handtekening in uw profiel. Deze controle is handig als u verbindingsproblemen ondervindt of zorgen hebt over onjuist plakken in de openbare sleutel in het veld Sleutelgegevens bij het toevoegen van de sleutel aan Azure DevOps.

V: Hoe kan ik SSH gaan gebruiken in een opslagplaats waar ik momenteel HTTPS gebruik?

A: U moet de origin externe in Git bijwerken om over te schakelen van een HTTPS naar SSH-URL. Nadat u de SSH-kloon-URL hebt, voert u de volgende opdracht uit:

git remote set-url origin <SSH URL to your repository>

Git-opdrachten die toegang hebben tot de externe aangeroepen origin , gebruiken nu SSH.

V: Ik gebruik Git LFS met Azure DevOps Services en ik krijg fouten bij het ophalen van bestanden die worden bijgehouden met Git LFS.

A: Azure DevOps Services biedt momenteel geen ondersteuning voor LFS via SSH. Gebruik HTTPS om verbinding te maken met opslagplaatsen met door Git LFS bijgehouden bestanden.

V: Hoe kan ik een niet-standaardsleutellocatie gebruiken, dus niet ~/.ssh/id_rsa en ~/.ssh/id_rsa.pub?

A: Als u een sleutel wilt gebruiken die op een andere locatie is opgeslagen dan de standaardinstelling, voert u de volgende twee taken uit:

  1. De sleutels moeten zich in een map bevinden die alleen u kunt lezen of bewerken. Als de map bredere machtigingen heeft, gebruikt SSH de sleutels niet.

  2. U moet SSH de locatie van de sleutel laten weten, bijvoorbeeld door deze op te geven als een 'Identiteit' in de SSH-configuratie:

    Host ssh.dev.azure.com
      IdentityFile ~/.ssh/id_rsa_azure
      IdentitiesOnly yes
    

De IdentitiesOnly yes instelling zorgt ervoor dat SSH geen andere beschikbare identiteit gebruikt om te verifiëren. Dit is met name belangrijk als er meer dan één identiteit beschikbaar is.

V: Ik heb meerdere SSH-sleutels. Hoe kan ik de juiste SSH-sleutel voor Azure DevOps gebruiken?

A: Als u meerdere sleutels voor een SSH-client configureert en verbinding maakt met een SSH-server, kan de client de sleutels één voor één proberen totdat de server er een accepteert.

Dit werkt echter niet met Azure DevOps om technische redenen met betrekking tot het SSH-protocol en hoe onze Git SSH-URL's zijn gestructureerd. Azure DevOps accepteert blind de eerste sleutel die de client biedt tijdens de verificatie. Als deze sleutel ongeldig is voor de aangevraagde opslagplaats, mislukt de aanvraag zonder andere beschikbare sleutels uit te voeren vanwege de volgende fout:

remote: Public key authentication failed.
fatal: Could not read from remote repository.

Voor Azure DevOps moet u SSH configureren om expliciet een specifiek sleutelbestand te gebruiken. De procedure is hetzelfde als wanneer u een sleutel gebruikt die is opgeslagen op een niet-standaardlocatie. Vertel SSH gewoon de juiste SSH-sleutel te gebruiken voor de Azure DevOps-host.

V: Hoe kan ik verschillende SSH-sleutels gebruiken voor verschillende organisaties in Azure DevOps?

A: Azure DevOps accepteert blind de eerste sleutel die de client biedt tijdens de verificatie. Als deze sleutel ongeldig is voor de aangevraagde opslagplaats, mislukt de aanvraag met de volgende fout:

remote: Public key authentication failed.
fatal: Could not read from remote repository.

U kunt uw SSH-configuratie echter wijzigen om onderscheid te maken tussen verschillende organisaties en verschillende sleutels voor elk van beide te bieden. Hiervoor moet u hostaliassen gebruiken om afzonderlijke Host secties in uw SSH-configuratie te maken. Dit komt doordat alle gehoste Azure DevOps-URL's dezelfde hostnaam (ssh.dev.azure.com) hebben, zodat SSH deze standaard niet kan onderscheiden.

# The settings in each Host section are applied to any Git SSH remote URL with a
# matching hostname.
# Generally:
# * SSH uses the first matching line for each parameter name, e.g. if there's
#   multiple values for a parameter across multiple matching Host sections
# * "IdentitiesOnly yes" prevents keys cached in ssh-agent from being tried before
#   the IdentityFile values we explicitly set.
# * On Windows, ~/.ssh/your_private_key maps to %USERPROFILE%\.ssh\your_private_key,
#   e.g. C:\Users\<username>\.ssh\your_private_key.

# Imagine that we have the following two SSH URLs:
# * git@ssh.dev.azure.com:v3/Fabrikam/Project1/fab_repo
#   * For this, we want to use `fabrikamkey`, so we'll create `devops_fabrikam` as
#     a Host alias and tell SSH to use `fabrikamkey`.
# * git@ssh.dev.azure.com:v3/Contoso/Project2/con_repo
#   * For this, we want to use `contosokey`, so we'll create `devops_contoso` as
#     a Host alias and tell SSH to use `contosokey`.
#
# To set explicit keys for the two host aliases and to tell SSH to use the correct
# actual hostname, add the next two Host sections:
Host devops_fabrikam
  HostName ssh.dev.azure.com
  IdentityFile ~/.ssh/private_key_for_fabrikam
  IdentitiesOnly yes

Host devops_contoso
  HostName ssh.dev.azure.com
  IdentityFile ~/.ssh/private_key_for_contoso
  IdentitiesOnly yes

In plaats van de echte URL's te gebruiken, vertelt u git dat u deze URL's voor elke opslagplaats als extern wilt gebruiken door de hostnaam in de bestaande externen devops_fabrikam te vervangen door respectievelijk devops_contoso . Zo zou het bijvoorbeeld git@ssh.dev.azure.com:v3/Fabrikam/Project1/fab_repo worden git@devops_fabrikam:v3/Fabrikam/Project1/fab_repo.

V: Welke meldingen kan ik ontvangen over mijn SSH-sleutels?

A: Wanneer u een nieuwe SSH-sleutel registreert bij Azure DevOps Services, ontvangt u een e-mailmelding met de mededeling dat er een nieuwe SSH-sleutel is toegevoegd aan uw account.

Voorbeeld van SSH-melding

V: Wat moet ik doen als ik geloof dat iemand anders dan ik SSH-sleutels toevoegt aan mijn account?

A: Als u een melding ontvangt dat een SSH-sleutel wordt geregistreerd en u deze niet handmatig hebt geüpload naar de service, zijn uw referenties mogelijk aangetast.

De volgende stap is om te onderzoeken of uw wachtwoord al dan niet is aangetast. Het wijzigen van uw wachtwoord is altijd een goede eerste stap om u te beschermen tegen deze aanvalsvector. Als u een Microsoft Entra-gebruiker bent, neem dan contact op met uw beheerder om te controleren of uw account is gebruikt vanuit een onbekende bron/locatie.

V: Wat moet ik doen als ik nog steeds om mijn wachtwoord wordt gevraagd en GIT_SSH_COMMAND="ssh -v" git fetch deze weergeeft no mutual signature algorithm of corresponding algo not in PubkeyAcceptedAlgorithms?

A: Sommige Linux-distributies, zoals Fedora Linux, hebben cryptobeleid dat sterkere SSH-handtekeningalgoritmen vereist dan Azure DevOps ondersteunt (vanaf januari 2021). Er is een open functieaanvraag om deze ondersteuning toe te voegen.

U kunt het probleem omzeilen door de volgende code toe te voegen aan uw SSH-configuratie (~/.ssh/config):

Host ssh.dev.azure.com vs-ssh.visualstudio.com
  PubkeyAcceptedKeyTypes +ssh-rsa

Tip

Voor zelf-hostende exemplaren van Azure DevOps Server en TFS gebruikt u de juiste hostnaam in de Host regel in plaats van ssh.dev.azure.com vs-ssh.visualstudio.com.