Proftpd is an open source, highly configurable and secure FTP server. It was designed to be light-weight even cannot hack on any other server.
Features are,
Proftpd Easy configuration
Configure Multiple virtual FTP
anonymous FTP services.
Available secure code for administrator and developers
Allows SQL databases, LDAP servers, SSL/TLS encryption,
Installing:
First, we need to download proftpd packages with latest version using wget command and extract that file from the archive you downloaded.
# cd /root/download/
# wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.5.tar.gz
# tar -xf proftpd-1.3.5.tar.gz
# wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.5.tar.gz
# tar -xf proftpd-1.3.5.tar.gz
Configure and install proftpd by below executable commands,
# ./configure --prefix=/usr --with-includes=/usr/local/ssl/include --with-libraries=/usr/local/ssl/lib --enable-openssl --with-modules=mod_sftp --enable-dso
# make && make install
# make && make install
Find out the installed location of Whereis command,
# whereis proftpd
proftpd: /usr/sbin/proftpd /etc/proftpd /usr/etc/proftpd.conf /usr/lib/proftpd /usr/include/proftpd /usr/share/man/man8/proftpd.8
proftpd: /usr/sbin/proftpd /etc/proftpd /usr/etc/proftpd.conf /usr/lib/proftpd /usr/include/proftpd /usr/share/man/man8/proftpd.8
Good to know the version being used, configuration details, which modules have been installed, configuration file location everything can get by a single command,
proftpd -V
Compile-time Settings:
Version: 1.3.5 (stable)
Platform: LINUX [Linux 2.6.32-71.29.1.el6.x86_64 x86_64]
Built: Fri Jun 27 2014 18:19:47 IST
Built With:
configure '--prefix=/usr' '--with-includes=/usr/local/ssl/include' '--with-libraries=/usr/local/ssl/lib' '--enable-openssl' '--with-modules=mod_sftp' '--enable-dso'
CFLAGS: -O2 -Wall
LDFLAGS: -L$(top_srcdir)/lib -L/usr/local/ssl/lib
LIBS: -lssl -lcrypto -lssl -lcrypto -L$(top_srcdir)/lib/libcap -lcap -lpam -lcrypto -lz -lsupp -lcrypt -ldl
Files:
Configuration File:
/usr/etc/proftpd.conf
Pid File:
/usr/var/proftpd.pid
Scoreboard File:
/usr/var/proftpd.scoreboard
Header Directory:
/usr/include/proftpd
Shared Module Directory:
/usr/libexec
Configure Secure FTP :
We have to modify a few configuration for connecting secure FTP so, update below changes in proftpd. conf file.
/usr/etc/proftpd.conf
# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use. It establishes a single server
# and a single anonymous login. It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.
ServerName "ProFTPD Default Installation"
ServerType standalone
DefaultServer on
SFTPEngine on
SFTPLog /etc/proftpd/sftp.log
AuthPAM off
# Port 21 is the standard FTP port.
Port 1591
# Don't use IPv6 support by default.
UseIPv6 off
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
SFTPHostKey /etc/ssh/ssh_host_rsa_key
SFTPHostKey /etc/ssh/ssh_host_dsa_key
SFTPAuthorizedUserKeys file:/root/.ssh/authorized_keys
SFTPCompression delayed
MaxLoginAttempts 4
# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
MaxInstances 30
# Set the user and group under which the server will run.
User root
Group nobody
# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot ~
AuthUserFile /etc/proftpd/passwd.vhosts
# Normally, we want files to be overwriteable.
AllowOverwrite on
# Bar use of SITE CHMOD by default
DenyAll
# A basic anonymous configuration, no upload directories. If you do not
# want anonymous users, simply delete this entire section.
User ftp
Group ftp
# We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp
# Limit the maximum number of anonymous logins
MaxClients 20
# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayChdir .message
# Limit WRITE everywhere in the anonymous chroot
DenyAll
How to start, stop, restart proftpd,
Run below commands can start Proftpd every time the computer boots Linux.3
# cp /root/download/proftpd-1.3.5/contrib/dist/rpm/proftpd.init.d /etc/init.d/proftpd
# cd /etc/init.d
# chmod 0755 proftpd
# cd /etc/init.d
# chmod 0755 proftpd
Once you have done the configuration start proftpd
# /etc/init.d/proftpd start
Starting proftpd: [ OK ]
#/etc/init.d/proftpd stop
Shutting down proftpd: [ OK ]
# /etc/init.d/proftpd status
proftpd (pid 15377) is running...
Starting proftpd: [ OK ]
#/etc/init.d/proftpd stop
Shutting down proftpd: [ OK ]
# /etc/init.d/proftpd status
proftpd (pid 15377) is running...
Be ensure whether the proftpd is connecting to the port : 1591
#netstat -anp | grep proftpd
tcp 0 0 0.0.0.0:1591 0.0.0.0:* LISTEN 15377/proftpd
unix 2 [ ] DGRAM 78418226 15377/proftpd
Now, you can connecting secure FTP using Filezilla or any other file transfer tool.
Comments (0)