Chroot Vsftpd with non-system users

来源:百度文库 编辑:神马文学网 时间:2024/04/29 05:32:09
A quick and easy way to setup a chroot Vsftpd with non-system users install.
Where MY_FTP_User would be your own personal non root user account‘s home directory and My_FTP_Password="Your_FTP_Password".
yum -y install vsftpd db4-utils
#!/bin/sh# LSN VSFTPD chroot install# Version 1.0# August 1, 2005# Fire Eater # Released under the GPL License- http://www.fsf.org/licensing/licenses/gpl.txt###############################################################################IP_Address="`( /sbin/ifconfig | head -2 | tail -1 | awk ‘{ print $2; }‘ | tr --delete [a-z]:)`"My_FTP_User="My_Users_HomeDIR"My_FTP_Password="Your_FTP_Password"echo ""echo "Setting up Vsftpd with non-system user logins"echo ""##mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.origcat < /etc/vsftpd/vsftpd.confanon_world_readable_only=NOanonymous_enable=NOchroot_local_user=YESguest_enable=NOguest_username=ftphide_ids=YESlisten=YESlisten_address=$IP_Addresslocal_enable=YESmax_clients=100max_per_ip=2nopriv_user=ftppam_service_name=ftppasv_max_port=65535pasv_min_port=64000session_support=NOuse_localtime=YESuser_config_dir=/etc/vsftpd/usersuserlist_enable=YESuserlist_file=/etc/vsftpd/denied_usersxferlog_enable=YESanon_umask=0027local_umask=022async_abor_enable=YESconnect_from_port_20=YESdirlist_enable=NOdownload_enable=NOEOFVSFTPDcat /etc/passwd | cut -d ":" -f 1 | sort > /etc/vsftpd/denied_users; mkdir /etc/vsftpd/userssed -e ‘/‘$My_FTP_User‘/d‘ < /etc/vsftpd/denied_users > /etc/vsftpd/denied_users.tmpmv /etc/vsftpd/denied_users.tmp /etc/vsftpd/denied_userschmod 644 /etc/vsftpd/denied_userscat < /etc/pam.d/ftpauth required /lib/security/pam_userdb.so db=/etc/vsftpd/accountsaccount required /lib/security/pam_userdb.so db=/etc/vsftpd/accountsEOFPAMFTPcat < /etc/vsftpd/users/$My_FTP_Userdirlist_enable=YESdownload_enable=YESlocal_root=/home/$My_FTP_User/public_htmlwrite_enable=YESEOFVSFTPUecho $My_FTP_User > /etc/vsftpd/accounts.tmpecho $My_FTP_Password >> /etc/vsftpd/accounts.tmp/usr/bin/db_load -T -t hash -f /etc/vsftpd/accounts.tmp /etc/vsftpd/accounts.dbchmod 600 /etc/vsftpd/accounts.db#echo "Done....."#
Add new ftp accounts
#!/bin/sh# Vsftpd adduser# Fire Eater # August 1, 2005# Requires Server installation using the LSN Installer# Released under the GPL License- http://www.fsf.org/licensing/licenses/gpl.txt###############################################################################Template_Dir="/etc/Templates"################################################################################ This option adds a ftp user clear echo "Now Adding FTP User" echo -n "Username (lowercase): " read FTP_USER_NAME echo -n "Password (case sensitive): " read FTP_USER_Passwordcp $Template_Dir/FTP_User.tpl $Template_Dir/FTP_User.tpl.1perl -pi -e "s/FTP_USER_NAME/$FTP_USER_NAME/g;" $Template_Dir/FTP_User.tpl.1cat $Template_Dir/FTP_User.tpl.1 >> /etc/vsftpd/users/$FTP_USER_NAMErm -f $Template_Dir/FTP_User.tpl.1echo $FTP_USER_NAME >> /etc/vsftpd/accounts.tmp; echo $FTP_USER_Password >>/etc/vsftpd/accounts.tmprm -f /etc/vsftpd/accounts.dbdb_load -T -t hash -f /etc/vsftpd/accounts.tmp /etc/vsftpd/accounts.dbchmod 600 /etc/vsftpd/accounts.db
FTP_User.tpl template
dirlist_enable=YESdownload_enable=YESlocal_root=/home/FTP_USER_NAME/public_htmlwrite_enable=YES
HowTos/Chroot Vsftpd with non-system users (2007-05-17 12:46:44由DanielDeKok编辑)
from: http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users