Bienvenido a cursohacker.es. Puedes acceder a todo el contenido líbremente pero si deseas poder crear tus propios temas en el foro y que tus respuestas y comentarios se publiquen de forma automática regístrate como alumno aquí

Servidor FTP qué es, instalando nuestro propio servidor

Los servidores FTP son uno de los tipos de servidores mas comunes intercambiar archivos entre dos ordenadores. Si eres webmaster, o tienes en mente crear una web en el futuro casi con total probabilidad tendrás que usar uno de ellos para subir los archivos a tu sitio web.

FTP como tal es un protocolo de intercambio de información, pero comunmente llamamos servidores FTP a aquellos que tilizan dicho protocolo para hacer el intercambio de archivos. Estos servidores en su inicio no utilizaban ningún tipo de cifrado con la consecuencia de que cuando nos logeamos en un servidor de este tipo nuestros datos (usuario y contraseña) viajan por la red en texto plano y son legibles por cualquiera que sepa cómo interceptar la conexión, cosa que veremos más adelante en futuras publicaciones. Actualmente conviven tanto el protocolo FTP como el protocolo SFTP que es igual pero utillizando cifado asimétrico, lo cual nos hace ganar y mucho en seguridad, aunque no nos garantiza la protección total frente a ataques.

Instalar nuestro propio servidor FTP

En nuestro proyecto primará siempre la práctica frente a la teoría, así que nada mejor para ver cómo funciona un servidor FTP que instalando nostros mismos uno en local y juando un poco con el. Tenemos tanto servidores de pago como servidores ftp gratis y nosotros siempre os vamos a mostrar herramientas gratuitas frente a herramientas privadas. Así que vamos a ellos, el servidor que vamos a instalar es:
filezilla, servidor ftp libre y gratuito
https://filezilla-project.org/download.php?type=server

Hemos escogido un servidor de la casa Mozilla, famosa por sus otros productos como firefox (navegador opensource) o thunderbird (cliente de correo electrónico), entre otros muchos productos y servicios que ofrece. La descarga es gratuita, así que descargamos y empezamos la instalación. Dejamos todo por defecto hasta llegar a esta pantalla:
Instalando un servidor ftp, filezilla server installation
Marcamos la opción de que no lo instale como servicio, ya que estamos probandolo y no queremos que arranque el servidor cada vez que arranquemos Windows, si fuera un servidor de producción si nos interesaría instalarlo como servicio, pero en nuestra caso no. Terminamos la instalación y tendremos en el escritorio un nuevo icono (filezilla Server Interface) para poder administrar nuestro servidor FTP. Si hacemos click nos preguntará dónde tenemos instalado el servidor que queremos administrar, indicamos que está en nuestro ordenador y nos conectamos:
La dirección IP hemos establecido "localhost" ya que esto significa "nuestro ordenador", también podríamos haber puesto: "127.0.0.1" o nuestra IP de red 

Bien, llegados a este punto ya disponemos de un servidor FTP instalado en nuestro PC, listo para hacer prácticas, entenderlo y poder trabajar en el futuro con servidores de terceros. Es posible que si tenéis activado el cortafuegos de windows os pregunte si permitís que Filezilla tenga acceso a internet, evidentemente no le bloqueeis el acceso ya que sino no podréis trabajar con el. Tampoco os asustéis, no estáis abriendo vuestro PC a internet, nadie podrá acceder a vuestro servidor sin una configuración mínima que ahora veremos.

Crear usuarios y grupos en un servidor FTP (filezilla)

