Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

On a server with proftpd controlled by xinetd (plesk/centos FWIW), I want to make proftpd listen only on a specific ip address.

I've tried putting bind = in /etc/xinetd.d/ftp_psa, and also putting DefaultAddress in /etc/proftpd.conf, but it seems not to work.

After I restart xinetd, nmap shows that port 21 is still being listened on for my other public ip.

Can anyone tell me what I'm doing wrong?

Just as a test I commented out the whole ftp service in the xinetd config file and that did disable the service, so I'm clearly in the right place, but the bind options seems not to work.

Thanks in advance

UPDATE: config files (munis comments for brevity)



service ftp
    flags       = IPv6
        disable     = no
    socket_type     = stream
        protocol        = tcp
        wait            = no
        user            = root
        instances       = UNLIMITED
        server          = /usr/sbin/in.proftpd
        server_args     = -c /etc/proftpd.conf
        bind            =

I know it says here not to modify, but I haven't done a plesk upgrade, and I've also tried putting the bind in the defaults section (which has no such warning):


    log_type    = SYSLOG daemon info
    log_on_failure  = HOST
    log_on_success  = PID HOST DURATION EXIT
    cps     = 50 10
    instances   = 50
    per_source  = 10
    v6only      = no
    groups      = yes
    umask       = 002
    bind            =

includedir /etc/xinetd.d

And for completeness: /etc/proftpd.conf

ServerIdent off
ServerName          "ProFTPD"
ServerType          inetd
DefaultServer           on
DefaultRoot ~       psacln
AllowOverwrite      on
DefaultTransferMode binary
UseFtpUsers         on
TimesGMT            off
SetEnv TZ :/etc/localtime
Port                21
SocketBindTight     on
Umask               022
MaxInstances            30
ScoreboardFile /var/run/proftpd/scoreboard
TransferLog /usr/local/psa/var/log/xferlog
<Directory /var/www/vhosts>
    GroupOwner  psacln
AuthPAM on
AuthPAMConfig proftpd
IdentLookups off
UseReverseDNS off
AuthGroupFile   /etc/group
share|improve this question

closed as off-topic by EEAA Jun 27 at 3:41

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.

Could share the full ftp_psa fle with us? – Alexander Janssen Oct 18 '12 at 13:23
@AlexanderJanssen: I've updated the question. – DaedalusFall Oct 18 '12 at 13:43
What process is listening on port 21? Is it xinetd? (Double check with lsof or fuser or something like that.) – David Schwartz Oct 18 '12 at 16:12
Yes it is xinetd (according to lsof). – DaedalusFall Oct 19 '12 at 12:53

What version of CentOS are you using? I just tried CentOS 6.3. The xinetd-file is called /etc/xinetd.d/xproftpd, needs to be enabled with setting disable=no in the file and by saying chkconfig proftpd on. I only need to set bind = to let proftpd listen only to this address. No need to tune proftpd.conf any further.

After changing bind to a distinct value, I wasn't able to connect to any other IP-address any more. Not even localhost.


# default: off
# description: The ProFTPD FTP server serves FTP connections. It uses \
#   normal, unencrypted usernames and passwords for authentication.
service ftp
    socket_type     = stream
    wait            = no
    user            = root
    server          = /usr/sbin/in.proftpd
    log_on_success      += DURATION USERID
    log_on_failure      += USERID
    nice            = 10
    disable         = no
    bind            =


# chkconfig --list proftpd
proftpd         0:off   1:off   2:on    3:on    4:on    5:on    6:off

/etc/proftpd.conf is still at it's defaults, except setting ServerType inetd to make it work with xinetd.

share|improve this answer
I'm using CentOS 5.3. chkconfig doesn't seem to know about proftpd. My uneducated guess is that its a problem caused by plesk. Sometimes it seems like most of my problems are caused by plesk. – DaedalusFall Oct 22 '12 at 13:06

Not the answer you're looking for? Browse other questions tagged or ask your own question.