🌻 📖 aeftpd


aeftpd - FTP Server


version 0.19


 % aeftpd [ --port port ]
          [ --hostname hostname ]
          [ --inet ]
          [ --stderr path ]
          [ --context context ]
          [ --chroot ]
            --pam service |
            --cred user:pass |
            --cred random |
            --auth class [ --auth key=val ]
          [ --verbose ]
 % aeftpd --version
 % aeftpd --help


This program starts an FTP daemon using the perl library AnyEvent::FTP::Server.


--port port

The TCP port to listen to.

--hostname hostname

The hostname or IP address to listen on.


Run in inet mode. By default aeftpd runs as a single process in standalone mode. By using this option you can run aeftp from inetd, xinetd or similar daemon. Here is a line for /etc/inetd.conf which was tested on Debian Wheezy, and may work for you if your operating system supports PAM and you have Authen::Simple::PAM installed.

 ftp stream tcp nowait root /usr/sbin/tcpd aeftpd --inet --stderr /tmp/aeftp.log --pam login

--stderr path

Redirect stderr from the daemon to the file specified by the given path


Use chroot to restrict the user to only his home directory once he has logged in. This option requires the chroot function, which is supported by Perl on most UNIX and UNIX like operating systems.

--cred [ user:pass | random ]

Allow authentication with the given username and password. If you specify random then a randomly generated username and password will be used.

--auth class

Specify a Authen::Simple class to use for authentication. You should NOT include the Authen::Simple prefix when specifying the class (that is use PAM instead of Authen::Simple::PAM).

--auth key=val

Specify an argument to pass into the chosen Authen::Simple object.

--pam service

Use PAM for authentication. This option is simply a shortcut. This:

 % aeftpd --pam login

is the same as

 % aeftpd --auth PAM --auth service=login


Print all FTP commands and their responses to stderr.

--context context

Set the default context. The default is FSRW.


Print out the AnyEvent::FTP version to stdout and exit.


Display the usage for this command.


Author: Graham Ollis <plicease@cpan.org>


Ryo Okamoto

Shlomi Fish

José Joaquín Atria


This software is copyright (c) 2017-2021 by Graham Ollis.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.