SSH Server opsætning på Cloud i Windows Azure Platform

Indlæg af Hanne Mølgaard Plasc

Problem



Min klient har brugt SSH2-protokollen til filoverførsel, for nylig har de besluttet at være vært for deres applikation på Cloud, de vil stadig gøre brug af SSH-protokollen, når de overfører filer til Cloud storage. Kan nogen give oplysninger om SSH-serveropsætningen på Cloud ved hjælp af Windows Azure?


Følgende er



  • Vært SSH-serveren på VM-rolle i Cloud, vil i så fald de andre Web/Worker roller på samme sky være ale for at få adgang til den lokale lagring af VM-rollen?

  • Er det muligt at være vært for en SSH FTP-server ved hjælp af .NET-komponenter (Payed/Open Source) i en Worker-rolle i Azure? Hvis ja, angiv venligst oplysninger om .NET-komponenterne, der er tilgængelige i Market.

  • Hvis der ikke er nogen support til SSH i Windows Azure, kan du lade mig vide andre alternativer til Secure File Transfer i Cloud.



Min klient plejede at drive deres forretning Unix-maskiner i Closed Network, hvorfra de udførte filoverførslen via SFTP til deres SSH FTP-servere.


Vi bygger nogle applikationer på Cloud for dem, der kræver, at de overfører data i form af filer som input til denne cloud (web rolle) applikation.


For at overføre filer fra deres lukkede netværk og gøre dem tilgængelige i Cloud storage, insisterer de på, at de stadig vil udføre dette ved hjælp af SSH FTP eller ved hjælp af SSH-protokollen.


Vi har ramt muren med dette krav, og følgende er de løsninger, vi har foreslået dem.


Gennemgå og giv dine kommentarer/forslag/input angående den bedste metode til udførelse af SSH FTP af filer til Cloud Storage.



  • Host SSH Server på VM Rolle i Cloud, og implementer en Service i deres netværk for at overføre filer fra deres netværk til skyen. I dette tilfælde kan filerne gemmes i filsystemet i VM-rollen, hvordan skal vi udpakke filen fra VM-rollen og gemme den til det delte cloud-lager, så andre webroller, der kører på skyen, kan få adgang til disse filer for at få input?

  • Er det muligt at være vært for en SSH FTP-server ved hjælp af .NET-komponenter (Payed/Open Source) i en Worker-rolle i Azure?

  • Hvis der ikke er nogen support til SSH i Windows Azure, kan du lade mig vide andre alternativer til Secure File Transfer ved hjælp af SSH for at overføre filer fra on-premise til cloud storage.


Bedste reference


Svar på 2 ud af 3:



  Vært SSH-serveren på VM-rolle i Cloud. I så fald vil de andre Web/Worker roller på samme sky være ale for at få adgang til den lokale opbevaring af VM-rollen?



Ikke det lokale lager, men du kan lade dem få adgang til et fælles Cloud Drive - http://blog.maartenballiauw.be/post/2010/02/02/Using-Windows-Azure-Drive-(aka-X-Drive). aspx - bemærk, at kun én instans kan have skriveadgang til dette drev, men mange kan have læst. [1]



  Hvis der ikke er nogen support til SSH i Windows Azure, kan du lade mig vide andre alternativer til Secure File Transfer in Cloud.



Den aktuelle upload/download af blobs kan sikres med SSL, og adgang til din gemte hosting er via dine nøgler.


For at være ærlig anbefaler jeg, at du kigger på at bruge blob-lagring til dette krav. Det afhænger af hvor mange filer/blobs du ønsker at gemme, og hvor ofte du vil ændre dem, men samlet lagring af blob er ret nyttigt og brugbart.


For en intro til blobs se http://blogs.msdn.com/b/jnak/archive/2010/01/11/walkthrough-windows-azure-blob-storage-nov-2009-and-later.aspx[2]






  Er det muligt at være vært for en SSH FTP-server ved hjælp af .NET-komponenter (Payed/Open Source) i en Worker-rolle i Azure? Hvis ja, angiv venligst oplysninger om .NET-komponenterne, der er tilgængelige i Market.



Muligvis - men jeg har ingen anelse om dette - der er mange hits fra http://www.bing.com/search?setmkt=en-GBu0026amp;q=ssh+ftp+server+c\%23[3]


Rediger - også tjek denne tråd - http://forums.iis.net/t/1147827.aspx - du kunne installere WinSSHD til en rolle? [4]

Andre referencer 1


Alt er naturligvis muligt, men du har nogle grundlæggende spørgsmål at overvinde for at få en sømløs SSH-oplevelse. Det største problem er ikke at installere SSH - det er kage. Det problem, du skal konfrontere, er, hvordan du bruger det på tværs af tilfælde, når du har en lastbalancer foran. For en enkelt forekomst bør du ikke have problemer med at køre en SSH-server. Alle kunder vil forbinde let. Når du har flere servere, der kører SSH, kommer du ind i et problem, hvis forbindelsen til en instans er adskilt, og du genforbinder til et andet eksempel. Det er rart at køre flere tilfælde til SLA-grunde, så dette er et almindeligt problem.


Nu fungerer RDP (som er en stateful-forbindelse) i Windows Azure på grund af en sokkelbaseret router, der videresender trafik til den enkelt forekomst, du ønsker at kommunikere med. Du kan muligvis gøre noget lignende til SSH.


Ud over kommunikationsproblemet (forudsat at du udarbejder SSH med load-balancing), skal du tænke på vedholdenhed. Når du FTP noget i Windows Azure, medmindre du bruger et drev (XDrive), er det kun vedvarende lokalt. Du skulle tænke på at flytte disse filer fra VM og til permanent opbevaring som blob storage.


Så lang historie kort. Ja, du kan gøre det, men det vil være noget arbejde at gøre rigtigt.

Andre referencer 2


Vi har lige sendt en SSH på Azure, der bruger OpenSSH @
http://blogs.msdn.com/b/mariok/archive/2011/08/09/command-line-access-to-azure-vms-ssh.aspx[5]


Indsendelsen indeholder en prøvepakke. Den vil køre på enhver rolle type (Web/Worker/VM) og kan kombineres med andre pakker/apps.

Andre referencer 3


hvis han ikke er sikker på at bruge kommandolinjen på instansen, kan han overveje at installere webmin. Det er en god applikation, der kører fra din browser. Det giver dig mulighed for at få kontrol på en Windows-måde på din virtuelle forekomst af Linux.