Packages / proftpd
APT repository · deb.freshdeb.com/proftpd
proftpd
ProFTPD, the configurable FTP server, with FTPS, SFTP and SCP, virtual hosts, and SQL, LDAP and RADIUS authentication. Its own modules and the third-party ones the distributions ship are all built here, against the same release. One release line for Debian 12 and 13, Ubuntu 22.04, 24.04 and 26.04 on amd64 and arm64.
latest 1.3.9ewww.proftpd.orgupstream sourcepackaging
Componentmain
follows every upstream release, minors and majors included. Currently 1.3.9e.
Not published yet. The first proftpd release is being built. These commands will work once it lands at deb.freshdeb.com/proftpd; the versions shown are the ones package.yaml will publish.
1Trust the signing key (once per machine)
sudo install -d -m 0755 /etc/apt/keyrings curl -fsSL https://deb.freshdeb.com/freshdeb-archive-keyring.gpg \ | sudo tee /etc/apt/keyrings/freshdeb-archive-keyring.gpg >/dev/null
Fingerprint 3BBD F03A 9C0B F890 F8CA 9510 7595 CC55 468F 3161. How to verify.
2Add the source
sudo tee /etc/apt/sources.list.d/freshdeb-proftpd.sources >/dev/null <<EOF
Types: deb
URIs: https://deb.freshdeb.com/proftpd
Suites: $(. /etc/os-release && echo $VERSION_CODENAME)
Components: main
Signed-By: /etc/apt/keyrings/freshdeb-archive-keyring.gpg
EOFWith auto, the shell reads the codename from /etc/os-release on the machine you paste this into.
3Install
sudo apt update && sudo apt install proftpd-core
apt policy proftpd-core # expect 1.3.9e-1+freshdeb~…Before you upgrade from the distribution's proftpd
The freshdeb version sorts higher, so apt upgrade moves you over in place. Most configurations keep working; the distributions ship 1.3.7c and 1.3.8. TLSOptions NoCertRequest is now an error, so remove it. mod_tls no longer renegotiates by default, mod_sftp uses strict KEX against Terrapin (SFTPOptions NoStrictKex for clients that can't), FSCachePolicy is off, and clients that don't fit the scoreboard are disconnected. Keep the LoadModule mod_ls.c and mod_xfer.c lines in modules.conf. The package's NEWS entry lists every change.
Compared with Debian's package
Debian's packaging decides where things go: package names, paths, users, services and how upgrades behave. The build follows upstream's own release builds wherever Debian's differs.
- Build
- Debian's packaging and patches, from upstream's release tag. Debian repacks the tarball without the RFCs in
doc/rfc. Upstream's fix for FTPS over TLS 1.3 with OpenSSL older than 3.5 is added; 1.3.9e broke it. - Modules
- The 16 third-party modules the distributions ship (mod_vroot, mod_proxy, mod_clamav, mod_tar and the rest) are rebuilt with every release, each from its upstream tag with Debian's packaging. Debian's modules require the exact proftpd they were built for, so without them apt would hold proftpd back.
- Layout
- Debian's:
/etc/proftpd/proftpd.confandmodules.conf, theproftpdandftpusers,/srv/ftp, the systemd unit, and the modules asproftpd-mod-*packages. - modules.conf
- mod_ls and mod_xfer are loadable modules since 1.3.9. The upgrade adds their
LoadModulelines tomodules.confeven if you changed the file, since proftpd won't start without them. Debian's only adds them to an unchanged one.
Packing list
Every release line of proftpd and the distributions it's built for. Each line is its own APT component and only gets the releases it follows (main: every upstream release, minors and majors included). After upstream end of life it stops building but stays installable. Hatched cells have no build: usually that distribution already ships the same or a newer version itself.
| Line | Component | Current | bookwormDebian 12 | trixieDebian 13 | jammyUbuntu 22.04 | nobleUbuntu 24.04 | resoluteUbuntu 26.04 | Support |
|---|---|---|---|---|---|---|---|---|
| main | main | 1.3.9e | built: 1.3.9e-1 | built: 1.3.9e-1 | built: 1.3.9e-1 | built: 1.3.9e-1 | built: 1.3.9e-1 | – |
Versions follow <upstream>-<revision>+freshdeb~<distro>, distro being deb12, deb13, ubuntu22.04, ubuntu24.04 or ubuntu26.04, for amd64 and arm64. Published versions are never rebuilt or replaced.
Contents
- proftpd-core
- The server, with its built-in modules and ftpasswd, ftpwho and ftptop.
- proftpd-dev
- Headers and tools for building modules.
- proftpd-doc
- The documentation.
- proftpd-mod-mysql
- MySQL and MariaDB for mod_sql.
- proftpd-mod-pgsql
- PostgreSQL for mod_sql.
- proftpd-mod-ldap
- LDAP authentication.
- proftpd-mod-odbc
- ODBC for mod_sql.
- proftpd-mod-sqlite
- SQLite for mod_sql.
- proftpd-mod-geoip
- GeoIP lookups (legacy databases).
- proftpd-mod-snmp
- SNMP agent.
- proftpd-mod-crypto
- FTPS (mod_tls), SFTP and SCP (mod_sftp) and the other modules that need OpenSSL.
- proftpd-mod-wrap
- TCP wrappers access control.
Third-party modulesrebuilt against this proftpd
- proftpd-mod-autohost
- Virtual hosts configured on demand from per-host files.0.6 · github.com/Castaglia/proftpd-mod_autohost
- proftpd-mod-case
- Case-insensitive file names.0.9.1 · github.com/Castaglia/proftpd-mod_case
- proftpd-mod-clamav
- Scans uploads with ClamAV.0.14rc2 · github.com/jbenden/mod_clamav
- proftpd-mod-counter
- Limits concurrent readers and writers per file.0.6.2 · github.com/Castaglia/proftpd-mod_counter
- proftpd-mod-fsync
- Flushes uploads to disk every so many bytes, so they don't crowd out the read cache.0.3 · github.com/Castaglia/proftpd-mod_fsync
- proftpd-mod-geoip2
- GeoIP2 lookups with MaxMind's current databases.0.1.1 · github.com/Castaglia/proftpd-mod_geoip2
- proftpd-mod-kafka
- Sends log messages to Kafka.0.1 · github.com/Castaglia/proftpd-mod_kafka
- proftpd-mod-msg
- Messages to connected clients from ftpdctl.0.5.1 · github.com/Castaglia/proftpd-mod_msg
- proftpd-mod-prometheus
- Prometheus metrics.0.2 · github.com/Castaglia/proftpd-mod_prometheus
- proftpd-mod-procfs
- Controls what FTP sessions can see and use of /proc.0.3 · github.com/Castaglia/proftpd-mod_procfs
- proftpd-mod-proxy
- FTP reverse and forward proxy.0.9.7 · github.com/Castaglia/proftpd-mod_proxy
- proftpd-mod-proxy-protocol
- The PROXY protocol from load balancers.0.6 · github.com/Castaglia/proftpd-mod_proxy_protocol
- proftpd-mod-sftp-ldap
- SFTP public keys from LDAP.0.2 · github.com/Castaglia/proftpd-mod_sftp_ldap
- proftpd-mod-statsd
- Sends metrics to statsd.0.1 · github.com/Castaglia/proftpd-mod_statsd
- proftpd-mod-tar
- Downloads directories as tar or zip archives.0.4 · github.com/Castaglia/proftpd-mod_tar
- proftpd-mod-vroot
- Virtual chroot, with aliases outside it.0.9.12 · github.com/Castaglia/proftpd-mod_vroot
Origin
- Upstream
- github.com/proftpd/proftpdrelease tags pinned to commit hashes
- Debian packaging
- salsa.debian.org/debian-proftpd-team/proftpdimported unmodified at 8c50bee (1.3.9e~dfsg-1, unstable)
- Modules
- 16 third-party modules, each from its upstream release tag with Debian's packaging, built against this proftpdcompanions in package.yaml
- Our changes
- Per-line quilt patches under
patches/, plus overlays underoverlays/for bookworm, trixie, jammy, noble, resolute. - Built for
- bookworm, trixie, jammy, noble, resoluteamd64, arm64, built natively
- Files
- package.yaml · debian/ · report an issuepackage.yaml explains every change