# Install tnftpd with Homebrew, MacPorts

NetBSD's FTP server. Version 20231001 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:tnftpd
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install tnftpd
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install tnftpd
```

  Evidence: MacPorts ports tree: net/tnftpd/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:tnftpd
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/tnftpd>
- **Version:** 20231001
- **Source summary:** NetBSD's FTP server
- **Homepage:** <https://cdn.netbsd.org/pub/NetBSD/misc/tnftp/>
- **Repository:** <https://github.com/NetBSD/src/tree/trunk/libexec/ftpd>
- **Upstream docs:** <https://cdn.netbsd.org/pub/NetBSD/misc/tnftp>
- **License:** BSD-2-Clause AND BSD-3-Clause AND ISC
- **Source archive:** <https://cdn.netbsd.org/pub/NetBSD/misc/tnftp/tnftpd-20231001.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Uses from macOS

- libxcrypt

## Install behavior

- Post-install hook: not defined
- Caveats: You may need super-user privileges to run this program properly. See the man page for more details.
- Bottle: available on arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, monterey, sonoma, ventura, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 20231001
- Local data: ok
- Upstream repository: https://cdn.netbsd.org/pub/NetBSD/misc/tnftp/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

tnftpd is the portable packaging of NetBSD's FTP server. It packages the NetBSD `ftpd` userland daemon for non-NetBSD systems, carrying both Berkeley ftpd heritage and NetBSD configuration features.

### Project history

The NetBSD ftpd manual page shows Berkeley Regents ancestry from 1985, 1988, 1991, and 1993, plus NetBSD Foundation work beginning in 1997 contributed by Luke Mewburn. The current NetBSD source tree continues to host the server under `libexec/ftpd`, and its version header identifies a `NetBSD-ftpd 20230930` version.

The portable archive history mirrors tnftp but is smaller. NetBSD's directory message says tnftpd is a port of the enhanced NetBSD ftp server to other systems and notes that `lukemftpd` was renamed to `tnftpd`. Archived releases begin with `lukemftpd-1.0` in 2001, move through `tnftpd-2.0` beta tarballs in 2002 and 2003, and continue as date-stamped tnftpd tarballs through 2023.

### Adoption history

tnftpd has a narrower adoption footprint than tnftp because running FTP servers is a more specialized task than fetching files. The supplied package facts list Homebrew and MacPorts, which fits the niche: developers and administrators may install it when they specifically want NetBSD's ftpd behavior on a non-NetBSD Unix-like system.

Its documentation emphasizes traditional FTP server operations: daemon or inetd startup, anonymous login chroots, syslog/xferlog logging, virtual FTP server configuration, access checks through `ftpusers`, and class-based behavior through `ftpd.conf`.

### How it is used

Administrators use tnftpd as an FTP server process, either run under inetd or as a daemon. The man page documents options for IPv4/IPv6 binding, anonymous directory selection, alternate configuration roots, advertised hostnames, transfer logs, session logging, privilege dropping, and version banners.

The companion `ftpd.conf` manual documents `/etc/ftpd.conf` as the post-authentication configuration file, with class-based directives for guest, chrooted, and real users. The server also consults files such as `/etc/ftpusers`, `/etc/ftpchroot`, `/etc/ftpwelcome`, and `/etc/motd`.

### Why package nerds care

For package nerds, tnftpd is a portable slice of BSD base-system networking. It is significant because it exposes a well-documented NetBSD server implementation as an installable package for systems that do not ship that exact daemon.

Its smaller package footprint also reflects protocol history: FTP service is less commonly deployed now, but a maintained BSD ftpd remains useful for compatibility labs, legacy environments, and people comparing base-system daemons across Unix lineages.

### Timeline

- 1985-1994: Berkeley ftpd ancestry appears in the NetBSD manual page copyrights and SCCS marker.
- 1997: NetBSD Foundation ftpd work begins in the manual page copyright range.
- 2001: `lukemftpd-1.0.tar.gz` appears in the NetBSD archive.
- 2002-2003: `tnftpd-2.0` beta tarballs appear after the rename from lukemftpd to tnftpd.
- 2019-2020: NetBSD archive publishes date-stamped tnftpd tarballs.
- 2023: NetBSD source identifies `FTPD_VERSION` as `NetBSD-ftpd 20230930`, and the archive contains `tnftpd-20231001.tar.gz`.

### Related projects

- Related to NetBSD's base-system `ftpd` server in `libexec/ftpd`.
- Closely paired in the portable archive with tnftp, the corresponding NetBSD FTP client port.

### Sources

- <https://cdn.netbsd.org/pub/NetBSD/misc/tnftp/>
- <https://cdn.netbsd.org/pub/NetBSD/misc/tnftp/.message>
- <https://cdn.netbsd.org/pub/NetBSD/misc/tnftp/archive/>
- <https://github.com/NetBSD/src/tree/trunk/libexec/ftpd>
- <https://man.netbsd.org/ftpd.8>
- <https://man.netbsd.org/ftpd.conf.5>
- <https://raw.githubusercontent.com/NetBSD/src/trunk/libexec/ftpd/version.h>
- input source_facts.package-manager


## Security Notes

No matching local secret-handling manifest was found for tnftpd. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: /etc/ftpd.conf, /etc/ftpchroot, /etc/ftpusers, /etc/ftpwelcome, /etc/motd
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** tnftpd
- **Aliases:** lukemftpd
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- MacPorts - tnftpd: normalized package name match | MacPorts ports tree: net/tnftpd/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [tnftp](https://www.automicvault.com/pkg/brew/tnftp/) - Shares the same upstream homepage.
- [copyparty](https://www.automicvault.com/pkg/brew/copyparty/) - Local metadata places this package in an adjacent workflow. Shared terms: ftp, server.
- [curl](https://www.automicvault.com/pkg/brew/curl/) - Local metadata places this package in an adjacent workflow. Shared terms: ftp, server.

## Combined YAML source

View the package source record on GitHub. [combined/tnftpd.yml](https://github.com/automic-vault/db/blob/main/combined/tnftpd.yml)


## Sources

- Nucleus package database
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
