En esta guia explicare como montar un ftp con vsftpd con autentificacion en Debian etch, lo que nos servira para montar ftp privados para alojamientos de sitios webs...
Lo primero es instalar el vsftpd...
apt-get install vsftpd
Despues creamos 2 archivos en /etc/
touch vsftpd.chroot_list
touch vsftpd.user_list
En ellos es donde vamos a escribir los usuarios que deseamos
que inicien por el ftp...
Ahora le mostrare un script el cual le dara la posibilidad de crear un usuario y al mismo tiempo crear la carpeta destino dentro de /home/www/portalweb/webmaster y asi sucesivamente
para cada sitio web...
#!/bin/bash
/bin/echo ====== s_adminftp ======
case "$2" in
-add)
if [ `grep ^$1: /etc/passwd` ];
then
/bin/echo "El usuario ya existe"
/bin/echo =============================================
exit
fi
sudo /usr/sbin/groupadd $1
sudo /usr/sbin/useradd -g $1 -c $1 -d /home/www/portalweb/$1 -s /bin/bash $1
sudo /bin/mkdir /home/www/portalweb/$1
sudo /bin/chown -R $1:$1 /home/www/portalweb/$1
sudo /bin/chmod -R 664 /home/www/portalweb/$1
sudo /usr/sbin/usermod -a -G $1 $1
sudo passwd $1
echo $1 >> /etc/vsftpd.chroot_list
echo $1 >> /etc/vsftpd.user_list
;;
-del)
if ! [ `grep ^$1: /etc/passwd` ];
then
/bin/echo "El usuario no existe"
/bin/echo =============================================
exit
fi
sudo /usr/sbin/groupdel $1
sudo /usr/sbin/userdel $1
sudo /bin/rm -rf /home/www/portalweb/$1
grep -v $1 /etc/vsftpd.chroot_list > /etc/vsftpd.chroot_list
grep -v $1 /etc/vsftpd.user_list > /etc/vsftpd.user_list
;;
*)
echo ====== AdminFTP-VSFTPD-SKY =======
echo .
echo Uso: s_adminftp usuario -add
echo .
echo ===============================
;;
esac
ya despues solo nos que hacer 2 cosas, ir a los archivos
vsftpd.chroot_list y vsftpd.user_list para pegar los usuarios
creados
ej:
s_adminftp webmaster -add
s_adminftp adminweb -add
ahora pegamos los usuarios dentro de vsftpd.chroot_list
webmaster
adminweb
y dentro de vsftpd.user_list, exactamente los mismo y hacia abajo
webmaster
adminweb
y configurar el conf del vsftpd para completar
Ej del vsftpd.conf
# Example config file /etc/vsftpd.conf
#
listen=YES
#listen_ipv6=YES
#anonymous_enable=YES
local_enable=YES
write_enable=YES
#local_umask=022
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#chown_uploads=YES
#chown_username=whoever
#xferlog_file=/var/log/vsftpd.log
#xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Bienvenid@ al FTP.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
Solo nos que reiniciar el servicio
invoke-rc.d vsftpd restart
Suerte... :)
Comentarios
Puedes ampliar un poco mas
Puedes ampliar un poco mas la creacion de usuarios y passwords en la parte
[quote]vsftpd.chroot_list y vsftpd.user_list para pegar los usuarios
creados[/quote]
********
Salu2 and Have Fun
Re:
OK hermano, si no entiendes algo me lo dices para yo arreglarlo...
Salud2s...
______________________
!!!AdminRed_Debian!!!
______________________
!!!AdminRed_Debian!!!