Ahora llega el momento de crear nuestro primer usuario que nosotros mismos utilizaremos para conectarnos y ver qué podemos hacer. Lo primero es crear un grupo. A nivel de gestión de seguridad, por si alguna vez os dedicáis a administrar servidores, esto es muy importante, ya que en este apartado definimos lo que pueden hacer los usuarios que pertenecen a dicho grupo. Es decir. Vamos a indicar las IPs desde las que pueden conectar, velocidad máxima de descarga, número de conexiones en paralelo, etz etz. Así que vamos a ello:
Creando grupos en filezilla, primera pantalla
Una vez pinchamos sobre "Edit" -> "Groups" Nos aparece:
Creando grupos en filezilla, segunda pantalla
A primera vista ya vemos en la parte izquierda las secciones de "general", "shared folders" (directorios compartidos), "speed Limits" (Limitaciones de velocidad), "IP Filter" (filtros que podemos utilizar para indicar desde qué IPs podrán conectarse los usuarios que pertenezcan al grupo que vamos a crear. Así que pulsamos sobre "Add", que significa Añadir y creamos nuestro primer grupo. Yo lo llamaré "grupo_prueba":
Creando grupos en filezilla, tercera pantalla
Aseguraos de que marcáis la opción "Enable access for users inside grupo", ya que esto significa que habilitáis el acceso a usuarios que pertenezan a este grupo. Con esto vosotros podéis tener varios grupos y habilitar el acceso a unos grupos o a otros según vuestras necesidades, en el caso de que estéis administrando servidores FTP en producción. Fijaros además en la opción Force SSL for user login. Esta opción convertirá vuestro servidor de baja seguridad FTP en un servidor de alta seguridad SFTP nosotros no lo vamos a activar para hacer nuestras pruebas, pero si fuera un servidor real sería altamente recomendable activar esta casilla. El siguiente paso, ya que estamos en un curso de seguridad infomática es bloquear todo acceso excepto nuestra IP local. Para ello nos vamos a la pestaña de IP Filter y hacemos 2 cosas.

  1. Bloqueamos TODAS las IPS del mundo
  2. Permitimos solo la IP local

Bloquear acceso todas las IPs filezilla

Ya tenemos asegurado que desde fuera de nuestro PC nadie va a poder logear en nuestro servidor, ahora nos queda definir cuando alguien se logea que carpeta puede ver. Yo me he creado una carpeta llamada "Pruebas-ftp" en C, vosotros podéis crear otra o poner cualquier otra carpeta, así mismo yo he dado permisos para hacer todo, tanto leer, editar y borrar archivos y ficheros. Para hacer pruebas es lo que vosotros deberíais poner, en un servidor en producción debéis ser cautelosos con los permisos que otorgaís a los usuarios:
Configuración de permisos en grupos de filezilla

Si queréis podéis ver la parte de "Speed Limits" para poder capar la velocidad a ciertos grupos, es algo muy trivial, os animo a que al menos pulséis sobre la pestaña para que la veáis. Una vez hecho esto pulsad sobre el "OK" de abajo a la izquierda y vuestro grupo habrá sido creado. Llega el momento de crear un usuario que pertenezca a dicho grupo y al cual se le van a aplicar las configuraciones que hemos establecido. Así nos vamos a edit->Users:
Crear un usuario en filezilla
Nos aparecerá una interfaz muy similar a la de creación de grupos, pero con ligeros detalles que veremos dentro de unos segundos. Bien, hacemos click en "Add" y ponemos el nombre del usuario, en mi caso lo he llamado "test" y como es obvio debemos indicar que pertenece al grupo de prueba que acabamos de crear:
crear usuario en filezilla y asginarle un grupo
Una vez creado vamos a crear una contraseña para el usuario, no es recomendable dejar usuarios sin contraseñas, ni siquiera los de pruebas, podríamos dejarlo olvidado y algún atacante utilizarlo en nuestra contra:
establecer contraseña/password usuario en filezilla
Cómo podréis observar a un usuairo se le pueden restringir también las IPs de acceso, las velocidades y las carpetas a las que puede acceder, si configuráis bien vuestros grupos no es será necesario establecer una configuración estricta para cada usuario, pero en caso de que se os presente la necesidad, tened presente que también podéis aplicar configuraciones específicas por usuario.

Reforzar la seguridad de nuestro servidor FTP

Llegados a este punto, vuestro servidor de pruebas tiene ya una configuración buena para su fin, hacer pruebas, aún así hay una última medida de seguridad que debéis tener en mente para evitar los ataques de fuerza bruta. Un ataque por fuerza bruta (brute forze) no es que os vayan a sacar la clave a guantazos, (que bueno podría ser un tipo de ataque de ingeniería social avanzada...) el tipo de ataques de fuerza bruta que queremos evitar consiste en aquellos que se basan en herramientas capaces de probar de forma automática claves de acceso hasta que dan con la clave buena. Normalmente este tipo de ataques fallan, ya que eligiendo una contraseña fuerte las posibilidades de éxito de un atacante por fuerza bruta son muy bajas. Nosotros vamos a tomar una medida que imposibilitará este tipo de ataques, que no es ni más ni menos que bloquear aquella IP que intente conectarse mas de X veces con una clave errónea. Para hacer esto nos vamos a Edit->Settings:
Configuración servidor FTP filezilla
Y accedemos a la sección de AutoBaneos:
autoban en filezilla

Aquí hemos establecido que si prueba 10 contraseñas, banearemos la IP durante 1 hora. Con esto es más que suficiente para parar cualquier ataque de tipo brute force.

En la siguiente publicación empezaremos a trabajar con nuestro recién instalado servidor, viendo internamente cómo trabajan los distintos tipos de comandos para ser capaces de administrar un servidor con sólo una shell, sin necesidad de tener ningún gestor gráfico. Obviamente es mas cómodo trabajar con un gestor gráfico pero si pretendes introducirte bien en el mundo de la seguridad informática debes ser capaz de trabajar desde la consola. 

Comentarios

Hola, estoy mas avanzado en este curso, estaba certificando los de winspc pero me daba error me dijeron que qutase la ip(cuando abri el server) 127.0.0.1 y pusiera la ip de red (la que sale con ipv4 en la cmd) pero me da error y no se conecta.... me estoy  equivocando de ip o estoy haciendo algo mal? 

Gracias, buen curso.

Hola Plablo.

La IP del servidor FTP, es la IP de tu ordenador. En local, es decir para hacer pruebas en tu propio ordenador te valen las 3 direcciones IPs que tiene. Una es 127.0.0.1, esta es la IP LOCALHOST. Y hace referencia a sí mismo. La IP de red que puedes ver con el comando IPCONFIG en el CMD es la IP que tiene tu PC en la red local a la que pertenece. Tanto LOCALHOST, como 127.0.0.1 como la IP de red son IPs válidas para hacer pruebas en local con tu servidor FTP. 

Yo buscaría el origen de tu problema en 2 lugares. Primero, el cortafuegos, tanto el nativo de windows como si tiene alguno otro instalado. Asegúrate que no estás denegado el acceso a la red del servidor FTP con un cortafuegos. El segundo lugar que has de verificar es que NO EXISTA ningún otro servidor (ya sea FTP o cualquier otro servicio) ocupando el puerto 21. El la configuración del servidor FTP hemos visto cómo se puede cambiar el puerto para que trabaje en un puerto distinto. Prueba a cambiarlo al puerto 54321. Si te funciona en ese puerto es que tienes el puerto 21 ocupado con algún otro servicio. Si tampoco te funciona cambiando el puerto verifica el tema de firewalls. 

En la configuracion del grupo, donde se impide que entren otras ip excepto la 127.0.0.1  , en el cmd luego que pongo la contraseña del usuario test me dice que el usuario no esta permitido para conectarse con la ip que tiene.

Si cambio la configuracion de grupo quitando la restricciones de ip si puedo iniciar sesion con el usuario test. Me podrian ayudar..

Añade a la lista de IPs estas 2:

  • localhost
  • Tu dirección IP de red

Pruebalo y nos cuentas.

A mi me pasa lo mismo. He puesto la de 127.0.0.1, la de red local y localhost no se puede porque dice que debe ser numeros y tampoco me deja. Para poder debo quitar las restricciones de ips.

Básicamente es eso. Me aparece un texto en rojo que pone:

Protocol error: Invalid data, could not import account settings.
Could not change account settings.

En resumen, si hoy crease un grupo y un usuario para probar, mañana ya no estaría

Hola, al configurar el grupo me sale lo siguiente: 

"Protocol error: Invalid data, could not import account settings. Could not change account settings"

Sigo las instrucciones que marcáis pero nada. ¿A qué se puede deber? ¡Gracias de antemano! :)

