Instalacion y configuracion del servidor vsftpd en Ubuntu

9 Comments

Introduccion

Un servidor FTP es un protocolo de comunicacion IP el cual se utiliza mayormente en internet para poder compartir y transferir grandes cantidaes archivos e informacion de una manera rapida y eficaz.

Para activar el demonio o servicio de ftp en Linux Debian o Ubuntu necesitamos instalar un servidor como vsftpd para que pueda aceptar conexiones desde otras computadoras.

Como instalar VSftpd

La instalacion del software es muy sencilla, solo tomemos en cuenta el puerto default de ftp 21 y la ubicacion del archivo de configuracion /etc/vsftpd.conf. Para instalar vsftpd, tecleamos

root@ftpserver:~# aptitude install vsftpd
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
The following NEW packages will be installed:
 libcap1{a} update-inetd{a} vsftpd
0 packages upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 133kB of archives. After unpacking 618kB will be used.
Do you want to continue? [Y/n/?] y
Writing extended state information... Done
Get:1 http://gt.archive.ubuntu.com jaunty/main libcap1 1:1.10-14build1 [9780B]
Get:2 http://gt.archive.ubuntu.com jaunty/main update-inetd 4.31 [16.9kB]
Get:3 http://gt.archive.ubuntu.com jaunty/main vsftpd 2.0.7-0ubuntu1 [106kB]
Fetched 133kB in 3s (38.8kB/s)
Preconfiguring packages ...
Selecting previously deselected package libcap1.
(Reading database ... 29689 files and directories currently installed.)
Unpacking libcap1 (from .../libcap1_1%3a1.10-14build1_amd64.deb) ...
Selecting previously deselected package update-inetd.
Unpacking update-inetd (from .../update-inetd_4.31_all.deb) ...
Selecting previously deselected package vsftpd.
Unpacking vsftpd (from .../vsftpd_2.0.7-0ubuntu1_amd64.deb) ...
Processing triggers for man-db ...
Setting up libcap1 (1:1.10-14build1) ...

Setting up update-inetd (4.31) ...

Setting up vsftpd (2.0.7-0ubuntu1) ...
Adding system user `ftp' (UID 110) ...
Adding new user `ftp' (UID 110) with group `nogroup' ...
Not creating home directory `/home/ftp'.
 * Starting FTP server: vsftpd                                                                   [ OK ] 

Processing triggers for libc6 ...
ldconfig deferred processing now taking place
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done

Configuracion de vsftpd

Para permitir el acceso a nuesta conexion ftp a los usuarios locales, debemos de agregar o descomentar en el archivo de configuracion /etc/vsftpd.conf, la siguiente linea:

local_enable=YES

Ahora bien, si deseamos que los usuarios del servidor puedan subir archivos, agregamos o simplemente descomentamos la linea:

write_enable=YES

Por razones de seguridad, podemos restringir el acceso de los usuarios exclusivamente a su directorio /home, agregando la linea:

chroot_local_user=YES

Guardamos y cerramos el archivo

Reiniciando el servicio de FTP con vsftpd

Para arrancar o reiniciar el nuevo servicio de FTP, ejecutamos el comando:

root@ftpserver:~# /etc/init.d/vsftpd restart
 * Stopping FTP server: vsftpd                                           [ OK ]
 * Starting FTP server: vsftpd                                           [ OK ]
root@ftpserver:~#

Como utilizo FTP desde la linea de comandos de Linux

Para poder conectarnos a nuestro nuevo servicio de ftp desde la consola, tecleamos:

usuario@cliente:~$ ftp ftp.servidor.com
Connected to ftp.servidor.com
220 (vsFTPd 2.0.7)
Name (ftp.servidor.com:usuario): usuarioftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r--    1 1001     1001          357 Nov 09 04:23 examples.desktop
-rw-r--r--    1 1001     1001        30720 Nov 09 04:23 smokeping.tar
226 Directory send OK.
ftp> quit
221 Goodbye.

Abrir el puerto 21 de FTP en el firewall iptables

Agregamos la siguiente regla a nuestro script de iptables, tomando en cuenta que el protocolo es TCP y el puerto 21:

iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT

9 Replies to “Instalacion y configuracion del servidor vsftpd en Ubuntu”

  1. Hola ojala y alguien me pueda ayudar, tengo instalado ubuntu 10.04 ademas los clientes de FTP filezilla ygftp. Ya instale el servidor de FTP como lo indican paso a paso, pero a la hora de abrir el cliente de FTP, cualqiuiera de los dos y deseo transferir un archivo de mi equipo local al servidor me marca error 550 permission denied realice todo como se indica aqui, pero no me deja transferir ningun archivo. Alguien me puede ayudar?

    1. ya encontre la solucion, la comparto con ustedes y espero les sirva ok…
      mi error era el 550 permission denied, busque en otros foros y lo que encontre fue esto :

      Well I also had a similar problem .. i figured out the solution.

      open your vsftpd.conf file .. for me it was in /etc/vsftpd.conf.

      There you will find the following line :
      # Uncomment this to enable any form of FTP write command.
      #write_enable=YES

      Uncomment this .. it will look like this.
      # Uncomment this to enable any form of FTP write command.
      write_enable=YES

      Restart your ftp daemon and I hope things will work as expected.

      verifiquenlo y quedara listo, anexo la liga…

      http://ubuntuforums.org/showthread.php?t=833829

      Saludos desde la CIUDAD DE MEXICO!!!!!
      Dsifruten su servidor FTP

  2. buenas tardes:

    tengo un servidor de ftp en red hat (vsftpd) y mi firewall es ubuntu; internamente esta funcionando pero al llamarlo desde otro sitio me envia el siguiente mensaje despues de validar la cuenta y contraseña del usuario; 425 Failed to establish connection.

    en mi firewall esta conpueto por los siguientes programas: iptables y squid

    Alguien que pueda ayudarme

    Gracias

  3. Tio eres un crack!!!!! un tuto fácil y claro, lo he instalado y configurado en nada.
    Estaba un poco asustado, porque venía de instalar un servidor de correo y me costó bastante, pero el de FTP ha sido visto y no visto 😀

  4. Instale el software, y me funciona excelente, pero tengo un problema cuando quiero ingresar desde un equipo con Windows. Ya que no puedo abrir el sitio ftp, desde el explorador de windows. Alguien me puede decir, si esto lo tengo que configurar desde el vsftpd.conf, o lo tengo que hacer desde la pc cliente.

    Saludos,

  5. Hola amigo es que tengo una duda… bn grande pasare como el tonto del paseo pero…q mas DA..

    mira lo q pasa es que acabe de migrar a linux definitivamente pero no se como agregar carpetas o archivos en donde se guardan????

    me explico mejor……ud sabe q en windows se crea una cerpeta y alli se guarda lo q querramos q el usuario vea pero en ubuntu como se hace????

    otra mas boba pero bueno…..

    la ip q tiene q ser fija para acceder al servicio ftp o se puede utilizar algun programa como windows NO-IP q puedes crear un hosting y te localiza de inmediatamente????

    O como haceder desde un sitio remoto??

    q pena por mis preguntas de peincipiente pero por algo se comienza jejeejje

  6. Hola gracias por el tuto, esta muy claro y preciso como para empezar a probar las configuraciones del servidor ftp y ver que ya funciona, excelente aporte.

    Utilizo un dell inspiron 1545 con so Ubuntu 9.10 karmic koala, excelente, me instalo todos los driver y actualizaciones 😀

    pD: NO TUVE QUE REALIZAR LA LINEA DE CONFIGURACION DEL IPTABLE.

Deja tus preguntas o comentarios