Servidor vsftpd oscar cortez

6

Click here to load reader

Transcript of Servidor vsftpd oscar cortez

Page 1: Servidor vsftpd oscar cortez

Un servidor de ficheros (servidor FTP) puede ser muy útil a la hora de centralizar datos en nuestra red, compartir con otros e incluso recibir datos de cualquier usuario autorizado para hacerlo. Montar un servidor ftp es muy sencillo gracias a VSFTPD, un servidor rápido, ligero, seguro y de fácil configuración.

Entre sus características más interesantes encontramos:

1. Servidor rápido, estable y seguro2. Configuración sencilla3. Soporte de usuarios anónimos, registrados y virtuales4. Soporte para virtual hosts5. Ejecución independiente o mediante (x)inetd6. Soporte IPv6 y SSL7. Límites por usuario, conexión y ancho de banda

• Instalación Gracias a que VSFTPD está presente en los repositorios oficiales de Ubuntu su instalación será tan sencilla como ejecutar la orden:$ sudo apt-get install vsftpd

El propio proceso de instalación se encarga de crear el usuario no privilegiado ftp, crear el directorio /home/ftp (donde colocaremos los archivos disponibles para el acceso anónimo) y arrancar el servicio.

Nota: En caso de tener un firewall instalado no olvides que deberás abrir el puerto 21, además si conectas a internet a través de un router y pretendes dar acceso al servidor de ficheros desde el exterior deberás redireccionar el puerto 21 en la configuración del router (revisa la documentación de tu modelo de router si no sabes como hacerlo).

Podemos comprobar que el proceso ha funcionado apuntando nuestro navegador o cliente de ftp favorito a la dirección

ftp://localhost o ftp://127.0.0.1En caso de acceder desde un ordenador remoto deberemos usar nuestra IP privada (si conectamos desde dentro de una red local) o nuestra IP pública (si conectamos desde Internet):

Page 2: Servidor vsftpd oscar cortez

Firefox conectado a nuestro servidor de ftp

Nota: no muestra ningún archivo porque aun no he colocado nada en el directorio /home/ftp

• Configuración La configuración, muy sencilla, se realiza a través de un único archivo de texto plano: /etc/vsftpd.conf. Para realizar cualquier cambio en la configuración editaremos este archivo con la orden:$ sudo nano /etc/vsftpd.conf

Y una vez hechos los cambios reiniciaremos el servicio con la orden:$ sudo /etc/init.d/vsftpd restart

Veamos ahora como cambiar la configuración por defecto para dejar el servicio a nuestro gusto con algunos ejemplos.

• Acceso anónimo El acceso anónimo permitirá a cualquier persona que conozca nuestra dirección IP conectarse al servicio y navegar por el directorio /home/ftp. Este modo es idoneo para compartir archivos que no necesitan una especial protección.

Para permitir el acceso anónimo editaremos el archivo de configuración y nos aseguraremos de que contiene la linea:anonymous_enable=YES

Para denegar el acceso anónimo editaremos el archivo de configuración y nos aseguraremos de que contiene la linea:anonymous_enable=NO

Page 3: Servidor vsftpd oscar cortez

• Acceso privado El acceso privado permite establer nombres de usuario y contraseña para acceder al servicio, cada usuarió podrá acceder tan solo a sus propios archivos. Este es un sistema idóneo para organizar la información por usuarios y otorgar un cierto grado de seguridad a los archivos.

Para permitir el acceso privado editaremos el archivo de configuración y nos aseguraremos de que contiene la linea:local_enable=YES

Para denegar el acceso privado editaremos el archivo de configuración y nos aseguraremos de que contiene la linea:local_enable=NO

Una vez activado el acceso privado apuntaremos nuestro navegador o cliente de ftp a la dirección:

• ftp://usuario:clave@localhost o ftp://usuario:[email protected] caso de acceder desde un ordenador remoto deberemos usar nuestra IP privada (si conectamos desde dentro de una red local) o nuestra IP pública (si conectamos desde Internet):

Firefox mostrando el contenido privado de un usuario local

Page 4: Servidor vsftpd oscar cortez

• Seguridad Aunque la configuración por defecto es bastante segura podemos afinar un poco más este aspecto si nuestros datos lo requieren.

Para evitar que los usuarios registrados puedan salir de su directorio $HOME y navegar así por todo el sistema de ficheros editaremos el archivo de configuración y nos aseguramos de que contiene la linea:chroot_local_user=YES

Limitar el numero máximo de conexiones simultaneas (para evitar ataques DoS) editaremos el archivo de configuración y nos aseguramos de que contiene las lineas:listen=YESmax_clients=10

Impedir que los usuarios puedan enviar archivos a nuestro servidor (opcion activada por defecto), editaremos el archivo de configuración y nos aseguramos de que contiene la linea:write_enable=NO

Cambiar el puerto por el que escucha el servicio puede ayudar a evitar ataques automatizados e intrusos poco experimentados, para cambiarlo y usar por ejemplo el puerto 50 editamos el archivo de configuración y añadimos:listen_port=50

• Modo de ejecución Podemos elegir ejecutar el servidor de ficheros como un servicio del sistema controlado desde el arranque (modo Standalone, responde más rápido a las peticiones) o que se inicie automáticamente en el momento en que se recibe una petición (modo inetd, libera más recursos en caso de no usarse el servicio)

Para establecer el servicio en modo Standalone (recomendado) editaremos el archivo de configuración y nos aseguramos de que contiene la linea:listen=YES

Para establecer el servicio en modo xinetd comentaremos la linea anterior de manera que quede así:#listen=YES

Y crearemos el archivo de configuración de xinetd para el servicio de ftp /etc/vsftpd.xinetd con este contenido:

# Configuración para el servicio FTPservice ftp{disable = nosocket_type = streamwait = nouser = rootserver = /usr/sbin/vsftpdper_source = 5

Page 5: Servidor vsftpd oscar cortez

instances = 200no_access = 192.168.1.3banner_fail = /etc/vsftpd.busy_bannerlog_on_success += PID HOST DURATIONlog_on_failure += HOST}# Fin del servicio FTP

• En nuestro gadet Android podemos instalar

Page 6: Servidor vsftpd oscar cortez

Tambien se puede instalar: