Package Details: pure-ftpd 1.0.51-1

Git Clone URL: (read-only, click to copy)
Package Base: pure-ftpd
Description: A secure, production-quality and standard-conformant FTP server, focused on efficiency and ease of use.
Upstream URL:
Licenses: custom
Conflicts: pure-ftpd-db
Submitter: ilpianista
Maintainer: mrxx
Last Packager: mrxx
Votes: 51
Popularity: 0.070375
First Submitted: 2010-11-13 15:23 (UTC)
Last Updated: 2022-07-06 11:02 (UTC)

Latest Comments

mrxx commented on 2020-11-23 12:39 (UTC)

Added libsodium dependency as suggested by canton7.

canton7 commented on 2020-11-21 12:31 (UTC)

Would it be worth adding libsodium as a dependency?

pure-ftpd only compiles with argon2 support for password hashing if it finds libsodium on the system, otherwise it falls back to older schemes.

This caught me out when restoring a pureftpd.passwd file from backup on a new machine (which had argon2 hashes in it, which a new installation of pure-ftpd didn't know how to handle).

gregbert commented on 2020-09-10 06:38 (UTC)

Hopefully helpful note for someone:

After running this for years, today I started getting authentication failures. I believe that the default setting from 'UnixAuthentication' was changed from Yes to No, as that was all I needed to change (to yes) In order get things working again for me.

mrxx commented on 2020-04-28 08:40 (UTC) (edited on 2020-04-28 08:43 (UTC) by mrxx)

The welcome.msg file is included as "FortunesFile" in pure-ftpd.conf and sent to the client at the beginning of the session:

nc servername 21

220-Welcome to the FTP server.

Some FTP clients (e.g. Filezilla) don't display the welcome message at all.

From the README: "--with-welcomemsg: read 'welcome.msg' files for compatibility with some other FTP servers.

This is a security flaw (anonymous users may upload 'welcome.msg' files to add random banners)."

joks commented on 2020-04-27 19:15 (UTC) (edited on 2020-04-27 19:15 (UTC) by joks)

hello. maybe i do something wrong but banner with welcome messages did not work for me when users log into ftp. i read on pure-ftpd home page that package must be compile with this flag: --with-welcomemsg in pkgbuild i see that you add file welcome.msg but flag --with-welcomemsg is missing.

mrxx commented on 2020-04-19 19:51 (UTC)

Added --with-pam and set arch to 'any' as suggested by bhyoo.

bhyoo commented on 2020-04-19 15:30 (UTC)

Hi, Thanks for your contribution.

Could you add --with-pam to the configure options? And please change arch to any. I have tested on armv6h and aarch64.

mrxx commented on 2019-05-23 11:17 (UTC)

Added virtualchroot as suggested by obones.

obones commented on 2019-05-22 07:59 (UTC) (edited on 2019-05-22 07:59 (UTC) by obones)


Thank you for this package, it works just fine.

Could you also add --with-virtualchroot to the configure options?

This would allow using symbolic links inside "chrooted" folders as they are easier to maintain than mount points.

See section "* Shared directories and chroot" in this file for more details:

mrxx commented on 2019-04-06 14:46 (UTC)

Added bandwidth throttling as suggested by Zeikzeil.

Zeikzeil commented on 2019-04-06 13:56 (UTC)

Any chance you could add the '--with-throttling' switch?

sevenk commented on 2019-03-21 20:42 (UTC)

How can I build against mariadb-libs as they provide no

mrxx commented on 2019-01-28 12:13 (UTC)

kleph, thanks a lot for your contribution.

TLS 1.3 Patch included.

kleph commented on 2019-01-28 00:07 (UTC) (edited on 2019-01-29 19:27 (UTC) by kleph)

For those having troubles with TLS 1.3 clients, there's a patch available here :

It was written after the 1.0.47 release, so it's not included in it. I tested it successfully on pure-ftpd 1.0.47 with filezilla and lftp clients.

Symptoms: pure-ftpd[21001]: (?@IP) [INFO] New connection from pure-ftpd[21001]: (?@IP) [ERROR] TLS renegociation

lftp reports a "gnutls_record_recv error" and disconnects.

simona commented on 2019-01-25 22:42 (UTC)

Done now... and started service pure-ftpd ... ok solved. thanks for your big patience. :-))))

mrxx commented on 2019-01-25 21:02 (UTC)

Did you also reinstall pure-ftpd after updating your system ?

I think its better to post your problem to the 'AUR Issues' forum if it still persists.

simona commented on 2019-01-25 19:11 (UTC)

done "sudo pacman -Syyu". nothing new done. and none change. i think I should put it manually.

mrxx commented on 2019-01-25 12:18 (UTC)

simona, do: pacman -Syyu (yes, double yy). This should restore the missing symlink.

simona commented on 2019-01-25 10:42 (UTC)

can be... can I add manually? do you know where i can find it?

mrxx commented on 2019-01-23 10:55 (UTC)

simona, I cannot reproduce this. After installing pure-ftpd both on production machines and a fresh arch install, it runs without problems everywhere.

Did you install some packages with -S instead of -Sy recently? This can cause problems like that.

simona commented on 2019-01-23 10:04 (UTC)

/usr/bin/pure-ftpd: error while loading shared libraries: cannot open sh

mrxx commented on 2017-11-05 00:00 (UTC)

Upstream answered very quickly - they just fixed the bug in their development release. I've updated the PKGBUILD, login of virtual users is working again.

mrxx commented on 2017-11-04 16:29 (UTC)

I can reproduce the crash when using virtual users, even with older versions of pure-ftpd. I've filed a bug with upstream.

kitus commented on 2017-11-03 01:18 (UTC) (edited on 2017-11-03 02:09 (UTC) by kitus)

I've been working for couple of days in this problem, and i can't fix it, does anyone have the same problem... this problem happens only trying to work on "Virtual Users" , in the login process. My Kernel: Linux ktspc 4.13.9-1-ARCH #1 SMP PREEMPT Sun Oct 22 09:07:32 CEST 2017 x86_64 GNU/Linux This is the journalctl result: ------------------------------------------------------- nov 02 20:07:57 ktspc pure-ftpd[22608]: (?@ [INFO] New connection from nov 02 20:07:57 ktspc kernel: pure-ftpd[22608]: segfault at 0 ip 00007fe9f24fb7e8 sp 00007fff4c039c08 error 6 in[7fe9f245b000+1ae000] nov 02 20:07:57 ktspc systemd[1]: Started Process Core Dump (PID 22610/UID 0). nov 02 20:07:57 ktspc systemd-coredump[22611]: Resource limits disable core dumping for process 22608 (pure-ftpd). nov 02 20:07:57 ktspc systemd-coredump[22611]: Process 22608 (pure-ftpd) of user 0 dumped core. -------------------------------------------------------------------------- nov 02 10:50:00 ktspc systemd[1]: Started Process Core Dump (PID 17394/UID 0). -- Subject: Unit systemd-coredump@7-17394-0.service has finished start-up -- Defined-By: systemd -- Support: -- -- Unit systemd-coredump@7-17394-0.service has finished starting up. -- -- The start-up result is RESULT. nov 02 10:50:00 ktspc systemd-coredump[17395]: Resource limits disable core dumping for process 17392 (pure-ftpd). nov 02 10:50:00 ktspc systemd-coredump[17395]: Process 17392 (pure-ftpd) of user 0 dumped core. -- Subject: Process 17392 (pure-ftpd) dumped core -- Defined-By: systemd -- Support: -- Documentation: man:core(5) -- -- Process 17392 (pure-ftpd) crashed and dumped core. -- -- This usually indicates a programming error in the crashing program and -- should be reported to its vendor as a bug. Any idea ? Tnks for ur comments xD

mrxx commented on 2015-11-23 16:38 (UTC)

spapanik21, thanks for your suggestion. I've changed the location for the pidfile. The libsodium problem should disappear when you update/reinstall the pure-ftpd package. kleph's info about broken clients is now mentioned at install time.

spapanik21 commented on 2015-11-20 16:46 (UTC)

I noticed that the default value for the PIDFile is /run/pure-ftpd/, both in pure-ftpd.service and pure-ftpd.conf. The problem with that is that /run/pure-ftpd does not survive the restart and the service cannot restart. The solution I am using is to change the location in both this places, but this does not survive the updates. Furthermore, the last update broke it for me as I was getting the error: "error while loading shared libraries: cannot open shared object file: No such file or directory" when I was using the pure-pw.

mrxx commented on 2015-10-08 02:55 (UTC)

Of course the FQDN of the host may not always be the desired one, especially if the server is in a DMZ, but exactly for cases like this a note how to re-create the certificate is displayed, as was suggested by you. Unfortunately, there is not much documentation about the BrokenClientsCompatibility parameter, but the decision to set it to "no" by default in the latest release seems to be security related. Therefore, I think it's better to follow upstream and leave it untouched, as very few clients are affected. In the next release I'll add a note about broken clients and how to enable the parameter in the config file.

kleph commented on 2015-10-08 01:14 (UTC)

Just for the reference, I had trouble with a few FTP clients since 1.0.42. Andftp and Total Commander, to name them, but filezilla and lftp are OK. The first connection was good, logs were OK, but clients did not see anything in the directory. Total commander did not say anything, and andftp complained about "connection closed unexpectedly". It was for the data connection, that's why ls did not show a thing. I found that enabling "BrokenClientsCompatibility" fixed the problem. As you're already modifying some parts of the defaults, maybe also adding this could be useful. Extract of the upstream's changelog for the version 1.0.42 : - The ONLY_ACCEPT_REUSED_SSL_SESSIONS switch (introduced in Pure-FTPd 1.0.22 circa 2009, but disabled back then due to client compatibility concerns) is now on by default, except in broken clients compatibility mode.

