Install and configure vsftpd on Centos step by step

The vsftpd stands for “Very Secure FTP Daemon”. it's not simply secure because the name suggests however conjointly delivers wonderful performance by overwhelming less memory. The tutorial conjointly teaches you the way to piece by adding ftp users and lockup the directory to individual users.
You can install vsftpd on Ubuntu / Debian, CentOS /Fedora and RHEL UNIX.

Installing vsftpd on CentOS / chapeau
yum install vsftpd

How to piece vsftpd:
Now that you’ve put in vsftpd, follow this procedure to piece it. These steps applies for each the UNIX variants.
Before you start, stop the vsftpd by typing:
service vsftpd stop

Edit the vsftp.conf
vi /etc/vsftpd/vsftpd.conf

Make the subsequent changes:
We don’t need anonymous login:
Enable native users:
The ftpuser ought to be able to write data:
Port twenty ought to turned off, makes vsftpd run less privileged:
Chroot everyone:
set umask to 022 to form certain that every one the files (644) and folders (755) you transfer get the correct permissions.
Now that basic configuration is complete, currently allow us to begin with lockup / securing a directory to user.
useradd -d /var/www/path/to/your/dir -s /usr/sbin/nologin ftpuser
Setup a positive identification for the user:
su passwd ftpuser
In order to change the ftpuser scan and write the info in your home dir, modification the permission and take ownership:
chown -R ftpuser /var/www/path/to/your/dir
chmod 775 /var/www/path/to/your/dir

Create userlist file and add the user:
vi /etc/vsftpd/vsftpd.userlist

and add the user:
save the file and open the vsftp.conf file again:
vi /etc/vsftpd.conf
Add the subsequent lines at the top of the file and save it:
# the list of users to grant access
# this list is on
# it's not an inventory of users to deny ftp access
After finishing of these procedures it's virtually able to use it, provides it a strive however you'll get a five hundred OOPS permission denied error. to mend it you wish to feature a nologin to the shell set.
vi /etc/shells
The file ought to appear as if this:
Add this line at the end:
Now produce a usergroup and add the ftpuser to it:
addgroup ftpusers
usermod -Gftpusers ftpuser

Now begin the vsftpd:
service vsftpd begin


  1. This tutorial is all kinds of f'd up... 2 /vsftpd/ subdir omissions at critical points above and there is no addgroup command in CentOS 6.3

  2. run this
    It will work fine
    Create a FTP user group. eg: ftpaccounts
    #/usr/sbin/groupadd ftpaccounts

    1 /usr/sbin/adduser -g ftpaccounts -d /home/user/ testuser



    2 passwd testuser

    3 chown testuser:ftpaccounts /home/user

    4 Read/Write access to testuser

    chmod 775 /home/user

    5 Restart the vsftpd service

    #/etc/init.d/vsftpd restart