Instalación y configurar servidor FTP "vsftpd" en Debian

Iniciado por puntoCL, Mayo 25, 2018, 02:53:08 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.


wikipedia: Protocolo de transferencia de archivos (en inglés File Transfer Protocol o FTP). Es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP, basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.

Servidor FTP: Un servidor FTP es un programa especial que se ejecuta en un equipo servidor normalmente conectado a Internet (aunque puede estar conectado a otros tipos de redes, LAN, MAN, etc.). Su función es permitir el intercambio de datos entre diferentes servidores/ordenadores.

vsftpd: o daemon FTP muy seguro, es un servidor FTP para sistemas tipo Unix, incluido Linux. Está licenciado bajo la Licencia Pública General de GNU. Es compatible con IPv6 y SSL.





Voy a explicar cómo instalar y configurar un servidor FTP en una máquina Debian.

Primero tenemos que instalar el paquete vsftpd y para eso escribimos en la consola lo siguiente:
Código: php
apt-get install vsftpd


Lo segundo es configurar el vsftpd que está en /etc/vsftpd.conf y descomentamos las opciones siguientes quitado el gato "#"
Código: php
nano /etc/vsftpd.conf


Entonces buscaremos las siguiente opciones.

write_enable=YES  || En esta sirve para que los usuarios tenga permiso de escritura en otras palabras pueda subir archivos.

chroot_local_users=YES || Que los usuarios estén enjaulados en su directorio "carpeta" FTP - /home

chroot_list_enable=YES || Que los usuarios estén enjaulados en su directorio "carpeta" FTP - /home

chroot_list_file=/etc/vsftpd.chroot_list  || Opción para enjaular a los usuarios en su carpeta /home y para esto tenemos que agregar una opcion para mas allow_writeable_chroot=YES para dar el permiso de escritura.

En la opción chroot_list_file=/etc/vsftpd.chroot_list nos indica una ruta"/etc/vsftpd.chroot_list" de un archivo que no esta creada entonces como tercer paso es crear el archivo
Código: php
nano /etc/vsftpd.chroot_list

en este archivo tenemos que colocar en cada linea los usuario que NO queremos que sean enjaulados. Osea si escribimos un usuario ejemplo admin entonces cuando el usuario admin se conecte por ftp al servidor tenga el permiso de ver todas la carpeta del servidor y no solo del usuario en si, que seria enjaulado.

y cuando terminemos de configurar tenemos que resetear el servicio vsftpd y para eso en la consola escribimos:
Código: php
service vsftpd restart


Para parar el servicio
Código: php
service vsftpd stop


Para activar el servicio
Código: php
service vsftpd start


Para ver el estado del servicio
Código: php
service vsftpd status





Y lo ultimo como crear usuarios para el servicio FTP.

Código: php
useradd usuario1

dejar en claro que el "usuario1" lo puse a modo ejemplo usted puede colocar cualquier nombre a su gusto, claro si usted esta trabajando y su usuario se llama juanito perez colocan useradd jperez como ejemplo.

A este usuario le damos una contraseña.
Código: php
passwd 1234

el 1234 es la contraseña

vamos a crear su carpeta en home.
Código: php
mkdir /home/usuario1


Ahora asignaremos el usuario a la carperta que creamos en home.
Código: php
usermod -d home/usuario1 usuario1


y ahora tenemos que asignar el usuario al grupo de FTP.
Código: php
usermod -g ftp usuario1


Tenemos que cambiar el propietario del directorio del usuario que creamos.
Código: php
chown usuario1/home/usuario1


y cambiar el grupo a FTP
Código: php
chgrp ftp /home/usuario1


El problema de acá es que estamos creando usuario para el sistema y nuestra idea es crear usuario para que solo se ocupen el servicio FTP y nada mas para eso lo que tenemos que hacer es:
Código: php
usermod -s /bind/ftp usuario1


entonces el usuario usuario1 no se va a conectar al servidor por que no es usuario de sistema solo es usuario del servicio FTP.

Y eso seria todos Saludos  :P





para conectarme de manera remota, como sería?
ice | Maggot | No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta