Configurar un servicio FTP en Ubuntu, Linux Mint, y derivados

Como ya comenté en el artículo anterior “Que es y como instalar un servicio FTP en Ubuntu“, una de las grandes ventajas que nos ofrece Ubuntu y casi cualquier distribución Linux, es la posibilidad de montar diferentes servicios que nos ayuden en nuestro quehacer diario. Entre los diferentes servicios que podemos instalar y habilitar en es un servicio FTP, tal y como indiqué en el artículo comentado anteriormente. En este artículo, comentaré como configurar un servicio FTP.

Configurar un servicio FTP en Ubuntu, Linux Mint, y derivados. Portada.

Configurar un servicio FTP

Herramientas gráficas para configurar un servicio FTP

Para la configuración de servidores FTP existen diversas herramientas gráficas.

El servidor vsftpd para sistemas Linux se distribuye sin herramienta gráfica de configuración. Sin embargo existen herramientas gráficas para administrar este servidor.

WEBMIN. Esta herramienta, que se puede utilizar para configurar otros servidores, puede incluir un módulo de administración y configuración del servidor vsftpd. Dado que este módulo está desarrollado por terceros, hay que descargar primero el software del módulo: vsftpd.tar.gz

Después de descargar el archivo, hay que instalar el módulo de WEBMIN.

Para ello, ejecuta webmin y accede al menú webmin > configuración webmin > modulos webmin > instalar desde archivo local, seleccionas el archivo e instala el módulo.

Como apunte, he de decir, que antes hay que instalar webmin, para ello nos dirigimos a la web www.webmin.com y descargamos la aplicación para instalarla en nuestro servidor.

Para administrar el servidor pure-ftpd de sistemas linux, se usa una herramienta específica de configuración y administración del servicio que se llama pureadmin.

Otras configuraciones

Configuración del servicio FTP

A lo largo de este tutorial, que consta de dos partes, has aprendido las principales directivas de configuración del servidor vsftpd.

En este apartado, vamos a ver como se configuran algunos aspectos de funcionamiento del servidor vsftpd, tanto editando el archivo de configuración /etc/vsftpd.conf como trabajando con la herramienta webmin.

A continuación, vamos a ver las directivas que habría que escribir en el archivo de configuración para realizar algunas configuraciones básicas y aplicables al funcionamiento general del servidor.

Si queremos, por ejemplo, que el servidor solo escuche a los clientes por su dirección IP 192.168.14.6:

listen_adress=192.168.14.6

Si queremos que las conexiones de datos en modo activo se establezcan por un puerto distinto al 20:

connect_from_port_20=NO
ftp_data_port=3033

Si queremos mostrar un mensaje informativo al iniciar un cliente una conexión:

ftpd_banner=Has accedido al servidor FTP de pepito

Si queremos que se registren en el archivo /var/lib/mensajes/vsftpd mensajes sobre las conexiones FTP realizadas:

xferlog_enable=YES
vsftpd_log_file=/var/lib/mensajes/vsftpd

Para establecer que el usuario anónimo se llama tiapepica en lugar de ftp:

ftp_username=tiapepica

Tipos de usuarios y accesos al servicio

El servidor vsftpd permite iniciar y acceder al servicio FTP desde cualquier cliente a tres tipos de usuarios:

  • Usuarios locales. Son usuarios con cuentas de usuario en el sistema servidor. Inician sesiones FTP identificándose con el mismo nombre de cuenta y contraseña que usarían en la máquina servidora para iniciar una sesión de sistema operativo. Cuando inician una sesión FTP, su directorio de trabajo remoto es su directorio personal en el sistema (/home/usuario).
  • Usuarios anónimos. Son nombres de usuarios que pueden iniciar sesiones FTP sin contraseña pero si identificándose con un nombre. Por defecto, vsftpd, admite dos usuarios anónimos llamados anonymous y ftp. El usuario anónimo ftp puede cambiarse en la configuración. Los usuarios anónimos, tienen como directorio remoto FTP el directorio /srv/ftp. **Este directorio puede cambiarse **con la directiva anon_root
  • Usuarios virtuales. Son usuarios que no tienen cuentas de usuario en el sistema servidor pero que pueden acceder al servicio FTP. Acceden todos a través de una misma cuenta de usuario del sistema. Cuando haya usuarios virtuales, se puede establecer una configuración de acceso para cada uno de ellos.

