HOWTO Setup vsftpd
First, get the latest version in your portage tree:
server / # emerge --sync
Install vstfpd:
server / # emerge -v vsftpd
Copy the example configuration file as your template:
server / # cp /etc/vsftpd/vsftpd.conf.example /etc/vsftpd/vsftpd.conf
Edit the configuration file with these additional switches:
server / # vi /etc/vsftpd/vsftpd.conf
file_open_mode=0666
local_umask=0022
virtual_use_local_privs=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
idle_session_timeout=600
ascii_upload_enable=NO
ascii_download_enable=NO
tcp_wrappers=YES
data_connection_timeout=120
userlist_enable=YES
userlist_deny=NO
Enter user names who will be permitted to access the site:
server / # vi /etc/vsftpd/user_list
Populate this file with the same values:
server / # vi /etc/vsftpd/vsftpd.ftpusers
Start vsftpd at boot:
server / # rc-update vsftpd add default
Start vsftpd:
server / # /etc/init.d/vsftpd start
- check for the presence of home directories, which vsftp uses as default.
- no login is allowed to a user who does not have a home directory stipulated.
Set Up User(s) For Web directory FTP Access
Edit the home directory path of the user:
server / # vi /etc/passwd
UserName:x:1001:1002::/var/www/www.web.iat.sfu.ca/:/bin/bash
Add a group to allow access to web directory:
server / # groupadd ftpaccess
Add user name to web directory group
server / # usermod -a -G ftpaccess UserName
Set appropriate rights to the web directory:
server / # chmod -R 775 www.web.iat.sfu.ca/
Recursively change the group of the web directory:
server / # chgrp -R ftpaccess www.web.iat.sfu.ca/
Stop and start Apache:
server / # /etc/init.d/apache stop start
Stop and start vsftpd:
server / # /etc/init.d/vsftpd stop start
Troubleshooting Commands
This command will display your vsftpd configuation:
server / # grep -vE "^#" /etc/vsftpd/*