iis - Cómo configurar FTP en Azure VM
configurar ftp azure (5)
Debe agregar un rango de puerto adicional, que el servidor ftp elegirá para cada conexión ftp.
Tendrá que crear un grupo de puntos finales de entrada, cada uno representando uno de los puertos en el rango de puertos especificado. Tenga en cuenta que tiene un número limitado de puntos finales de entrada (no está seguro del número exacto, pero debería poder abrir fácilmente, digamos, 50 puntos finales de entrada en puertos contiguos). Luego, simplemente configure el servidor ftp para usar ese mismo rango. Además, querrá asignar el puerto público de punto final de entrada al mismo número de puerto privado, de lo contrario las conexiones no se crearán correctamente.
Necesito ayuda para configurar el FTP en mi Instancia de VM Azure.
La VM es Win Server 2012 R2. Configuré la función del servidor web y creé un sitio FTP en IIS. He confirmado que puedo acceder al servidor FTP con
ftp command: open localhost
También configuré un punto final de FTP para la máquina virtual en Azure Portal configurado para el puerto estándar 21.
Por último, he abierto una regla de firewall creada para permitir todo el tráfico de entrada / salida del puerto 21.
Ahora, cuando trato de enviarlo desde mi máquina desde el servidor, puedo ver que el nombre del DNS público del servidor se está resolviendo en la IP y el puerto adecuados, pero no se puede establecer ninguna conexión.
¿Me estoy perdiendo un paso de configuración en alguna parte?
Gracias
Después de regatear por un tiempo con la lista de 15 puntos anterior, recibí el mensaje que MS está tratando de aprobar: "No (fácil) FTP para ti" ...
Así que volví al mundo de Linux bueno y antiguo: establecí un servidor SCP usando Cygwin. Incluso obtienes un shell remoto como una bonificación ...
1) Ejecute el instalador de Cygwin - https://cygwin.com/setup-x86.exe
2) En la búsqueda de ''Seleccionar paquetes''
- cygrunsrv (selecciona el que está debajo de ''Admin'')
- openssh (selecciona el que está debajo de ''Net)
3) Cuando termine, inicie el Cygwin Terminal y escriba:
ssh-host-config -y -pwd S0me-Str0ng-pa55w0rd
cygrunsrv -S sshd
4) Desde Azure VM, agregue un punto final SSH
5) En Windows FireWall, agregue la regla de entrada para el puerto TCP 22
Y viola: puedes conectarte usando WinSCP, Notepad ++ y Putty, por supuesto ...
Notas:
- Unix distingue entre mayúsculas y minúsculas, por lo tanto, escriba su usuario en el caso exacto, por ejemplo, administrador con mayúscula A
- Sus unidades están en / cygdrive (c: / está en / cygdrive / c, etc.)
¡Buena suerte!
El enlace en la respuesta de dumbledad no está disponible actualmente. Aún tenía problemas para ejecutar un FTP pasivo en una nueva VM de Azure después de seguir los pasos que se detallan a continuación.
Después de buscar un poco, encontré este artículo de creación Pasivo FTP y puertos dinámicos . Es un gran tutorial y proporciona una secuencia de comandos simple para ejecutar desde su máquina virtual para poner en marcha el FTP en un minuto. Si está configurando varias máquinas virtuales, la secuencia de comandos es una forma mucho más rápida de configurar el acceso FTP en lugar de configurar manualmente los puntos finales IIS y Azure.
Hay una gran guía desde julio de 2012 '' Hosting FTP en IIS 7.5 en una máquina virtual Windows Azure '' de Ronald Wildenberg sobre esto. Él se hace eco de la respuesta de David . Estas son las etapas que atraviesa:
- Primero que nada, necesitas una máquina virtual. Necesitaba una máquina con Windows con una base de datos SQL Server, así que elegí ''Microsoft SQL Server 2012 Evaluation Edition'' de las plantillas disponibles.
- Una vez que la máquina se ha reiniciado, puede ingresar RDP a través de la opción de conexión en la parte inferior del portal de administración.
- Cuando estás dentro, necesitas configurar IIS. Un resumen de los pasos requeridos:
- Agregue la función ''Servidor web (IIS)'' al servidor.
- Agregue las características de IIS que necesita.
- Agregue un punto final TCP a su VM en el portal de administración con el puerto público y privado 80.
- Para habilitar FTP, asegúrese de habilitar los servicios de función ''Servidor FTP'' para su función de IIS:
- El siguiente paso es crear el sitio FTP real en IIS. Haga clic derecho en ''Sitios'' en el Administrador IIS y seleccione ''Agregar sitio FTP ...''
- Especifique el nombre y la ruta local para el sitio:
- Especifique la información de enlace y SSL:
- Y finalmente, especifique quién debe tener acceso al sitio FTP.
- Ahora debería poder acceder al sitio FTP desde dentro de la VM. Abra un símbolo del sistema, escriba
ftp 127.0.0.1
e inicie sesión - Para FTP activo, debe permitir el acceso a los puertos 21 (puerto de comando FTP) y 20 (puerto de datos FTP), por lo que debe agregar dos puntos finales a su VM
- para configurar FTP pasivo Para que esto funcione, necesitamos decirle al servidor FTP de IIS el rango de puertos que puede usar para las conexiones de datos y necesitamos agregar puntos finales a la máquina virtual que corresponda a este rango de puertos.
- configure el rango de puertos y la dirección IP externa para conexiones de datos pasivas. Esto se puede encontrar en el Administrador de IIS
- La dirección IP externa debe ser la dirección IP virtual que puede encontrar en el portal de administración de Azure.
- Si no puede especificar el rango del puerto del canal de datos en el Administrador de IIS, use la utilidad appcmd, que se puede encontrar en
%windir%/system32/inetsrv
:appcmd set config /section:system.ftpServer/firewallSupport /lowDataChannelPort:7000 /highDataChannelPort:7014
- Puede especificar los 15 nuevos puntos finales en el Portal de Azure, pero eso llevaría mucho tiempo, así que use los cmdlets de Windows Azure Powershell .
- descarga el archivo de configuración de publicación. Una forma es iniciar Windows Azure Powershell y usar el cmdlet ''Get-AzurePublishSettingsFile''. Abre un navegador y le permite descargar el archivo de configuración de publicación que corresponde a su ID de Windows Live.
- Cuando haya descargado el archivo de configuración de publicación, puede importarlo usando el cmdlet ''Import-AzurePublishSettingsFile'' y estamos listos para comenzar a agregar puntos finales.
- Simplemente creé un archivo de texto que contenía la lista de comandos que quería ejecutar y lo copié en la ventana de Powershell:
Get-AzureVM -ServiceName ''myServiceName'' -Name ''ftpportal'' | Add-AzureEndpoint -Name ''FTPPassive00'' -Protocol ''TCP'' -LocalPort 7000 -PublicPort 7000 | Update-AzureVM
Get-AzureVM -ServiceName ''myServiceName'' -Name ''ftpportal'' | Add-AzureEndpoint -Name ''FTPPassive00'' -Protocol ''TCP'' -LocalPort 7000 -PublicPort 7000 | Update-AzureVM
Get-AzureVM -ServiceName ''myServiceName'' -Name ''ftpportal'' | Add-AzureEndpoint -Name ''FTPPassive00'' -Protocol ''TCP'' -LocalPort 7000 -PublicPort 7000 | Update-AzureVM
donde ''myServiceName'' es el nombre de mi servicio en la nube y ''ftpportal'' es el nombre de mi máquina virtual. - Aunque el firewall de Windows parece permitir todo el tráfico que se requiere, también debe habilitar el filtrado de FTP con estado en el firewall:
netsh advfirewall set global StatefulFtp enable
- reinicie el servicio FTP Windows y deberíamos estar en funcionamiento:
-
net stop ftpsvc
-
net start ftpsvc
-
Vale la pena seguir estos pasos en el artículo original, no menos importante, porque incluye capturas de pantalla útiles para cada paso, pero pensé que valía la pena citar mucho aquí, por si acaso. El artículo también menciona FTP activo vs. FTP pasivo, una Explicación definitiva que vale la pena leer.
Sería genial si pudiera informar que después de seguir estos pasos, su servidor FTP basado en VM de Azure estará funcionando y será accesible. Pero desafortunadamente los pasos anteriores no lo arreglaron para mí :-(
Si no te importa usar el servidor FTP de FileZilla,
Esto es lo que hice para habilitar la conexión FTP a mi máquina virtual.
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.
Espero que ayude a alguien.
Aclamaciones