Cuando lo instalo se me queda el quadrado que ocupael programa en blanco y se bloquea =( que hago??

Se pega la aplicación dejando un cuadro gris cuando se ejecuta

Veras hace tiempo de esa version de filezille supongo porque yo tengo una version completamente diferente, en la instalacion no me da la opcion de no instalarlo como servicio, luego no me deja crear grupos, no me deja conectarme a mi red o por lo menos no se como ya que me pide nombre de usuario y contraseña, podrias ayudarme?

¡ A mi me pasa exactamente lo mismo!
Tal vez

Hola buenas tardes, tengo un problema windows no me deja descargar el programa ¿Que hago?

Imagen de Grom

Excelente material, muy práctico e importante.

¿Para conectarme al servidor y acceder desde otro computador de mi red a la carpeta que decidí compartir por medio de FTP tengo que instalar el cliente o se puede desde el mismo servidor?

me aparece en letras rojas "you appear behind a NAT router. Please configure the pasive mode setting and forward a range of ports in your router.Warning: FTP over TLS is not enabled, users cannot securely log in." a que se debe y cuando creo el grupo me sale "Protocol errorinvalid data could not import account settings Could not change account settings" me gustaria saber que estoy haciendo mal

Me sale un ERROR 530 Y ERROR 421 cuando le pongo una pss a el usuario simplemente se cambia por una cantidad de caracter exagerados logicamente no es la clabe que le doy al usuario. Podrian ayudarme de ante mano gracias

Cuando abro filezila me aparece en letras rojas "you appear behind a NAT router. Please configure the pasive mode setting and forward a range of ports in your router.Warning: FTP over TLS is not enabled, users cannot securely log in." a que se debe y cuando creo el grupo me sale "Protocol errorinvalid data could not import account settings Could not change account settings" me gustaria saber que estoy haciendo mal.

¿Alguien sabe la respuesta?

Para descargar filezilla server debéis pinchar sobre la opción: Show additional download options (volverá a salir la última versión de filezilla server) y ya podéis descargar.

Para restringir IPs, poned la IP de vuestro equipo (el que veis al poner ipconfig en el CMD de windows). En mi caso por ejemplo puse 192.168.1.0/24 esto significa que cualquier equipo de mi red local puede acceder al servidor ftp pero como bien dice el profesor, estamos en un curso de seguridad así que poned solo la IP de vuestra máquina.

Respecto de los mensajes de NAT, TLS, etc. No son errores, lo que pasa es que Filezilla Server es tan majo que detecta que el equipo está detrás de un router y que además no estamos usando cifrado TLS. (Olvidaos de esto)

Y termino por decir ¡Chapeau! al profe ;)