kleph commented on 2015-10-08 01:07 (UTC)

Thanks for the fast answer and fast integration :) I do not face the FQDN problem, but that's may be due to the my config. Pure's host is resolved as a FQDN for the local zone and I set the CN of my certificate (delivered by a local CA) to the FQDN of my external zone. But as the forward and the reverse are resolved by a local DNS, I may miss the issue.

mrxx commented on 2015-10-07 02:20 (UTC)

Thanks kleph, I totally agree. I've added an install script similar to your suggestions, but instead of only telling the user how to generate a self-signed certificate, it also generates one with matching CN=FQDN at install time if missing. (Otherwise the TLS-enabled ftp service would refuse to start.) Updated to 1.0.42-2.

kleph commented on 2015-10-06 22:05 (UTC)

Hi, The install conflicts if you already have certificates and DH params files. Wouldn't it be better to check if certificates and DH params files already exists and generate new files rather that providing secret keys and always the same dh params with the package ? That way the user can provide its own Common Name to match his FQDN. I try it in my local variant built with --ldap - removed the line "install -Dm640 -t ${pkgdir}/etc/ssl/private/ ${srcdir}/pure-ftpd.pem ${srcdir}/pure-ftpd-dhparams.pem" from the PKGBUILD - and added a pure-ftpd.install : post_install(){ if [ ! -e /etc/ssl/private/pure-ftpd-dhparams.pem ];then echo "Generating new DH params" openssl dhparam -out /etc/ssl/private/pure-ftpd-dhparams.pem 2048 chmod 0600 /etc/ssl/private/pure-ftpd.pem fi if [ ! -e /etc/ssl/private/pure-ftpd.pem ]; then echo "You need to place a certificate and its key in /etc/ssl/private/pure-ftpd.pem to start TLS enabled pure-ftpd" echo "You can generate a self signed certificate with the following command :" echo "openssl req -x509 -nodes -newkey rsa:2048 -sha256 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem" echo echo "Note: The Common Name (CN) should be the same as the FQDN of the server." echo "Note2: Remember to chmod 0600 the generated certificate." fi }

mrxx commented on 2015-07-12 19:57 (UTC)

Taken over maintainership, overall improvements, updated to 1.0.41.

akorop commented on 2015-03-02 07:14 (UTC)

Also works the link${pkgname}/releases/${pkgname}-${pkgver}.tar.bz2

commented on 2015-01-29 11:39 (UTC)

If you experience problems downloading the source file from the FTP server given in PKGBUILD, try the following (worked for me as of today): source=("${pgkname}/releases/${pkgname}-${pkgver}.tar.bz2" 'pure-ftpd' 'pure-ftpd.service')

mezcal commented on 2013-06-05 07:28 (UTC)

I'm sorry for the delay bin issue. We have terrible flood in the central Europe. My comp is in a flooded house. If someone want to adopt the package I will disown it. Or wait till next week.

notme commented on 2013-06-04 18:22 (UTC)

build() { cd ${srcdir}/${pkgname}-${pkgver} ./configure --prefix=/usr \ --bindir=/usr/bin \ --sbindir=/usr/bin \ --with-puredb \ --with-ftpwho \ --with-altlog \ --with-tls \ --with-mysql \ --with-quotas make } line 43: install -Dm755 configuration-file/ ${pkgdir}/usr/bin/

abbradar commented on 2013-06-03 19:49 (UTC)

Arch is moving all binaries to /usr/bin. Please fix this package.

mezcal commented on 2013-04-29 07:39 (UTC)

this package was flagged out-of-date. I don`t see newer version then 1.36

alexandernst commented on 2013-03-22 14:36 (UTC)

Can you compile this with --with-quotas , please?

abbradar commented on 2012-11-18 15:21 (UTC)

Please fix .service file; it looks for /etc/pure-ftpd/pure-ftpd.conf but our config is in /etc/pure-ftpd.conf

commented on 2012-09-12 14:30 (UTC)

This pacakge is indeed out of date. md5sum for 1.0.36 7899c75c1fed7dbad0352eb31080e066 Just change pkgver in PKGBUILD.

nikin commented on 2012-07-09 14:37 (UTC)

Why is this package out of date? As far as i know this is the latest version.

mezcal commented on 2012-06-29 11:51 (UTC)

Hello, could you compile it with --with-rfc2640 (Internationalization of the FTP, enable support for charset conversion ).

neolith2099 commented on 2012-06-25 14:59 (UTC)

1.0.36 is out as of 21-Mar-2012. See:

commented on 2011-04-21 12:23 (UTC) New PKGBUILD.

commented on 2011-04-21 12:16 (UTC) New pkgbuild. ( why 'pure-ftpd' in the source ? )

commented on 2010-12-02 09:35 (UTC)

Would it be possible to add --with-everything and --with-peruserlimits to the ./configure line ? It would be a good idea because we could use "user quota" (it's pretty common/useful to use this) and other common features.