{"id":623,"date":"2011-12-01T05:00:34","date_gmt":"2011-12-01T05:00:34","guid":{"rendered":"http:\/\/www.ubuntupirates.com\/?p=623"},"modified":"2011-12-01T05:00:34","modified_gmt":"2011-12-01T05:00:34","slug":"how-to-create-ftp-server-with-proftpd-in-linuxubuntu","status":"publish","type":"post","link":"https:\/\/www.jameseduard.com\/?p=623","title":{"rendered":"How to Create FTP Server with ProFTPD in Linux\/Ubuntu"},"content":{"rendered":"<p>In this tutorials i will discuss how to create an FTP server with ProFTP in Linux\/Ubuntu Server\/Destkop, What is ProFTPD.<br \/>\n<strong>ProFTPD<\/strong> is a proven, high-performance, scalable <em>FTP server<\/em> written from scratch, with a focus toward simplicity, security, and ease of configuration. Naturally, ProFTPD powers some of the largest sites on the Internet. It features a very Apache-like configuration syntax, modules, and a highly customizable server infrastructure, including support for multiple \u2018virtual\u2019 FTP servers, anonymous FTP, and permission-based directory visibility.<br \/>\n<strong>ProFTPD <\/strong>has been configured and designed to be more secure than WU-FTPD. ProFTPD was rewritten from scratch to provide greater security. The security features that it provides are:<\/p>\n<ul>\n<li>directory access using .ftpaccess files<\/li>\n<li>anonymous FTP root directory<\/li>\n<li>support for hidden files<\/li>\n<li>self-contained<\/li>\n<li>uses an unprivileged user in stand-alone mode<\/li>\n<\/ul>\n<p>To Install FTP Server with Prottpd in Ubuntu Server or Desktop. 1.\u00a0Install proftpd (Secure way,Open terminal (ctrl+alt+t)with this command :<\/p>\n<pre>sudo apt-get install proftpd<\/pre>\n<p>2. Add this line in <strong>\/etc\/shells<\/strong>file<\/p>\n<pre>sudo gedit \/etc\/shells<\/pre>\n<p>to open the file<\/p>\n<pre>\/bin\/false<\/pre>\n<p><strong>Create a \/home\/FTP-shared directory<\/strong><\/p>\n<pre>cd \/home\nsudo mkdir FTP-shared<\/pre>\n<p><strong>Create a \/home\/FTP-shared directory :<\/strong><\/p>\n<pre>cd \/home\nsudo mkdir FTP-shared<\/pre>\n<p><strong>Create a user named userftp which will be used only for ftp access.<\/strong><\/p>\n<pre>sudo useradd userftp -p your_password -d \/home\/FTP-shared -s \/bin\/false\nsudo passwd userftp<\/pre>\n<p>Example: useradd pr3p -p handsome -d \/home\/FTP-shared -s \/bin\/false <strong>In FTP-shared directory create a download and an upload directory :<\/strong><\/p>\n<pre>cd \/home\/FTP-shared\/\nsudo mkdir download\nsudo mkdir upload<\/pre>\n<p><strong>Set the good permissions for these directories :<\/strong><\/p>\n<pre>cd \/home\nsudo chmod 755 FTP-shared\ncd FTP-shared\nsudo chmod 755 download\nsudo chmod 777 upload<\/pre>\n<p><strong>Edit proftpd configuration file :<\/strong><\/p>\n<pre>sudo gedit \/etc\/proftpd.conf<\/pre>\n<pre># To really apply changes reload proftpd after modifications.\nAllowOverwrite on\nAuthAliasOnly on\n# Choose here the user alias you want !!!!\nUserAlias sauron userftp\nServerName\t\t\t\"UbuntuPirates\"\nServerType \t\t\tstandalone\nDeferWelcome\t\t\ton\nMultilineRFC2228 on\nDefaultServer\t\t\ton\nShowSymlinks\t\t\toff\nTimeoutNoTransfer 600\nTimeoutStalled 100\nTimeoutIdle 2200\nDisplayChdir                    .message\nListOptions                \t\"-l\"\nRequireValidShell \t\toff\nTimeoutLogin 20\nRootLogin \t\t\toff\n# It's better for debug to create log files ;-)\nExtendedLog \t\t\t\/var\/log\/ftp.log\nTransferLog \t\t\t\/var\/log\/xferlog\nSystemLog\t\t\t\/var\/log\/syslog.log\n#DenyFilter\t\t\t*.*\/\n# I don't choose to use \/etc\/ftpusers file (set inside the users you want to ban, not useful for me)\nUseFtpUsers off\n# Allow to restart a download\nAllowStoreRestart\t\ton\n# Port 21 is the standard FTP port, so you may prefer to use another port for security reasons (choose here the port you want)\nPort\t\t\t\t1980\n# To prevent DoS attacks, set the maximum number of child processes\n# to 30.  If you need to allow more than 30 concurrent connections\n# at once, simply increase this value.  Note that this ONLY works\n# in standalone mode, in inetd mode you should use an inetd server\n# that allows you to limit maximum number of processes per service\n# (such as xinetd)\nMaxInstances 8\n# Set the user and group that the server normally runs at.\nUser                  nobody\nGroup                 nogroup\n# Umask 022 is a good standard umask to prevent new files and dirs\n# (second parm) from being group and world writable.\nUmask\t\t\t\t022\t022\nPersistentPasswd\t\toff\nMaxClients 8\nMaxClientsPerHost 8\nMaxClientsPerUser 8\nMaxHostsPerUser 8\n# Display a message after a successful login\nAccessGrantMsg \"welcome !!!\"\n# This message is displayed for each access good or not\nServerIdent                  on       \"you're at home\"\n# Lock all the users in home directory, ***** really important *****\nDefaultRoot ~\nMaxLoginAttempts    5\n#VALID LOGINS\nAllowUser userftp\nDenyALL\nUmask 022 022\nAllowOverwrite off\n\tDenyAll\nUmask 022 022\nAllowOverwrite off\n\tDenyAll\nUmask 022 022\nAllowOverwrite on\n      \tDenyAll\n      \tAllowAll<\/pre>\n<p>After editing the proftpd configuration file, Save and exit. Server is on port 1980 (in this exemple) and the access parameters are user : pr3p password : the one you&#8217;ve set for userftp 3. To start\/stop\/restart your server :<\/p>\n<pre>sudo \/etc\/init.d\/proftpd start\nsudo \/etc\/init.d\/proftpd stop\nsudo \/etc\/init.d\/proftpd restart<\/pre>\n<p>4. To perform a syntax check of your proftpd.conf file :<\/p>\n<pre>sudo proftpd -td5<\/pre>\n<p>5. After installation you may now try to access your ftp server with your FTP client: I&#8217;m using filezilla for ftp client. For more info visit the official site: <a href=\"http:\/\/ubuntuforums.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Ubuntu forum<\/a> and <a title=\"proftpd\" href=\"http:\/\/www.proftpd.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Proftpd.org<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorials i will discuss how to create an FTP server with ProFTP in Linux\/Ubuntu Server\/Destkop, What is ProFTPD. ProFTPD is a proven, high-performance, scalable FTP server written from scratch, with a focus toward simplicity, security, and ease of configuration. Naturally, ProFTPD powers some of the largest sites on the Internet. It features a<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[23,10,13],"tags":[306,307,308,309,310,311,35,77],"class_list":["post-623","post","type-post","status-publish","format-standard","hentry","category-linux","category-networking","category-opensource","tag-file-sharing","tag-file-transfer-protocol","tag-filezilla","tag-ftp","tag-proftpd","tag-samba","tag-server","tag-ubuntu-server"],"_links":{"self":[{"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=\/wp\/v2\/posts\/623","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=623"}],"version-history":[{"count":0,"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=\/wp\/v2\/posts\/623\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=623"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=623"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jameseduard.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=623"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}