Bug 2104972

Summary: proftpd hides entries in root directory beginning with a DefaultRoot value
Product: [Fedora] Fedora EPEL Reporter: Dennis <dbmelnikov>
Component: proftpdAssignee: Paul Howarth <paul>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: epel7CC: ingvar, matthias, paul
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: proftpd-1.3.5e-12.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-08-10 00:43:33 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Dennis 2022-07-07 15:27:58 UTC
Description of problem:
A FTP client does not see entries in a root directory with names beginning with a DefaultRoot value, i.e.:
when DefaultRoot is /store
entries like '/store/store', '/store/storeanything' are invisible for clients.
When renamed to /store/smth_else they appear.

Version-Release number of selected component (if applicable):
proftpd-1.3.5e-11.el7

Additional info:
/etc/proftpd.conf:

ServerName                      "ProFTPD server"
ServerIdent                     on "FTP Server ready."
ServerAdmin                     root@localhost
DefaultServer                   on
DefaultRoot                     /store
HiddenStores                    on
DeleteAbortedStores             on
AuthPAM                         off
AuthPAMConfig                   proftpd
AuthOrder                       mod_ldap.c
PersistentPasswd                off
UseReverseDNS                   off
User                            nobody
Group                           nobody
MaxInstances                    20
UseSendfile                     off
LogFormat                       default "%h %l %u %t \"%r\" %s %b"
LogFormat                       auth    "%v [%P] %h %t \"%r\" %s"
LoadModule      mod_ldap.c
LDAPServer      ldap3.local.net
LDAPUsers       ou=People,dc=local,dc=net (uid=%u) (uidNumber=%u)
RequireValidShell       off
LoadModule                      mod_ctrls_admin.c
LoadModule                      mod_vroot.c
ModuleControlsACLs              insmod,rmmod allow user root
ModuleControlsACLs              lsmod allow user *
ControlsEngine                  on
ControlsACLs                    all allow user root
ControlsSocketACL               allow user *
ControlsLog                     /var/log/proftpd/controls.log
<IfModule mod_ctrls_admin.c>
  AdminControlsEngine           on
  AdminControlsACLs             all allow user root
</IfModule>
<IfModule mod_vroot.c>
  VRootEngine                   on
</IfModule>
<IfDefine TLS>
  TLSEngine                     on
  TLSRequired                   on
  TLSRSACertificateFile         /etc/pki/tls/certs/local_net.crt
  TLSRSACertificateKeyFile      /etc/pki/tls/private/local_net.key
  TLSCipherSuite                ALL:!ADH:!DES
  TLSOptions                    NoCertRequest
  TLSVerifyClient               off
  TLSLog                        /var/log/proftpd/tls.log
  <IfModule mod_tls_shmcache.c>
    TLSSessionCache             shm:/file=/var/run/proftpd/sesscache
  </IfModule>
</IfDefine>
<IfDefine DYNAMIC_BAN_LISTS>
  LoadModule                    mod_ban.c
  BanEngine                     on
  BanLog                        /var/log/proftpd/ban.log
  BanTable                      /var/run/proftpd/ban.tab
  BanOnEvent                    MaxLoginAttempts 2/00:10:00 01:00:00
  BanMessage                    "Host %a has been banned"
  BanControlsACLs               all allow user ftpadm
</IfDefine>
<IfDefine QOS>
  LoadModule                    mod_qos.c
  QoSOptions                    dataqos throughput ctrlqos lowdelay
</IfDefine>
<Global>
  Umask                         0000
  AllowOverwrite                yes
  <Limit ALL SITE_CHMOD>
    AllowAll
  </Limit>
</Global>
<IfDefine ANONYMOUS_FTP>
  <Anonymous ~ftp>
    User                        ftp
    Group                       ftp
    AccessGrantMsg              "Anonymous login ok, restrictions apply."
    UserAlias                   anonymous ftp
    MaxClients                  10 "Sorry, max %m users -- try again later"
    DisplayLogin                /welcome.msg
    DisplayChdir                .message
    DisplayReadme               README*
    DirFakeUser                 on ftp
    DirFakeGroup                on ftp
    <Limit WRITE SITE_CHMOD>
      DenyAll
    </Limit>
    <IfModule mod_vroot.c>
      <Directory /uploads/*>
        AllowOverwrite          no
        <Limit READ>
          DenyAll
        </Limit>
        <Limit STOR>
          AllowAll
        </Limit>
      </Directory>
    </IfModule>
    <IfModule !mod_vroot.c>
      <Directory uploads/*>
        AllowOverwrite          no
        <Limit READ>
          DenyAll
        </Limit>
        <Limit STOR>
          AllowAll
        </Limit>
      </Directory>
    </IfModule>
    WtmpLog                     off
    ExtendedLog                 /var/log/proftpd/access.log WRITE,READ default
    ExtendedLog                 /var/log/proftpd/auth.log AUTH auth
  </Anonymous>
</IfDefine>

Comment 1 Fedora Update System 2022-08-01 13:16:41 UTC
FEDORA-EPEL-2022-2eb0ae90f4 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-2eb0ae90f4

Comment 2 Paul Howarth 2022-08-01 13:19:37 UTC
Please give this update a try and let me know if it all works OK for you.

Comment 3 Dennis 2022-08-01 15:04:21 UTC
The update does work!

Comment 4 Fedora Update System 2022-08-02 01:25:57 UTC
FEDORA-EPEL-2022-2eb0ae90f4 has been pushed to the Fedora EPEL 7 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-2eb0ae90f4

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 5 Fedora Update System 2022-08-10 00:43:33 UTC
FEDORA-EPEL-2022-2eb0ae90f4 has been pushed to the Fedora EPEL 7 stable repository.
If problem still persists, please make note of it in this bug report.