Ahora vamos a ver las directivas del archivo de configuración /etc/vsftpd.conf para configurar el acceso al servicio por los usuarios.

Si queremos que los usuarios anónimos no tengan acceso al servicio:

anonymous_enable=NO

Si queremos que los usuarios locales tengan acceso al servicio:

local_enable=YES

Si queremos que los usuarios virtuales no tengan acceso al servicio:

guest_enable=NO

Limitaciones en las conexiones

En el servidor vsftpd se pueden establecer varias limitaciones sobre las conexiones o sesiones establecidas por los clientes.

Puedes comprobar que** se pueden establecer varias sesiones simultáneas** en un mismo servidor, incluso desde una misma máquina cliente. Para** limitar a tres el máximo** de conexiones realizadas desde una misma dirección ip de cliente y que puedan tener conexiones simultáneas un máximo de diez clientes:

max_per_ip=3
max_clients=10

Para limitar la máxima velocidad de transferencia de los usuarios anónimos a 20 Kbytes/seg y de los usuarios locales a 50 Kbytes/seg:

anon_max_rate=20000
local_max_rate=50000

Para establecer que se desconecte a un cliente, si está inactivo durante seis minutos

idle_session_timeout=360

Durante la transferencia de un archivo grande, se transfieren grandes bloques de datos. Puede establecerse una limitación para que cuando haya inactividad excesiva durante una transferencia se cancele la transferencia. Para especificar que el tiempo máximo de inactividad durante una transferencia sea de dos minutos:

data_connection_timeout=120

Para establecer en 20 segundos el tiempo máximo que un cliente tiene para responder a una conexión activa:

connect_timeout=20

Conclusiones

Como has podido leer, configurar un servicio FTP es una operación relativamente sencilla, y que nos permite adaptarla totalmente a nuestras necesidades. De esta manera, podemos controlar fácilmente cualquier aspecto relacionado con este servicio y exprimirlo al máximo.

Si te ha gustado el artículo, apúntate y te mantendré actualizado sobre el que es el mejor sistema operativo. Te mostraré como mejorar tu entorno de trabajo y conseguir ser mucho mas productivo

