Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am having problems with ProFTPD since I upgraded to Ubuntu 9.10 from 9.04.

When I login as my ftp user (userftp) in the terminal I can create dirs fine in their home dir. But when I use ftp as this user permission is denied (550 asl: permission denied) when I try and do the same operation (creating a dir). Uploading files is fine though.

I am using the same config for proftpd as I was before, I can't understand what's wrong. Any help appreciated!

Config follows:

Include /etc/proftpd/modules.conf

UseIPv6 on
IdentLookups off

ServerName "whatever"
ServerType inetd 
DeferWelcome off

MultilineRFC2228 on 
DefaultServer on 
ShowSymlinks on

TimeoutNoTransfer 600 
TimeoutStalled 600 
TimeoutIdle 1200

DisplayLogin welcome.msg 
DisplayChdir .message true 
ListOptions "-l"

DenyFilter \*.*/

DefaultRoot ~

Port 21

<IfModule mod_dynmasq.c>
</IfModule>

MaxInstances 8

User proftpd
Group nogroup

Umask 022 022
AllowOverwrite on

TransferLog /var/log/proftpd/xferlog 
SystemLog /var/log/proftpd/proftpd.log

<IfModule mod_quotatab.c> QuotaEngine off </IfModule>

<IfModule mod_ratio.c> Ratios off </IfModule>


<IfModule mod_delay.c> DelayEngine on </IfModule>

<IfModule mod_ctrls.c>
ControlsEngine off 
ControlsMaxClients 2 
ControlsLog /var/log/proftpd/controls.log 
ControlsInterval 5 
ControlsSocket /var/run/proftpd/proftpd.sock 
</IfModule>

<IfModule mod_ctrls_admin.c> 
AdminControlsEngine off 
</IfModule>


#
# My additions
# 
MaxLoginAttempts 5

#
# My user config
#
#VALID LOGINS 
<Limit LOGIN> 
AllowUser userftp DenyALL 
</Limit>

<Directory /home/userftp> 
Umask 022 022 
AllowOverwrite off 
<Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD> DenyAll </Limit> 
</Directory>

<Directory /home/userftp/upload/> 
Umask 022 022 
AllowOverwrite on 
<Limit READ> 
DenyAll 
</Limit>

<Limit STOR CWD MKD RMD DELE>
AllowAll 
</Limit> 
</Directory>
share|improve this question
add comment

1 Answer

Ok after some trial and error I found the solution.

I needed to add the commands XRMD and XMKD to those allowed by the user. They are described as X-Variants of the commands RMD and MKD and are apparently "often missing from a thorough configuration" according to http://www.castaglia.org/proftpd/doc/contrib/ProFTPD-mini-HOWTO-Limit.html

So perhaps somewhere in my system these commands are now being used instead.

The end of my config now reads:

<Directory /home/userftp/upload>
Umask 022 022
AllowOverwrite on
    <Limit READ>
        DenyAll
        </Limit>

        <Limit STOR CWD MKD RMD DELE XRMD XMKD>
        AllowAll
        </Limit>
</Directory>
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.