PDA

View Full Version : PureFTPd on ISPConfig 3 won't connect


gawehner
18th September 2009, 21:19
I followed the "The Perfect Server - Ubuntu 9.04 " how-to to set up my home web server. Everything seems to work fine with the exception of FTP. I created a client and a website and can browse to the default website. I then created an FTP user and navigated to user@domain with no success. I don't even get the login page - just an "The connection has timed out" error. I have port 21 forwarded on my router and open on fail2ban. Any ideas?

Here is my [I]netstat -tap | grep ftp output:
tcp 0 0 *:ftp *:* LISTEN 8032/pure-ftpd (SER
tcp6 0 0 [::]:ftp [::]:* LISTEN 8032/pure-ftpd (SER


Here is my iptables -L | grep ftp output:
Chain PUB_IN (4 references)
PAROLE tcp -- anywhere anywhere tcp dpt:ftp-data
PAROLE tcp -- anywhere anywhere tcp dpt:ftp


/etc/pure-ftpd/db/mysql.conf reads:
##############################################
# #
# Sample Pure-FTPd Mysql configuration file. #
# See README.MySQL for explanations. #
# #
##############################################


# Optional : MySQL server name or IP. Don't define this for unix sockets.

MYSQLServer 127.0.0.1


# Optional : MySQL port. Don't define this if a local unix socket is used.

# MYSQLPort 3306


# Optional : define the location of mysql.sock if the server runs on this host.

# MYSQLSocket /var/run/mysqld/mysqld.sock


# Mandatory : user to bind the server as.

MYSQLUser ispconfig


# Mandatory : user password. You must have a password.

MYSQLPassword mypassword


# Mandatory : database to open.

MYSQLDatabase dbispconfig


# Mandatory : how passwords are stored
# Valid values are : "cleartext", "crypt", "md5" and "password"
# ("password" = MySQL password() function)
# You can also use "any" to try "crypt", "md5" *and* "password"

MYSQLCrypt crypt


# In the following directives, parts of the strings are replaced at
# run-time before performing queries :
#
# \L is replaced by the login of the user trying to authenticate.
# \I is replaced by the IP address the user connected to.
# \P is replaced by the port number the user connected to.
# \R is replaced by the IP address the user connected from.
# \D is replaced by the remote IP address, as a long decimal number.
#
# Very complex queries can be performed using these substitution strings,
# especially for virtual hosting.


# Query to execute in order to fetch the password

MYSQLGetPW SELECT password FROM ftp_user WHERE active = 'y' AND server_id = '1' AND username="\L"


# Query to execute in order to fetch the system user name or uid

MYSQLGetUID SELECT uid FROM ftp_user WHERE active = 'y' AND server_id = '1' AND username="\L"


# Optional : default UID - if set this overrides MYSQLGetUID

#MYSQLDefaultUID 1000


# Query to execute in order to fetch the system user group or gid

MYSQLGetGID SELECT gid FROM ftp_user WHERE active = 'y' AND server_id = '1' AND username="\L"


# Optional : default GID - if set this overrides MYSQLGetGID

#MYSQLDefaultGID 1000


# Query to execute in order to fetch the home directory

MYSQLGetDir SELECT dir FROM ftp_user WHERE active = 'y' AND server_id = '1' AND username="\L"


# Optional : query to get the maximal number of files
# Pure-FTPd must have been compiled with virtual quotas support.

MySQLGetQTAFS SELECT quota_files FROM ftp_user WHERE active = 'y' AND server_id = '1' AND quota_files != '-1' AND username="\L"


# Optional : query to get the maximal disk usage (virtual quotas)
# The number should be in Megabytes.
# Pure-FTPd must have been compiled with virtual quotas support.

MySQLGetQTASZ SELECT quota_size FROM ftp_user WHERE active = 'y' AND server_id = '1' AND quota_files != '-1' AND username="\L"


# Optional : ratios. The server has to be compiled with ratio support.

MySQLGetRatioUL SELECT ul_ratio FROM ftp_user WHERE active = 'y' AND server_id = '1' AND quota_files != '-1' AND username="\L"
MySQLGetRatioDL SELECT dl_ratio FROM ftp_user WHERE active = 'y' AND server_id = '1' AND quota_files != '-1' AND username="\L"


# Optional : bandwidth throttling.
# The server has to be compiled with throttling support.
# Values are in KB/s .

MySQLGetBandwidthUL SELECT ul_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '1' AND quota_files != '-1' AND username="\L"
MySQLGetBandwidthDL SELECT dl_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '1' AND quota_files != '-1' AND username="\L"

# Enable ~ expansion. NEVER ENABLE THIS BLINDLY UNLESS :
# 1) You know what you are doing.
# 2) Real and virtual users match.

# MySQLForceTildeExpansion 1


# If you upgraded your tables to transactionnal tables (Gemini,
# BerkeleyDB, Innobase...), you can enable SQL transactions to
# avoid races. Leave this commented if you are using the
# traditionnal MyIsam databases or old (< 3.23.x) MySQL versions.

MySQLTransactions On


Finally, my mysql entry for dbispconfig.ftp_user is:
ftp_user_id = 1
sys_userid = 1
sys_groupid = 2
sys_perm_user = 'riud'
sys_perm_group = 'riud'
sys_perm_other = ''
server_id = 1
parent_domain_id = 1
username = my username
password = my encryped password
quota_size = -1
active = 'y'
uid = 'web1'
gid = 'client1'
dir = '/var/www/clients/client1/web1'
quota_files = -1
ul_ratio = -1
dl_ratio = -1
ul_bandwidth = -1
dl_bandwidth = -1

What am I missing?

Thank you for helping this new guy out!

falko
19th September 2009, 21:42
Is this a physical server or a virtual machine?

gawehner
20th September 2009, 04:22
My system is a physical server. Just a additional bit of info, when I enter myuser@myipaddress (as opposed to myuser@mydomain) from my home network I get a blank white screen, but no login prompt or any other indication that I am on a ftp page.

Greg

gawehner
21st September 2009, 22:06
Also, my syslog is spewing this (I have it on a 5min refresh in ispconfig right now)

Sep 21 14:02:26 LittleBox kernel: [262664.090227] php[2383]: segfault at b6d2e760 ip b6d2e760 sp b6ca039c error 4 in librt-2.9.so[b7047000+7000]
Sep 21 14:05:02 LittleBox pure-ftpd: (?@localhost) [INFO] New connection from localhost
Sep 21 14:05:02 LittleBox pure-ftpd: (?@localhost) [INFO] Logout.
Sep 21 14:10:01 LittleBox pure-ftpd: (?@localhost) [INFO] New connection from localhost
Sep 21 14:10:01 LittleBox pure-ftpd: (?@localhost) [INFO] Logout.
Sep 21 14:15:01 LittleBox pure-ftpd: (?@localhost) [INFO] New connection from localhost
Sep 21 14:15:01 LittleBox pure-ftpd: (?@localhost) [INFO] Logout.
Sep 21 14:20:02 LittleBox pure-ftpd: (?@localhost) [INFO] New connection from localhost
Sep 21 14:20:02 LittleBox pure-ftpd: (?@localhost) [INFO] Logout.

It's repeating this series over and over again.

falko
22nd September 2009, 17:11
Did you try both active and passive transfers in your FTP client?

gawehner
22nd September 2009, 18:22
Nothing in either mode.

Jolman
8th October 2009, 17:09
Did you try both active and passive transfers in your FTP client?

I have same problem please help!!! I can't login on FTP it can't accept remote connnection.
I have not installed the iptables and remove apparmor when installing ISPConfig 3.


In the syslog:

Oct 9 06:50:01 server pure-ftpd: (?@localhost) [INFO] New connection from localhost
Oct 9 06:50:01 server pure-ftpd: (?@localhost) [INFO] Logout.

Jolman
8th October 2009, 17:47
I have same problem please help!!! I can't login on FTP it "reject" connnection

I can login from localhost but can't remote. I have not installed the iptables and remove apparmor when installing ISPConfig 3. I check my hosts.deny nothing. Pleas help with that i can't resolve this problem alone :(

gawehner
8th October 2009, 19:39
Just a couple of updates. I thought the problem might be that port 20 was blocked somewhere, but after going through my router, my server's iptables and my firewall settings again I confirmed that ports 20 and 21 are open. I tried rebuilding the machine with both proftpd and vsfptd and without any ftp server. ISPConfig doesn't look for anything but pureftpd, even thought the main page says it supports the other two. I doesn't even recognize if an ftp server isn't installed. While the only thing it does is produce an error message on the Monitor tab, this annoys me to no end. Now I have to either keep a service running that I can't connect to or keep ISPConfig with an constant error message in the Monitor tab. Pureftpd works on localhost if I set up a "real" user, but the virtual authentication and remote connection is a no-go. At this point I'm giving up and switching to OpenSuSE and trying something else.

dpnux
22nd October 2009, 09:39
I found that the problem has been resolved by Till on this thread

http://www.howtoforge.org/forums/showthread.php?p=205926

I have same problem, after adding DontResolve in pureftpd conf. Everything works fine now.

gawehner
22nd October 2009, 21:05
Thanks for the update, but that didn't do the trick for me. Added DontResolve to /etc/pure-ftpd/conf with the value of yes - made sure all permissions matched existing conf files and restarted service. Same results. Thanks anyway!

arfal
11th June 2010, 12:41
Hi,

I'm having the same issue, I just upgrade the pure-ftpd and it works like a charm :)