Publicado en la categoría... Tutoriales
Etiquetado como... , , , ,
  • Celita Palacios

    Ya había yo intentado configurar el vsftp porque me lo había recomendado un amigo para hacer transferencias entre Linuxes sin usar samba… Gracias a tu tutorial entendí muy bien los tipos de usuario. ¡Gracias, Lorenzo!

    Supongo que para para la IP de escucha se puede poner una dirección de red con máscara, algo así como 192.168.0.1/0.0.0.255. Corrígeme por favor, si me equivoco.

    Ya en el pasado he querido usar vsftp para hacer backups de mi sitio web, que me lo recomendó un amigo. No lo he logrado porque mi compu tiene una dirección definida por el DHCP del proveedor de Internet. Traté de usar DynDNS pero nunca entendí bien cómo hacer las configuraciones de ambos sistemas que coincidieran. Ojalá algún día nos puedas guiar con eso, que sería una ayudadota. Otra idea sería usar rsync en lugar de vsftp, pero el problema es el mismo: cómo acceder a una compu dentro de una red local cuando la IP de la red es variable.

    • Lluís Espert Cuquerella

      Holaaaaaaaa!!! Me alegro que el tutorial te haya servido de ayuda!!! En principio, si lo que quieres es configurar vsftpd para hacer copias de seguridad, en una red local es fácil, pero para hacerlo de cualquier lado a un servidor o un sistema, necesitas o una ip fija, o bien configurar apache correctamente con unas dns para tener el servicio correctamente echo. Todo depende de lo que quieras hacer, si es para red local o no.

      De todas formas, si tienes dudas, te dejo mi usuario de skype y mi correo electrónico personal para resolverte dudas!!!

      Skype: lluisespertc
      Email: lluisespertc@gmail.com

      • Celita Palacios

        ¡Hola, Lluis!

        Perdona. Pensé que el que escribió el tutorial había sido Lorenzo, el *Atareao*. Mil gracias por responderme.

        Mira, yo trato de hacer lo siguiente:
        Tengo un servidor dedicado al que accedo vía SSH. Obvio, accedo usando una IP fija y un usuario/contraseña. Yo soy la administradora de ese servidor (desde actualizar paquetes hasta gestionar los diferentes servicios web). O sea, tengo acceso, dentro de ese servidor dedicado, a todo lo que requiera. pero ese servidor No está en mi red local, sino que lo gestiona un proveedor (diferente del de Internet) en otra ciudad diferente de donde vivo.

        Entonces, tengo mi compu (ordenador) en casa que accede a Internet a través de un DHCP con un proveedor comercial normalito (que me da buen ancho de banda para las subidas, pero no tengo IP fija, sino variable, dependiendo de la red a la que me asigne cada dos o tres días).

        Ahora bien, no me quedó claro cómo debo configurar apache con unas DNS para poder usar vsFTP o rsync. Si me ayudas con los pasos claros desde lo básico u obvio hasta ya tener el servicio en línea, te lo voy a agradecer. Puede ser con vsFTP o con rsync, que cualquiera parece ser muy bueno y tiene sus ventajas. Y una vez aprendido un método, ya extrapolo yo al otro.

        Solo te comento un poquito de mí. No soy una papa ignorante, pues soy una ingeniera en electrónica, pero ya algo madurita (me gradué en 1988, así que *ya llovió*, jajajajaja). Sí entiendo lo que me pudieras indicar, pero no tengo mucha experiencia en conexiones de redes así que no me imagino los pasos que te has saltado al mencionar lo de apache con las DNS configuradas de tal manera.

        Mi servidor es para alojar las páginas web de nuestra asociación de pacientes con enfermedades raras, así que lo que me ayudes va para una causa justa y de apoyo a la comunidad. Y claro, yo te lo agradeceré mucho.
        Bueno, mil gracias por tu amabilidad y paciencia.

        *Celia Palacios*
        http://www.pideundeseo.org
        http://www.femexer.org

        2017-07-29 5:30 GMT-05:00 Disqus :

        • Hola Celita,
          Para hacer lo que quieres necesitas configurar un servicio como https://www.noip.com/. Si no te aclaras para hacerlo, me lo dices, y escribo un tutorial de como hacerlo, ahora que gracias a Lluis hemos abierto una nueva categoría “Tutoriales”.
          Un saludo.

          • Celita Palacios

            Lorenzo, suena excelente lo de la categoría «Tutoriales». Espero contribuir pronto. Gracias.

          • Hola Celita,
            Pues a ver si te animas…. como es el amigo Lluis, ya ha escrito algunos tutoriales, y otros que están en cartera.
            Por mi parte quiero empezar una serie sobre LibreOffice productivo…
            Un saludo

      • Celita Palacios

        ¡Hola, Lluis!

        Perdona. Pensé que el que escribió el tutorial había sido Lorenzo, el *Atareao*. Mil gracias por responderme.

        Mira, yo trato de hacer lo siguiente:
        Tengo un servidor dedicado al que accedo vía SSH. Obvio, accedo usando una IP fija y un usuario/contraseña. Yo soy la administradora de ese servidor (desde actualizar paquetes hasta gestionar los diferentes servicios web). O sea, tengo acceso, dentro de ese servidor dedicado, a todo lo que requiera. pero ese servidor No está en mi red local, sino que lo gestiona un proveedor (diferente del de Internet) en otra ciudad diferente de donde vivo.

        Entonces, tengo mi compu (ordenador) en casa que accede a Internet a través de un DHCP con un proveedor comercial normalito (que me da buen

        Ahora bien, no me quedó claro cómo debo configurar apache con unas DNS y entonces poder usar vsFTP o rsync. Si me ayudas con los pasos claros desde lo básico u obvio hasta ya tener el servicio en línea, te lo voy a agradecer. No soy una papa ignorante, pues soy una ingeniera en electrónica, pero ya algo madurita (me gradué en 1988, así que *ya llovió*, jajajajaja). Sí entiendo lo que me pudieras indicar, pero no tengo mucha experiencia así que no me imagino los pasos que te has saltado.

        Mi servidor es para alojar las páginas web de nuestra asociación de pacientes con enfermedades raras, así que lo que me ayudes va para una causa justa y de apoyo a la comunidad. Y claro, yo te lo agradeceré mucho.
        Bueno, mil gracias por tu amabilidad y paciencia.

        *Celia Palacios*
        http://www.pideundeseo.org
        http://www.femexer.org

        2017-07-29 5:30 GMT-05:00 Disqus :