Comment configurer FTP sur Azure VM

j'ai besoin d'aide pour configurer FTP sur mon Instance VM Azure.

la VM est Win Server 2012 R2. J'ai configuré le rôle de serveur Web et créé un site FTP dans IIS. J'ai confirmé que je peux accéder au serveur FTP avec

ftp command: open localhost

j'ai également configuré un point D'arrivée FTP pour la VM sur le portail Azure configuré pour le port standard 21.

enfin, j'ai ouvert une règle de pare-feu pour autoriser tout le trafic entrée et sortie du port 21.

maintenant, quand j'essaie de FTP depuis ma machine d'origine, je vois que le nom DNS public du serveur se résout à L'adresse IP et au port appropriés, mais aucune connexion ne peut être établie.

est-ce que je manque une étape de configuration quelque part?

Merci

38
demandé sur ChiliYago 2013-08-24 23:37:35

5 réponses

Il ya une grande walkthrough de juillet 2012 ' hébergement FTP sur IIS 7.5 dans un Windows Azure VM " par Ronald Wildenberg à ce sujet. Il fait écho à la réponse de David . Ce sont les étapes qu'il traverse:

  1. tout d'Abord, vous avez besoin d'une machine virtuelle. J'avais besoin d'une machine Windows avec une base de données SQL Server, alors J'ai choisi "Microsoft SQL Server 2012 Evaluation Edition" à partir de la version disponible. modèle.
  2. une fois la machine démarrée, vous pouvez y accéder via l'option connect en bas du portail de gestion.
  3. quand vous êtes dedans, vous devez configurer IIS. Un résumé des étapes requises:
    • ajouter le rôle de 'serveur Web (IIS)' au serveur.
    • ajouter les fonctionnalités IIS dont vous avez besoin.
    • Ajouter un terminal TCP à votre VM dans le portail de gestion avec public et privé le port 80.
  4. pour activer FTP, assurez-vous d'activer les services de rôle 'serveur FTP' pour votre rôle IIS:
  5. la prochaine étape est de créer le site FTP actuel dans IIS. Cliquez avec le bouton droit de la souris sur "Sites" dans IIS Manager et sélectionnez "Ajouter un Site FTP... "
  6. spécifier le nom et le chemin local pour le site:
  7. spécifier les informations de liaison et SSL:
  8. et enfin préciser qui devrait avoir accès au site FTP.
  9. vous devriez maintenant pouvoir accéder au site FTP à partir de la VM. Ouvrez une invite de commande, tapez ftp 127.0.0.1 et connectez-vous
  10. pour le FTP actif, vous devez autoriser l'accès aux ports 21 (port de commande FTP) et 20 (port de données FTP), vous devez donc ajouter deux endpoints à votre VM
  11. pour configurer le FTP passif. Pour que cela fonctionne, nous devons indiquer au serveur FTP IIS la plage de ports qu'il peut utiliser pour les données nous devons ajouter à la VM des points terminaux qui correspondent à cette plage de ports.
  12. configure la portée du port et l'adresse IP externe pour les connexions de données passives. On peut le trouver dans IIS Manager
  13. l'adresse IP externe doit être L'adresse IP virtuelle que vous pouvez trouver dans le portail de gestion Azure.
  14. si vous ne pouvez pas spécifier la plage de ports du canal de données dans le Gestionnaire IIS utiliser l'utilitaire appcmd, qui peut être trouvé dans %windir%\system32\inetsrv : appcmd set config /section:system.ftpServer/firewallSupport /lowDataChannelPort:7000 /highDataChannelPort:7014
  15. vous pouvez spécifier les 15 nouveaux paramètres dans le portail Azure, mais cela prendrait des âges, alors utilisez le Windows Azure Powershell cmdlets .
  16. téléchargez le fichier publish settings. Une façon est de démarrer Windows Azure Powershell et d'utiliser le cmdlet "Get-AzurePublishSettingsFile". Il ouvre un navigateur et vous permet de télécharger le fichier publish settings qui correspond à votre identifiant Windows Live.
  17. lorsque vous avez téléchargé le fichier des paramètres de publication, vous pouvez l'importer en utilisant le cmdlet 'Import-AzurePublishSettingsFile' et nous sommes prêts à commencer à ajouter des paramètres.
  18. j'ai simplement créé un fichier texte contenant la liste des commandes que je voulais exécuter et que j'ai copié dans la fenêtre Powershell: Get-AzureVM -ServiceName 'myServiceName' -Name 'ftpportal' | Add-AzureEndpoint -Name 'FTPPassive00' -Protocol 'TCP' -LocalPort 7000 -PublicPort 7000 | Update-AzureVM où "myServiceName" est le nom de mon service cloud et "ftpportal" est le nom de ma machine virtuelle.
  19. bien que le pare-feu Windows semble autoriser tout le trafic qui est nécessaire, vous devez également activer le filtrage FTP stateful sur le pare-feu: netsh advfirewall set global StatefulFtp enable
  20. redémarrez le service FTP Windows et nous devrions être opérationnels:
    • net stop ftpsvc
    • net start ftpsvc

