What are the package, daemon, port number, configuration file for FTP server?

First, install the package and check the package is installed or not.

Port number21 for TCP,
20 for UDP
Configuration files/etc/vsftpd/vsftpd.conf
/etc/vsftpd/ftpuser /etc/pam.d/vsftpd
Home directory/var/ftp


(This directory will be created after installing the package only)


How to configure FTP server in Redhat Linux step by step?

• First, install the package and check the package is installed or not.

[root@sys2 ~]# yum install vsftpd
Loaded plugins: product-id, refresh-package kit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vsftpd.x86_64 0:2.2.2-11.el6 will be installed
--> Finished Dependency Resolution Dependencies Resolved
Package                           Arch
Version                             Repository
vsftpd                               x86_64
2.2.2-11.el6                      ithonors-repo
151 k
Transaction Summary
Install                                1 Package(s)
Total download size: 151 k
Installed size: 331 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : vsftpd-2.2.2-11.el6.x86_64 1/1
Verifying : vsftpd-2.2.2-11.el6.x86_64 1/1
vsftpd.x86_64           0:2.2.2-11.el6


Check the package is installed or not.

[root@sys2 ~]# rpm -qa vsftpd


From the above output, we can confirm that the package is installed.

  • FTP Server is by default configured to listen on port 21.
  • Port 21 must be opened if you have configured the firewall. The configuration of a firewall for an FTP server is a relatively simple process.


The configuration of firewall is as follows :

Remember: In an organization, there could be a separate team for handling the requests of the firewall. If yes, then we can raise a change or work order accordingly and get the work done with them.

Knowing the steps are always helpful.

#iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
[root@sys2 ~]# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
[root@sys2 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot         opt   source              destination
ACCEPT            all --   anywhere       anywhere          state RELATED,ESTABLISHED
ACCEPT            icmp --anywhere      anywhere
ACCEPT            all --   anywhere       anywhere
ACCEPT            tcp -- anywhere        anywhere           state NEW tcp dpt:ssh
REJECT            all --  anywhere         anywhere           reject-with icmp-host-prohibited
ACCEPT            tcp -- anywhere        anywhere           state NEW tcp dpt:ftp
Chain FORWARD (policy ACCEPT)
target prot         opt    source              destination
REJECT            all -- anywhere          anywhere            reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot   opt source   destination


• Go to the /var/ftp/pub directory and create the files which are going to be transmitted to the remote machine.

[root@sys2 ~]# cd /var/ftp
[root@sys2 ftp]# ls
[root@sys2 ftp]# cd pub
[root@sys2 pub]# touch   ithonours1   ithonours2   ithonours3
[root@sys2 pub]# ls
ithonours1   ithonours2   ithonours3


The above highlighted three files are going to be transmitted to the remote machine.

• Restart the service

#service vsftpd restsrt
[root@sys2 ~]# service vsftpd restart
Shutting down vsftpd:                                          [ OK ]
Starting vsftpd for vsftpd:                                    [ OK ]


• Make the service enable after rebooting the system also

[root@sys2 ~]# chkconfig --list vsftpd
vsftpd       0:off        1:off     2:on      3:on      4:on    5:on     6:off


The numbers in the above output indicates the runlevels

• Check the ipaddress of the ftp server.

[root@sys2 ~]# ifconfig –a
eth3        Link encap:Ethernet HWaddr    00:0C:29:F2:03:74
inet addr:       Bcast:      Mask:
inet6 addr: fe80::20c:29ff:fef2:374/64     Scope:Link
RX packets:1934    errors:0    dropped:0    overruns:0    frame:0
TX packets:8       errors:0    dropped:0    overruns:0    carrier:0                            collisions:0             txqueuelen:1000
RX bytes:166186 (162.2 KiB)     TX bytes:1182 (1.1 KiB)


The above highlighted part in the output is the server ip address

• Turn off the selinux and iptables firewalls.


Topics Summary