P.D.: Daos cuenta que en informática todo cambia tan rápido que un tutorial que hoy está percetamente explicado, mañana podrá tener "falsos errores"; digo falsos errores porque realmente no son errores, lo que pasa es que las aplicaciones que nos descargamos cambian y hay que adaptarse a las nuevas características del software.

 

muy bien explicado, así da gusto. Me salen los mismos "errores" que ya han comentado, pero si no son problema, todo bien por ahora. Gracias por el curso.

me aparece este error cuando intento ingresar por el CMD : "521 This user is not allowed to connect from this IP
Conexión cerrada por el host remoto
"

Alguien me puede ayudar con esto.

Hola a todos, vereis:

He seguido los pasos de la lección, pero me salia un mensaje de error que decia:

You appear to be behind a NAT router. Please configure the passive mode settings and forward a range of ports in your router.
Warning: FTP over TLS is not enabled, users cannot securely log in.

El primer error he conseguido solucionarlo accediendo a "edit, settings, passive mode settings:

use custom port range:54321 - 65535, Use the following Ip: 127.0.0.1."

Pero el segundo error accedo a " ftp over TLS settings", he probado a darle a enable "ftp over TLS support " y nada, no se a que boton hay que darle. ¿Alguien me puede ayudar?.  

Y también me sale: " Protocol error: Invalid data, could not import account settings.
Could not change account settings"

 

