Vsftpd (Very Secure File Transfer Protocol Daemon) is one of the default FTP servers in Unix, Linux, CentOS, NimbleX, Fedora platform. It is licensed under the GNU General Public License and supports SSL and IPv6 technologies. It is one of the oldest and most used standard network protocols which is commonly used for uploading and downloading files between two systems over the network. Vsftpd is a secure, stable and fast FTP server which can minimise various possible chances of the malicious users for gaining access to the server using FTP exploits. There are various primary features of vsftpd such as stability, security and performance and moreover it also includes some additional attractive features as well such as a small system footprint, it has the ability to manage virtual users, bandwidth throttling for more site control.
Working of FTP Server
The FTP server works with client-server architecture for communication and transfer file between two systems. FTP is a stateful protocol which provides open connection during client-server communication. There are various commands that can be used for sending and receiving files. During FTP session there are mainly two types of FTP connections are initiated such as Data connection and control connection which is also called a command connection. Whenever, the user establishes an FTP connection with the server the TCP port 21 (FTP port) opens so that user login credentials can be sent, and this connection is called control connection. And whenever a user sends a file to server a data connection is started. There are mainly two types of data connections that are discussed below and when the FTP client starts a transfer then their user gets an option which controls whether the user wants passive FTP connection and Active connection.
- Active Mode
This connection is activated by the remote server and client user waits for the server requests. Mainly, the active connection gets a problem with system firewall so that in order to avoid this user, open TCP port 20 and 21 in the system firewall.
This connection is initiated by the client user to the remote server and server waits for requests. In this, if FTP client requests a file, then it issues the PASV FTP command and server will open a random port and provide this port number to the client.
Installation of VsFTP in Linux Lite
- The first step which for installing VsFTP server is that one must use the following command that is “sudo apt-get install vsftpd ftp”. Using this command all the packages will be automatically installed in the system.
2. After the installation of vsftpd server, one has to configure FTP server. So, the user has to configure “vsftpd.conf” and do necessary as shown in the screenshot below.
3.After configuration of “vsftpd.conf”. one must start vsftpd server using command “sudo systemctl start vsftpd” and after that user has to enable vsftpd server using “sudo systemctl enable vsftpd”. One can also check the status of vsftpd using “sudo systemctl status vsftpd” as shown in the screenshot below.
4.Now we will create an FTP user. For creating user, one has to use the following command as shown below. In this case, we can see that we have created a user with the username “test”.
5.After creating user one can access the FTP server from the terminal itself by using following command “ftp server_ip_address”. When user enter this command after that user will be prompted for login credentials. Now the user must enter appropriate login credentials in order to access the FTP server. After login one can easily see all the files and directory in FTP server using command “dir”.
In above, one has learnt about what is FTP server and how one can install and run FTP server on Linux Mint platform with the use of some simple command which is discussed above.: