Q. How do I configure and install an FTP server in CentOS / RHEL 5 / Fedora Linux server?
A. CentOS / RHEL server comes with vsftpd which is the Very Secure File Transfer Protocol (FTP) daemon. The server can be launched via a xinetd or as standalone mode, in which case vsftpd itself will listen on the network port 21.
How do I install vsftpd?
Simply type the following command as a superuser (root):
# yum install vsftpd
Turn on vsftpd ftp service
Type the following command:
# chkconfig vsftpd on
How do I start vsftpd ftp server?
Type the following command:
# service vsftpd start
How do I stop vsftpd ftp server?
Type the following command:
# service vsftpd stop
How do I restart vsftpd ftp server?
Type the following command:
# service vsftpd restart
Open FTP port
Open /etc/sysconfig/iptables file, enter:
# vi /etc/sysconfig/iptables
Append following line to open ftp port 21 before REJECT line:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
Save and close the file. Restart the firewall:
# service iptables start
Test ftp server
Type the following command:
$ ftp localhost
$ ftp ftp.server.com
$ ftp 202.54.1.1
How do I configure vsftpd server?
The default configuration file is /etc/vsftpd/vsftpd.conf file. You can open file with vi text editor:
# vi /etc/vsftpd/vsftpd.conf
See see vsftpd.conf man pages for all configuration options.
$ man vsftpd.conf
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
- RSS feed or Weekly email newsletter
- Share on Twitter • Facebook • 16 comments... add one ↓
Category | List of Unix and Linux commands |
---|---|
File Management | cat |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
ho3…
how about proftpd vs vsftpd?
i wanna install this kind of application soon…
pls send the details…. configuration of ftp server in linux
# service iptables stop
# chkconfig iptables off
# yum install vsftpd* -y
# vim /etc/vsftpd/vsftpd.conf
remove a # from this line (chroot_local_user=YES)
add the line in last end.. (userlist_deny=NO)
# vim /etc/vsftpd/user_list
add the user for ftp access
# setsebool -P allow_ftpd_full_access on
# service vsftpd restart
# chkconfig vsftpd on
here mentioned only iptables concept. I may except /etc/vsftpd/vsftpd.conf
when we create yum server that time we use cmmand
cp -dpr * /var/ftp/pub
i want to ask that why we copy that in /var/ftp/pub and what we copy
I had to add this to my /etc/vsftpd/vsftpd.conf:
pasv_min_port=12000
pasv_max_port=12003
And the firewall exception:
-A RH-Firewall-1-INPUT -p tcp -m tcp -m state –dport 12000:12003 –state NEW -j ACCEPT
But it all works now :)
File size for FTP
Can we limit file size for FTP ? Download/upload not over 2 MB size ? or something like that ?
simple and to the point article, very useful for beginners. thaks.
This guide is sort of useless. Could you not tell us the expected output, so we know we’ve done it right?
Quick, simple, elegant article – thanks.
Great article. It contains everything i needed. While other locations contained some important information, the information that really saved me was the allowing of port 21 through the firewall, since most OS don’t have it as a default.
Thank for your information…….
Awesome, worked perfectly on my new Centos server through Godaddy… FTP was already installed so all I needed to do was ‘start’ the server and boom I opened FileZilla and it immediately connected.
Thank you for this resource
Can anyone please share me the limk to download RHEL WS 4 Update1 iso’s……!!!!!! please urgent !!!!!!!
Getting the server setup is one thing, and thanks for a great article on how to accomplish it. But, now, how do we add users and drop them into specific directories?
To start working the service under CentOS, I’d add the following command (as ‘root’):
$ setsebool -P ftp_home_dir=1
Without it, the servide did not work for me…