Lo que necesitas es lo que se llama un "FTP Restringido" o "Chrooted FTP". Un FTP que protege al sistema del usuario, de forma que sólo pueda ver los ficheros de su directorio y subdirectorios, pero no da acceso al resto del sistema, por motivos de seguridad y facilidad para el usuario.
A continuación, te explico como configurar un FTP Restringido en un Red Hat 6.2 usando como servidor web el que viene en la distribución, o sea, WuFTPd.
1.- Asegurate de que tienes todos los paquetes rpm del servidor FTP correctamente instalados:
[root@bankhacker /root]# rpm -qa | grep wu-ftp
wu-ftpd-2.6.0-14.6x
2.- Si no lo tuvieras instalado, buscas el rpm con:
[root@bankhacker /root]# locate wu-ftp | grep rpm
/home/install/distribuciones/redhat62/RedHat/RPMS/wu-ftpd-2.6.0-3.i386.rpm
/home/install/sistema/wu-ftpd-2.6.0-14.6x.i386.rpm
Y lo instalas
rpm -i /home/install/distribuciones/redhat62/RedHat/RPMS/wu-ftpd-2.6.0-3.i386.rpm
o mejor, la versión segura:
rpm -i /home/install/sistema/wu-ftpd-2.6.0-14.6x.i386.rpm
3.- Defines un usuario del sistema que disponga de acceso FTP:
vi /etc/passwd
usuariopruebas:claveencriptada:500:100:Usuario de FTP Restringido:/home/usuariopruebas:/bin/true
4.- Verificas que el shell especial /bin/true está activo entre los shells del sistema:
vi /etc/shells
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/bash2
/bin/tcsh
/bin/csh
/bin/zsh
/bin/false
/bin/true
Si no está, lo añades.
5.- Colocas los ficheros necesarios en /home/usuariopruebas para que pueda acceder por FTP restringido:
cd /home/usuariopruebas/
mkdir bin
cd bin
wget http://www.stanford.edu/group/itss-ccs/security/binaries/linux/redhat/ls
cd /home/usuariopruebas/
chown root:root bin -R
chmod 711 bin -R
Como ves se requiere un ls especial, que se puede descargar de
http://www.stanford.edu/group/itss-ccs/security/binaries/linux/redhat/ls.
Es un ls que no depende de librerías externas, ya que no van a estar accesibles, puesto que va a ser ejecutado en un entorno chrooted.
6.- Por último configura /etc/ftpaccess como sigue:
class all real,guest,anonymous *
email root@localhost
loginfails 5
readme README* login
readme README* cwd=*
message /welcome.msg login
message .message cwd=*
compress yes all
tar yes all
chmod no anonymous
delete no anonymous
Overwrite no anonymous
Rename no anonymous
log transfers anonymous, real inbound, outbound
shutdown /etc/shutmsg
passwd-check rfc822 warn
guestgroup users
7.- Y ya está. Pruébalo. Suerte!
Referencia:
http://www.wu-ftpd.org/HOWTO/guest.HOWTOReferencia:
http://www.google.com/search?q=guestgroup+wuftpd+bin%2Fls+static&hl=es&safe=off&lr=
Referencia:
http://www.devshed.com/Server_Side/Administration/wuftpd/