Sei sulla pagina 1di 3

sbado, 21 de julio de 2012

Instalar y configurar ProFTPD en Ubuntu


Este pequeo tutorial nos va a servir para instalar y configurar un FTP en Debian
Squeeze aunque debera funcionar tambin en nuestro querido y popular Ubuntu.
Instalacin:
Sencilla, a traves de nuestro amado apt-get:
sudo apt-get install proftpd
Creacin de usuario para FTP:
El ProFTPd nos crea un usuario por defecto llamado, justamente, ftp lo cual a no
sotros nos da asco y no lo usaremos. Vamos a crear uno un poco menos obvio. Para
ello escribimos:
sudo adduser usuarioftp
Est bien, est bien... tambin es obvio, pero no tanto =)
De mas esta decir que pueden elegir el nombre que quieran. Despus de ingresar esa
lnea nos pedir que le asignemos una pass y una serie de datos como Nombre Complet
o, etc que no hace falta ni que sean reales ni completar, podemos darle todoENTE
R.
Cambiar password de usuario:
Si algun da, por alguna razn, necesitamos darle los datos de acceso a alguien tene
mos despus la posibilidad de modificar la contrasea de nuestro usuarioftp. Para ha
cerlo escribimos en una terminal:
sudo passwd usuarioftp
A continuacin editamos el archivo /etc/passwd y vemos que /home tiene asignado nu
estro usuario. Aparecer algo as:
usuarfioftp:x:1002:1002:Usuario FTP,,,:/home/usuarioftp:/bin/false
Ah nos indica que nuestra home ser /home/usuarioftp (la x es nuestra contrasea que
no aparece por estar encriptada). Debemos asegurarnos que al final diga /bin/fal
se en lugar de /bin/bash. En caso de que aparezca esto ltimo debemos cambiarlo.
Si fue necesario cambiarlo debemos verificar en /etc/shells que aparezca la shel
l falsa /bin/false. Escribimos en una terminal:
sudo nano /etc/shells
Y si en ningn lado aparece /bin/false lo agregamos al final.
Ahora procedemos a darle los permisos a nuestra carpeta. Escribimos en terminal:
chown -R usuarioftp /home/usuarioftp/
El parmetro -R es para hacer recursivo el comando, con lo cual si vamos a crear c
arpetas dentro de /home/usuarioftp nos conviene primero crear las carpetas y des
pus ejecutar la lnea.
Para evitar que los usuario se logueen por FTP editamos /etc/ftpusers:
sudo nano /etc/ftpusers
Seguramente ya figuran algunos usuarios, podemos aadir clsicos como root,anonymous
y ftp. Todos los usuarios que figuren en este archivo NO podrn loguearse. Mas ad
elante explico una forma de denegar el acceso de todos excepto del usuarioftp.
Para ver el log de Proftpd:
sudo nano /var/log/proftpd/proftpd.log
Aqu nos aparecern todos los intentos de login.
Ahora procedemos a la configuracin del FTP para ello editamos el archivoproftpd.c
onf:
sudo nano /etc/proftpd/proftpd.conf
Vamos a configurar algunas cosas esenciales. A continuacin vemos las lineas de es
e archivo:
ServerName "Nombre_del_servidor_ftp" #De mas est decir que ac va el nombre del
servidor =)
ServerType standalone/inetd #Nosotros usaremos standalone.
DeferWelcome off/on #Elegimos off para no mostrar mensaje de entrada.
MultilineRFC2228 on/off #Elegimos on, esto har a nuestro ftp compatible con c
asi todos los clientes ftp.
DefaultServer on/off #Elegimos on, toma las opciones default de un serv
idor ftp.
ShowSymlinks on/off #Elegimos on, podremos ver los links, si el link
esta fuera de nuestro home no tendremos acceso a l.
TimeoutNoTransfer <numero> #Nmero mximo de segundos que puede estar un cliente
en el ftp sin transferir nada. Por defecto 600 seg.
TimeoutStalled <numero> #Nmero mximo de segundos que puede estar el cliente-
servidor sin recibir informacin de una transferencia. Por defecto 600 seg.
TimeoutIdle <numero> #Nmero mximo de segundos que puede estar un usuario
sin hacer nada. Por defecto 1200 seg.
DenyFilter \*.*/ #Es un filtro de proteccin para el ProFTPd.
DefaultRoot /home/usuarioftp #Para mi, vital. Ac le decimos a que carpeta va
a acceder. Si no lo configuramos accede a todas, si configuramos por ejemplo /ho
me accede a todos los /home. En este caso tendr acceso solo a su /home.
Port <numero> #Ac va el puerto al que conecta nuestro servidor, por defecto el 2
1.
MaxInstances <numero> #Cantidad mxima de conexiones al FTP que se pueden
hacer a la vez.
AllowOverwrite on #Elegimos on para sobreescribir ficheros existentes.
TransferLog /var/log/proftpd/xferlog #Loguea las transferencias que se realicen
en el FTP.
SystemLog /var/log/proftpd/proftpd.log #Se guardan los intentos de login.
Por ltimo, y como indique anteriormente, si queremos denegar el acceso de todos,
excepto del usuario usuarioftp aadimos esto al final del archivo de configuracin:
<Limit LOGIN> #Limitamos a quienes intentan loguearse en el FTP.
AllowUser usuarioftp #Allow es para indicar a quienes vamos a aceptar.
DenyAll #Deny es para indicar a quienes denegamos el ingreso. Podemos poner l
os usuarios y separarlos por comas o, como en este caso, podemos elegir DenyAll
e impedir el acceso de todos excepto del que figura en Allow.
</Limit>
RequireValidShell off
Administrar el FTP:
Tenemos 2 comandos que nos sern de gran utilidad:
ftptop
ftpwho
ftptop nos indica en tiempo real quienes estn conectados a nuestro FTP. ftpwhonos
sirve para ver en un momento determinado quien est conectado.
Para cerrar el servidor y mostrar un mensaje con el motivo por el cual se encuen
tra inaccesible podemos usar la herramienta ftpshut:
sudo ftpshut now "En este momento se estn realizando tareas de mantenimiento, dis
culpe las molestias"
Despus debern ejecutar ftpshut -R para hacerlo accesible nuevamente.
Por ltimo, para reiniciar el servicio ProFTPd:
sudo /etc/init.d/proftpd restart
Si queremos detenerlo debemos escribir stop en lugar de restart.
Eso fue todo por hoy, espero que les haya sido til =)

Potrebbero piacerti anche