#acl All:read <> = IPv6 capable vsftpd FTP server = vsftpd is a small, fast and secure FTP server. Project homapage: http://vsftpd.beasts.org vsftpd is able to compile and run on the following platforms: * Fedora Core * !RedHat Linux * !RedHat Enterprise Linux * Solaris / GNU tools (Solaris 8 or newer) * SuSE Linux * Debian Linux * OpenBSD * FreeBSD * NetBSD * HP-UX / GNU tools * IRIX / GNU tools * AIX / GNU tools * Mac OS The following description was made using Debian Linux and AIX operating systems. == IPv6 capable vsftpd compilation and installation in general == vsftpd source will compile without any serious problems on any well maintaned and updated operating system. In order to compile, use {{{make}}} command. For detailed installation information, please see INSTALL text file included in the source package. == IPv6 configuration of vsftpd == After a successful installation in order to enable the IPv6 protocol, edit vsftpd.conf configuration file in the following way: {{{ ... #listen=YES listen_ipv6=YES ... }}} Comment {{{listen}}} parameter and enable {{{listen_ipv6=YES}}} setting. After this is done and vsftpd is restarted, the server will be reachable using both IPv4 and IPv6 protocols. In case using inetd daemon you will need the following line in {{{inetd.conf}}} configuration file to enable IPv6: {{{ ftp stream tcp6 nowait root /usr/local/sbin/vsftpd }}} When using this configuration, the server will only be reachable through the IPv6 protocol. If IPv4 reachability is needed, use the IPv4 (tcp4) version of the above configuration line. == Compilation and installation on AIX systems == This description is about of a combination of AIX 4.3.3 and vsftpd 1.2.1. When using version combinations other than this, misbehaviour is possible. In order to compile, you will need gcc and GNU make. By issuing {{{make}}} command, the software will compile and will be usable for IPv4 FTP services. On newer AIX versions, a need for a slight modification of the source code is likely: in {{{sysdeputil.c}}} file, near line 112 {{{ #undefine VSF_SYSDEP_HAVE_PAM }}} should be modified to: {{{ #define VSF_SYSDEP_HAVE_PAM }}} With this setting, authentication will work through PAM. In this case manual linking of PAM library is needed, the very last linking should be repeated: {{{ gcc -o vsftpd main.o utility.o prelogin.o ftpcmdio.o postlogin.o privsock.o tunables.o ftpdataio.o secbuf.o ls.o postprivparent.o logging.o str.o netstr.o sysstr.o strlist.o banner.o filestr.o parseconf.o secutil.o ascii.o oneprocess.o twoprocess.o privops.o standalone.o hash.o tcpwrap.o ipv6parse.o access.o sysutil.o sysdeputil.o -Wl,-s ./vsf_findlibs.sh -lpam }}} === IPv6 configuration on AIX === In case IPv4 passive FTP mode does not work after enabling {{{listen_ipv6=YES}}} setting in standalone mode, it is adviced to disable it by this configuration line (this is just a workaround): {{{ pasv_enable=NO }}} If the FTP connection freezes right after the authentication or it is unable to receive further commands, it's worth to give a try to link libraries with AIX's own C compiler, similarly to PAM's case (see above). In this case gcc library should be linked to the software by hand as the following: {{{ xlc_r -o vsftpd main.o utility.o prelogin.o ftpcmdio.o postlogin.o privsock.o tunables.o ftpdataio.o secbuf.o ls.o postprivparent.o logging.o str.o netstr.o sysstr.o strlist.o banner.o filestr.o parseconf.o secutil.o ascii.o oneprocess.o twoprocess.o privops.o standalone.o hash.o tcpwrap.o ipv6parse.o access.o sysutil.o sysdeputil.o -Wl,-s ./vsf_findlibs.sh -L/usr/local/lib -lpam -L/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/2.95.3 -lgcc }}}