proftpd on OPENSUSE 11.1

I installed proftpd on my opensuse 11.1 and since I needed a personal FTP server, I followed the steps on “THE PERFECT SERVER” series.

The Perfect Server - OpenSUSE 11.1 - Page 5 | HowtoForge - Linux Howtos and Tutorials

I installed proftpd-1.3.2a, and everything on the installation went perfect, but when I try to log, after accepting the user name and password, it stops and I have this output: (from filezilla)


Status:	Connecting to 173.9.150.165:21...
Status:	Connection established, waiting for welcome message...
Response:	220 Shark Signs Server
Command:	USER (*******)
Response:	331 Password required for (********)
Command:	PASS ********
Response:	230 User (*******) logged in
Command:	SYST
Response:	215 UNIX Type: L8
Command:	FEAT
Response:	211-Features:
Response:	 MDTM
Response:	 MFMT
Response:	 MFF modify;UNIX.group;UNIX.mode;
Response:	 MLST modify*;perm*;size*;type*;unique*;UNIX.group*;UNIX.mode*;UNIX.owner*;
Response:	 REST STREAM
Response:	 SIZE
Response:	211 End
Status:	Connected
Status:	Retrieving directory listing...
Command:	PWD
Response:	257 "/" is the current directory
Command:	TYPE I
Response:	200 Type set to I
Command:	PASV
Response:	227 Entering Passive Mode (173,9,150,165,221,181).
Command:	LIST
Error:	Connection timed out
Error:	Failed to retrieve directory listing

The username has been *** for security reasons.

This is my proftpd.conf


ServerName			"Shark Signs Server"
ServerType			standalone
DefaultServer			on

Port				21

UseIPv6				off

Umask				022

MaxInstances			30

User				nobody
Group				ftp-users


AllowOverwrite		on

<Limit SITE_CHMOD>
  DenyAll
</Limit>


  UserAlias			anonymous ftp

  MaxClients			10

  DisplayLogin			welcome.msg
  DisplayChdir			.message

#  <Limit WRITE>
#    DenyAll
#  </Limit>

DefaultRoot ~
IdentLookups off
ServerIdent on "Shark Signs Server"

TimeoutNoTransfer 900

Does anybody know how to resolve that MLSD problem?

Are you trying to connect to a server behind a NAT firewall? You need connection tracking rules to handle FTP servers. This can be done on Linux firewalls with the conntrack_ftp and nat_ftp modules but I don’t know how it would be done on a non-Linux firewall.

the only firewall I’m running is the one in Opensuse. how do I install and use those modules to allow the ftp server to run properly?

You need to load nf_conntrack_ftp. Add this to MODULES_LOADED_ON_BOOT in /etc/sysconfig/kernel.