Ça vaut la peine de suivre ces étapes dans l'article original pas moins, car il inclut des captures d'écran utiles pour chaque étape, mais j'ai pensé qu'il valait la peine de citer largement ici juste au cas où. L'article mentionne également FTP actif vs. FTP passif, une explication définitive qu'il vaut la peine de lire.

ce serait génial si je pouvais signaler qu'après avoir suivi ces étapes, votre serveur FTP basé sur VM Azure sera fonctionnel et accessible. Mais malheureusement les étapes ci-dessus n'ont pas fixé pour moi : - (

59
répondu dumbledad 2017-07-05 14:08:52

si cela ne vous dérange pas D'utiliser le serveur FTP de FileZilla,

voici ce que j'ai fait, pour activer la connexion FTP à ma VM.

1. Go to Azure VM (manage.windowsazure.com), and add 2 endpoints:
    1. Name: FTP (Protocol TCP, Public Port 21, Private Port 21)
    2. Name: FTP Passive (Protocol TCP, Public Port 60000, Private Port 60000)
2. Go back to VM (via RDP), Open connection for port 21, and 60000 on Windows Firewall inbound rule.
3. Download and open FileZilla Server.
4. Click Edit -> Users and add user and shared directory as needed.
5. Click Edit -> Settings. On the sidebar click Passive Mode Settings.
6. Check "use custom port range" and enter 60000 - 60000
7. On ip4specific part, select radio button "use the following ip", and enter your xxxx.cloudapp.net.
8. Save, and run the server. That's it, you can now connect to FTP from outside of VM.

J'espère que ça aidera quelqu'un.

Cheers

7
répondu dexcell 2015-10-28 18:11:38

après avoir traîné pendant un certain temps avec la liste de 15 points ci-dessus, J'ai reçu le message MS essaient de passer - "No (easy) FTP for you"...

donc je suis retourné à la bonne vieille et ouverte Linux monde-mis en place un serveur SCP en utilisant Cygwin. Vous obtenez même un shell distant comme bonus...

1) Exécuter L'installateur Cygwin - https://cygwin.com/setup-x86.exe

2) dans la recherche "sélectionner des paquets "pour

  • cygrunsrv (sélectionnez celui sous "Admin")
  • openssh (sélectionnez le Net)

3) lorsque c'est fait, démarrez le Terminal Cygwin, et tapez:

  • ssh-host-config -y-pwd S0me-Str0ng-pa55w0rd

  • cygrunsrv -S sshd

4) à partir du VM Azure ajouter un paramètre SSH

5) dans le pare-feu Windows, ajouter la règle D'arrivée pour le port TCP 22

et viola - vous pouvez vous connecter en utilisant WinSCP, Notepad++ et Putty bien sûr...

Notes:

  • Unix est sensible à la casse, tapez votre utilisateur dans des cas précis, par exemple, l'Administrateur du fonds avec Un
  • que Vos lecteurs sont sous /cygdrive (c:\ est à l' /cygdrive/c, etc)

bonne chance!

3
répondu Zeev Kotzer 2014-08-31 20:04:46

vous devez ajouter une plage de ports supplémentaires, que le serveur ftp choisira pour chaque connexion ftp.

vous aurez besoin de créer un tas de points d'entrée, chacun représentant un des ports dans la gamme de ports spécifiée. Notez que vous avez un nombre limité de points d'Entrée (pas sûr du nombre exact, mais vous devriez pouvoir facilement ouvrir, disons, 50 points d'entrée dans les ports contigus). Ensuite, il suffit de configurer le serveur ftp de la même gamme. Également, vous voudrez associer le port public endpoint d'entrée au même numéro de port privé, sinon les connexions ne seront pas créées correctement.

1
répondu David Makogon 2013-08-24 21:13:28

Le lien dumbledad la réponse de n'est pas disponible actuellement. J'avais encore des problèmes à obtenir un FTP passif sur une nouvelle VM Azure après avoir suivi les étapes là-bas.

après un peu de recherche, j'ai trouvé cet article de création FTP passif et les ports dynamiques . Il s'agit d'une excellente revue de marche et fournit un script simple à exécuter à partir de votre VM pour obtenir FTP en cours d'exécution dans une minute. Si vous mettez en place plusieurs script est un moyen beaucoup plus rapide de configurer L'accès FTP plutôt que de configurer manuellement IIS et Azure endpoints.

1
répondu deadlytoes 2017-05-23 12:32:35