En este tutorial vamos a ver como instalar servidor ftp en ubuntu 18.04 paso a paso. Como sabéis la transferencia de ficheros FTP es un sistema muy extendido y este tutorial nos va a enseñar a instalar, configurar, dar de alta usuarios y definir permisos.
Instalar un servidor FTP en ubuntu 18.04 es perfecto para dejarlo instalado en una máquina con pocos recursos ya que no requiere excesivos recursos de máquina, poco más que el sistema operativo.
Nosotros vamos a realizar la instalación del servidor FTP sobre un servidor ubuntu server y la vamos a hacer entera con una consola terminal y comandos. El programa que vamos a utilizar es VSFTPD
Página oficial vsftpd: https://security.appspot.com/vsftpd.html
ÍNDICE
Contenido
VIDEO TUTORIAL DE COMO INSTALAR SERVIDOR FTP EN UBUNTU
Además para aseguraros que este tutorial funciona aquí os dejo un vídeo de nuestro canal youtube explicando todos y cada uno de los pasos a seguir:
REQUISITOS
Los requisitos mínimos para instalar un servidor FTP en ubuntu son los propios del sistema operativo. Yo he de decir que lo he instalado con muchos menos recursos sobre todo de RAM y ha funcionado perfectamente.
En ambos casos vamos a necesitar una conexión a internet.
REQUISITOS UBUNTU SERVER:
REQUISITOS UBUNTU DESKTOP
- PROCESADOR: 2 GHz dual core
- MEMORIA RAM: 2 GB
- DISCO DURO: 25 GB DE ESPACIO LIBRE EN DISCO
INSTALAR SERVIDOR FTP EN UBUNTU 18.04
Vamos a instalar como servidor de FTP el más que conocido VSFTPD, pero no os asustéis veréis a continuación que es muy fácil si seguimos todos los pasos.
INSTALAR VSFTPD
VSFTPD está incluido en el repositorio oficial de ubuntu por lo que nos necesitamos descargar ningún programa, simplemente tenemos que correr el instalador, pero antes necesitamos validarnos como root. Nos pedirá la contraseña del usuario root:
sudo su –
A continuación ejecutamos la instalación de vsftpd
apt-get install vsftpd
Al instalar el servidor FTP se queda iniciado el servicio automáticamente y no hay que hacer nada.
Antes de seguir y como vamos a hacer varios cambios en el archivo vsftpd.conf os recomiendo hacer una copia del fichero con el siguiente comando:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.confinicial
Por si tenéis dudas o necesitáis recuperar el fichero la configuración es esta:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
La carpeta por defecto del servidor FTP es /srv/ftp
CONFIGURAR FIREWALL DE UBUNTU
Lo primero que vamos a ver es si está activado o no el firewall de ubuntu. Si estuviera deshabilitado pasaríamos al siguiente paso y nos saltaríamos este. si no tienes que seguir con el proceso de configuración de firewall.
El comando para ver el estado de nuestro firewall es: (si el resultado es: Estado: inactivo es que no lo tenemos habilitado)
sudo ufw status
Ahora debemos permitir el tráfico en el firewall de ubuntu para que no tengamos ningún problema y sobre todo no nos cueste un quebradero de cabeza. Vamos a permitir el tráfico por el puerto 20 y el puerto 21. La forma de permitir el tráfico es:
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
ACCESOS
Ahora tenemos dos opciones:
- Configurar acceso anónimo
- Configurar accesos a usuarios y restringidos.
En el caso de crear accesos anónimos es muy interesante si lo que queremos en una red local simplemente intercambiar ficheros de una forma libre sin preocupaciones.
Es muy recomendable si queréis mover ficheros de forma segura ya que aunque se interrumpa la conexión se restablecerá y se seguirá enviando.
Pero si el servidor va a estar publicado en internet te recomiendo encarezidamente que uses usuarios y accesos restringidos ya que esta información va a ser pública para todo el mundo.
CONFIGURAR ACCESO ANÓNIMO
Es la forma más rápida y sencilla de configuración, para ello vamos al fichero de configuración vsftpd.conf
nano /etc/vsftpd.conf
y cambiamos el siguiente valor:
anonymous_enable=YES
Una vez cambiados estos valores debemos reiniciar el servicio FTP
/etc/init.d/vsftpd restart
Conexión desde FILEZILLA:
De esta manera podremos entrar en nuestro servidor FTP de forma anónima.
Conexión desde Explorador de Windows:
Para acceder al servidor FTP ubuntu también podéis abrir un explorador y en la dirección poner la ip del servidor seguido de FTP. En mi caso sería: ftp:\\192.168.1.101
PERMISOS ESCRITURA USUARIO ANÓNIMO
Si lo que queremos es que el usuario anónimo tenga permisos de escritura sobre el servidor debemos añadir estas líneas en el archivo vsftpd.conf o mejor descomentarlas.
Para poder crear directorios:
non_mkdir_write_enable=YES
Para poder renombrar ficheros y directorios:
anon_other_write_enable=YES
Para poder subir ficheros de forma anónima:
anon_upload_enable=YES
Guardamos el fichero y reiniciamos el servicio:
/etc/init.d/vsftpd restart
CONFIGURAR USUARIOS
Para configurar los usuarios debemos dar de alta los usuarios de manera local de esta manera permitirá validar al usuario con nombre de usuario y contraseña.
La contraseña es la que definimos en el sistema linux.
DAR DE ALTA EL USUARIO
Para dar de alta el usuario corremos el siguiente comando:
sudo useradd -m pruebaftp
definir contraseña:
sudo passwd pruebaftp
CREAR CARPETAS Y PERMISO
sudo mkdir /home/pruebaftp/ftp
sudo chown nobody:nogroup /home/pruebaftp/ftp
sudo chmod a-w /home/pruebaftp/ftp
chmod -R 777 /home/pruebaftp/ftp
Ahora toca editar el archivo vsftpd.conf. Cambiamos los siguientes parámetros:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=11000
user_sub_token=$USER
local_root=/home/$USER/ftp
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NOallow_writeable_chroot=YES
Ahora debemos crear la lista de usuarios según hemos definido en el archivo anterior. Para ello Creamos un archivo nuevo y lo editamos
nano /etc/vsftpd.userlist
añadimos pruebaftp y guardamos el fichero.
CONFIGURAR CONEXIÓN FILEZILLA:
Con esto terminamos el tutorial de INSTALAR SERVIDOR FTP EN UBUNTU 18.04, espero que os haya gustado y sobre todo que os haya sido de utilidad.
hice exactamente lo que dice el tutorial y no funciona.
Buenos días!
Te aseguro que el tutorial está revisado y funciona si sigues todos los pasos. Lo he utilizado varias veces y está todo correcto.
Un saludo,
Ami tampoco me funciono, intente asi tal cual y no conecta ni el filezilla ni ningun otro medio
Yo tuve el mismo problema pero, acabé haciendo otra máquina virtual fuera a ser que se instalase mal o algo, en mi caso el error estaba en la ipv4. Al volver a instalar y seguir concienzudamente los pasos, todo funcionó a la primera, espero que os sirva el comentario <3
Yo tengo el mismo problema, seguí el tutorial exactamente y no funciona. Pero me percaté de que el servicio no está activo, ni siquiera existe el archivo /etc/init.d/vsftpd Reviso los servicios que están en ejecución con sudo service –status-all y no aparece el servicio vsftpd, ni tampoco en los procesos activos. Creo que por ahí va el problema, si alguien sabe como resolverlo, se los agradeceré mucho. Espero sirva mi comentario.
Muchas gracias un perfecto tutorial muy bien redactado no tuve problemas para instalarlo y configurarlo
Gracias a tí por seguirlo! espero que el tutorial te haya gustado.
buenas tardes, buen tutorial. Si necesito una carpeta publica para todos los ususarios mas la personal como se hace?
Hola buenas tardes, un buen tutorial. Si necesito tener una carpeta PUBLICA para todos los usuarios con permisos de descarga y subida mas la personal de cada usuario como se hace?
Pues te tocará crear un usuario que se llame «público» que compartirás la contraseña con todos.
Espero haberte aclarado la duda.
Gracias por seguirnos.
muchas gracias por tu ayuda
Gracias a tí por seguirnos Jesus :). Se agradecen estos mensajes.
Hola, seguí el tutorial y funcionó. Tengo Ubuntu Server y una única carpeta creada por mi. Cuando ingreso en el navegador web a mi Servidor FTP, no aparece esa carpeta, no hay nada. ¿En qué directorio comenzamos?
Todo depende como accedas a ese servidor FTP. lo suyo sería acceder con un cliente FTP y no un servidor web. Otra cosa que puedes probar es quitar http:// y poner ftp://. Prueba y me dices.
Gracias por tus comentarios y gracias por seguirnos.
Buenas, tampoco me funciono a mi en principio. Pero se me ocurrió conectar con el puerto 22 si me funciono. Alguna idea?
Me ha pasado lo mismo. No es cosa del tutorial, porque siguiendo otro con certificados me pasa lo mismo. Alguien sabe porque pasa eso?
Pingback: FILEZILLA EN UBUNTU 20.04 - INSTALAR - Viva Ubuntu
Hola, cuando quiero hacer una transferencia de archivo me tira error 550 el Filezilla, alguien podria ayudarme? GRACIAS
Mucho pedito para hacer todo ese comanderio, en android se instala un ftp server y de allá para acá desde un explorador se conecta pues trae habilitado un ftp en otras ubicaciones se inserta la conexión y papas!
A mi tampoco me funcionó, y no es que el tutorial esté mal o no sirva, sino que en algunos casos algo no funcionó como se esperaba. En mi caso seguí el tutorial al pie de la letra y no me funciona el servidor FTP. Revisando me percaté de que el servicio vsftpd no está en ejecución, lo revisé con sudo service –status-all y el servicio vsftpd no está presente, ni siquiera existe el archivo /etc/init.d/vsftpd
Por otra parte, revisando en los procesos tampoco aparece el proceso llamado vsftpd
Creo que por ahí va el problema de todas las personas que no nos funcionó. Si alguien sabe como resolverlo se los agradeceré mucho.
Espero que mi comentario le sirva a alguien.
Disculpar pero yo lo tengo funcionando con la opcion de configurar usuarios , creo que es la mas apropiada por seguridad, si que encontrado fallos , pero en los routers que dan acceso o diferentes redes al viajar por distintos paises y estar en hoteles usando wifi , Os comento que he bajado mas de 12000 fotos y 500 videos al mismo tiempo. Un saludo y gracias a la persona que ha dedicado su tiempo a escribir esta receta.