Los quiero felicitar, tienen muy buen material...

Una pregunta; es necesario instalar el FTP en todos los ordenadores, o con instalarlo en un ordenador y hacer la configuración ya funciona con todos los ordenadores a los que les permita el acceso ? Gracias.

Hola, yo no soy estudiante de informatica o web master o empresaria, etc. Yo soy aspirante a hacker, pero no tengo una pagina o nada de eso. Queria saber para que podria yo querer usar filezilla. Es decir, aparte de compartir archivos, para que otra cosa sirve este programa?

Desde ya muchas gracias,

Marga

Hola buenas tarde, soy Antonio Mazzini del Curso d Hacker; estoy en la parte del  la ventana negrita del cmd y del ipconfig; luego descargo el FileZilla; y al llegar al Conect to Server: ingreso mi IP; Port:1447; y doy OK; M sale repetitivamente en letras rojas:  Error, could not connect to server; luego pone:  Error Connection to server lost...       Q paso debo dar.....Muchas gracias   

Quiero saber si una minilaptop acer aspire one de 1gb de ram 250gb de disco duro ,1.67 ghertz de velocidad de procesador ,con procesador Intel atom sistema operativo Windows 7 stater mepuede servir para instalarle los programas q dicta el curso (todos), y también quiero saber si se le puede meter mas memoria ram por q cheque en internet y dice q el modelo ya esta descontinuado y temo a q no encuentre memorias ram puesto q quien sabe si las encuentre .espero me puedan apoyar en está pregunta .gracias.

si puedes aumentar de 1 a 2 gb en esa netbook y te recomendaria que intslaras xp aunque hoy en dia ya no tiene actualizaciones ni soporte tecnico tu netbook andaria mejor e igual asi podrias utilizar todas las herramientas del curso de lo contrario si lol dejas en win 7 starter consume demasiuada ram y no notaras el cambio tambien podrias configurar los priograms que inician con la netbook y tratar de mantenerla lo mas limpia pósible eliminando archivos basura y si utilizas chrome pasar a mozilla!!!!!

 

 

                                                                                                         by: d0b3rm4nn

Es que me aparece algo que dice esto:

You appear to be behind a NAT router. Please configure the passive mode settings and forward a range of ports in your router.
Warning: FTP over TLS is not enabled, users cannot securely log in.

En el programa y no se solucionarlo.

Muy buenas!! Justo al pulsar OK para crear el grupo me dice lo siguiente y falla filezilla:

Sending account settings, please wait....

POR FAVOR AYUDA

Gracias!

en el log me sale un aviso que por lo que veo a ti no te sale, dice que configure las opciones pasivas pero cuando me meto no se que rango poner ya que he puesto uno al azar y me sigue saliendo, aqui te dejo el mensaje: Warning: FTP over TLS is not enabled, users cannot securely log in.
You appear to be behind a NAT router. Please configure the passive mode settings and forward a range of ports in your router.

justo despues de connect to server me aparece el siguiente mensaje en la consola del servidor:

Warning: FTP over TLS is not enabled, users cannot securely log in.
You appear to be behind a NAT router. Please configure the passive mode settings and forward a range of ports in your router.

Cuando estoy en cmd introduzco el nombre de usuario y le doy a enter, despues me pide la contraseña pero no puedo escribir en la consola de cmd y nose porque, muchas gracias.

Lo tengo puesto todo como dices ahi, host: localhost port: 14147 pero pasamos al password y ahi no se que tengo quw poner, si me respondes muchas gracias

buenas una consulta en el segundo cuadro donde dice paswoor tengo k poner una contraseña o algo

Alguien pudo arreglar este error? Yo aún estoy con esto, seria genial que alguien coloque la respuesta, así seriamos más los ayudados, gracias...

Creo que deberían actualizar el contenido relacionado con ftp porque en 2017 ya va por la versión 3.25.2, y la interfaz es completamente diferente a la que están presentando

Si te ha sido de utilidad Compárteme