Banner 1

Servidor ftp Seguro (vsftpd)

Instalación del servidor ftp:
Código:

apt-get install vsftpd


Instalación del cliente:
Código:

apt-get install ftp


Editamos el archivo de configuración
Código:

vim /etc/vsftpd.conf


Adentro tendremos cosas como estas:

Esta linea debe estar descomentada para que este el puerto escuchando:
Citar
listen=YES

Usuario anonimo (login anonymous y sin password)
Citar
anonymous_enable=YES

Descomentar esta línea para permitir loguearse con usuarios locales del servidor:
Citar
local_enable=YES

Descomentar lo siguiente para que pueda ejecutar comandos de escritura:
Citar
write_enable=YES

Luego de editar el archivo según nuestra conveniencia, reiniciamos el demonio:
Código:

/etc/init.d/vsftpd


Nos conectamos del pc cliente ejecutando el comando:
Código:

ftp ip_servidor_vsftp


Nos aparecerá lo siguiente:
Código:

220 (vsFTPd 2.0.5)
Name (10.10.121.131:root):


Si quisieramos acceder como root, cosa que no es conveniente le damos enter e ingresamos el passwor de root, tengan en cuenta que el FTP NO SE UN PROTOCOLO SEGURO YA QUE LOS DATOS NO VIAJAN ENCRIPTADOS Y CUALQUIERA CON UN SNIFFER PODRIA OBTENER NUESTRO PASSWORD.

Existe una solución a esto, es el sftp, pero no nos vayamos de tema, volviendo al ftp, ingresaremos otro usuario que no sea el de root y su password correspondiente:

Código:

ftp 192.168.1.2
Connected to 192.168.1.2
220 (vsFTPd 2.0.5)
Name (192.168.1.2:root): hat
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>



Nos queda un prompt para ejecutar comandos clientes de ftp, si quieren conocer todos los comandos simplemente ingresan un signo de ayuda --> ? y nos mostrarán todos los comandos disponibles:

Código:

ftp> ?
Commands may be abbreviated. Commands are:

! debug mdir qc send
$ dir mget sendport site
account disconnect mkdir put size
append exit mls pwd status
ascii form mode quit struct
bell get modtime quote system
binary glob mput recv sunique
bye hash newer reget tenex
case help nmap rstatus tick
cd idle nlist rhelp trace
cdup image ntrans rename type
chmod lcd open reset user
close ls prompt restart umask
cr macdef passive rmdir verbose
delete mdelete proxy runique ?
ftp>


Bueno, ahora copiaremos un archivo del servidor ftp al cliente:

Con el comando ls veremos el contenido de los archivos que posee en la ruta actual el servidor:
Código:

[ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 10 Mar 20 20:32 pepe
226 Directory send OK.
ftp>
/code]

[color=orange]Para copiar el archivo pepe del servidor ftp hacemos un get:[/color]
[code]ftp> get
(remote-file) pepe
(local-file) cato
local: cato remote: pepe
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for pepe (10 bytes).
226 File send OK.
10 bytes received in 0.00 secs (16.4 kB/s)
ftp>

Indicamos la ruta del archivo y el nombre origen y finalmente le especificamos cato que sera el archivo en nuestro cliente.

Salimos del ftp:
Código:

ftp>bye
221 Goodbye.


Verificamos que se copio el archivo pepe del pc remoto a un archivo en la posición actual llamado cato:
Código:

root#ls -l cato
-rw-r--r-- 1 root root 10 2008-03-20 17:57 cato


Bueno espero que les sirva y entiendan mi explicación, otro dia explicaré lo del sftp..[/code]

Fuente: http://redes-seguridad.blogspot.com/2008/03/servidor-ftp-seguro-vsftpd.html

No hay comentarios:

Powered by Bad Robot
Helped by Blackubay