SCP gebruiken om bestanden naar en van een VIRTUELE machine te verplaatsen
Van toepassing op: ✔️ Virtuele Linux-machines voor Windows-VM's ✔️ ✔️ Flexibele schaalsets
In dit artikel wordt beschreven hoe u bestanden van uw werkstation verplaatst naar een Azure-VM of van een Azure-VM naar uw werkstation, met behulp van SCP (Secure Copy). Het verplaatsen van bestanden tussen uw werkstation en een VIRTUELE machine is essentieel voor het beheren van uw Azure-infrastructuur.
Voor dit artikel hebt u een VIRTUELE machine nodig die is geïmplementeerd in Azure waarvoor SSH is ingeschakeld. U hebt ook een SCP-client nodig voor uw lokale computer. Het is gebouwd op basis van SSH en is opgenomen in de standaardshell van de meeste Linux- en Windows-installaties (10 en hoger).
Snelle opdrachten
Een bestand uploaden naar de VIRTUELE machine
scp file azureuser@azurehost:directory/targetfile
Een bestand downloaden van de VIRTUELE machine
scp azureuser@azurehost:directory/file targetfile
Gedetailleerd overzicht
Als voorbeeld verplaatsen we een Azure-configuratiebestand naar een VIRTUELE machine en trekken we een map met logboekbestanden op, beide met behulp van SCP.
Verificatie van SSH-sleutelpaar
SCP maakt gebruik van SSH voor de transportlaag. SSH verwerkt de verificatie op de doelhost en verplaatst het bestand in een versleutelde tunnel die standaard wordt geleverd met SSH. Voor SSH-verificatie kunnen gebruikersnamen en wachtwoorden worden gebruikt. Verificatie van openbare en persoonlijke SSH-sleutels wordt echter aanbevolen als best practice voor beveiliging. Zodra SSH de verbinding heeft geverifieerd, begint SCP met het kopiëren van het bestand. Wanneer u een correct geconfigureerde ~/.ssh/config
en openbare en persoonlijke SSH-sleutels gebruikt, kan de SCP-verbinding tot stand worden gebracht met behulp van een servernaam (of IP-adres). Als u slechts één SSH-sleutel hebt, zoekt SCP ernaar in de ~/.ssh/
map en gebruikt u deze standaard om u aan te melden bij de virtuele machine.
Een bestand uploaden naar een virtuele machine
In het eerste voorbeeld kopiëren we een Azure-configuratiebestand naar een VIRTUELE machine die wordt gebruikt om automatisering te implementeren. Omdat dit bestand Azure API-referenties bevat, waaronder geheimen, is beveiliging belangrijk. De versleutelde tunnel van SSH beveiligt de inhoud van het bestand.
Met de volgende opdracht wordt het lokale .azure/config-bestand gekopieerd naar een Azure-VM met FQDN-myserver.eastus.cloudapp.azure.com. Als u geen FQDN-set hebt, kunt u ook het IP-adres van de virtuele machine gebruiken. De gebruikersnaam van de beheerder op de Azure-VM is azureuser. Het bestand is gericht op de map /home/azureuser/ . Vervang uw eigen waarden in deze opdracht.
scp ~/.azure/config azureuser@myserver.eastus.cloudapp.com:/home/azureuser/config
Een map downloaden van een virtuele machine
In dit voorbeeld kopiëren we een map met logboekbestanden van de VIRTUELE machine naar uw werkstation. Een logboekbestand mag gevoelige of geheime gegevens bevatten. Het gebruik van SCP zorgt er echter voor dat de inhoud van de logboekbestanden wordt versleuteld. Een logboekmap kan te veel relevante bestanden bevatten om één voor één te kopiëren, dus het downloaden van de hele map heeft de voorkeur in deze situatie. Het gebruik van SCP om de bestanden over te dragen, is de eenvoudigste manier om de logboekmap en bestanden op uw werkstation op te halen terwijl u ook veilig bent.
Met de volgende opdracht worden bestanden in de map /home/azureuser/logs/ op de Azure-VM gekopieerd naar de lokale /tmp-map:
scp -r azureuser@myserver.eastus.cloudapp.com:/home/azureuser/logs/. /tmp/
Met -r
de vlag wordt SCP geïnstrueerd om de bestanden en mappen recursief te kopiëren vanaf het punt van de map die in de opdracht wordt vermeld. U ziet ook dat de opdrachtregelsyntaxis vergelijkbaar is met een cp
kopieeropdracht.