Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ftp user in same group can not upload file #1801

Open
linuxsch opened this issue Apr 29, 2024 · 6 comments
Open

ftp user in same group can not upload file #1801

linuxsch opened this issue Apr 29, 2024 · 6 comments

Comments

@linuxsch
Copy link

linuxsch commented Apr 29, 2024

What I Did

  1. proftpd run with pftpuser(User) and pftpgroup(Group)
  2. user app: uid=5002(app) gid=5002(app) groups=5002(app),2001(pftpgroup)
  3. user pftpuser: uid=2001(pftpuser) gid=2001(pftpgroup) groups=2001(pftpgroup),5002(app)
  4. create subdir temp with user app in /home/pftpuser/test
  5. /home/pftpuser/test/temp mask is: drwxrwxr-x 2 app app 6 Apr 29 17:08 temp
  6. when i upload a file, Permission denied:
dispatching CMD command 'STOR flv.js-1.7.0.tar.bz2' to mod_vroot
dispatching CMD command 'STOR flv.js-1.7.0.tar.bz2' to mod_xfer
unable to open 'flv.js-1.7.0.tar.bz2' for writing: Permission denied
  1. old proftpd version in rockylinux8 have no problem.

ProFTPD Version and Configuration

# proftpd -V
Compile-time Settings:
  Version: 1.3.8b (maint)
  Platform: LINUX [Linux 5.14.0-362.24.1.el9_3.0.1.x86_64 x86_64]
  OS/Release:
    NAME="Rocky Linux"
    VERSION="9.3 (Blue Onyx)"
    ID="rocky"
    ID_LIKE="rhel centos fedora"
    VERSION_ID="9.3"
    PLATFORM_ID="platform:el9"
    PRETTY_NAME="Rocky Linux 9.3 (Blue Onyx)"
    CPE_NAME="cpe:/o:rocky:rocky:9::baseos"
    SUPPORT_END="2032-05-31"
    ROCKY_SUPPORT_PRODUCT="Rocky-Linux-9"
    ROCKY_SUPPORT_PRODUCT_VERSION="9.3"
    REDHAT_SUPPORT_PRODUCT="Rocky Linux"
    REDHAT_SUPPORT_PRODUCT_VERSION="9.3"
  Built: Sun Mar 31 2024 00:00:00 UTC
  Built With:
    configure  '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--libexecdir=/usr/libexec/proftpd' '--localstatedir=/run/proftpd' '--disable-strip' '--enable-ctrls' '--enable-dso' '--enable-facl' '--enable-ipv6' '--enable-memcache' '--enable-nls' '--enable-openssl' '--disable-pcre' '--enable-pcre2' '--enable-sodium' '--disable-redis' '--enable-shadow' '--enable-tests=nonetwork' '--with-libraries=/usr/lib64/mariadb' '--with-includes=/usr/include/mysql' '--with-modules=mod_readme:mod_auth_pam:mod_tls' '--with-shared=mod_sql:mod_sql_passwd:mod_sql_mysql:mod_sql_postgres:mod_sql_sqlite:mod_quotatab:mod_quotatab_file:mod_quotatab_ldap:mod_quotatab_radius:mod_quotatab_sql:mod_ldap:mod_ban:mod_ctrls_admin:mod_facl:mod_load:mod_vroot:mod_radius:mod_ratio:mod_rewrite:mod_site_misc:mod_exec:mod_shaper:mod_wrap2:mod_wrap2_file:mod_wrap2_sql:mod_copy:mod_deflate:mod_ifversion:mod_qos:mod_sftp:mod_sftp_pam:mod_sftp_sql:mod_tls_shmcache:mod_tls_memcache:mod_proxy:mod_unique_id:mod_ifsession' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'CC=gcc' 'CFLAGS=-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' 'LDFLAGS=-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 ' 'CXX=g++' 'CXXFLAGS=-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'

  CFLAGS: -g2 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wall -fno-omit-frame-pointer -fno-strict-aliasing -Werror=implicit-function-declaration
  LDFLAGS: -Wl,-L$(top_srcdir)/lib,-L$(top_builddir)/lib -Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -rdynamic -L/usr/lib64/mariadb -L/usr/lib64/ -L/usr/lib64
  LIBS: -lacl  -lpcre2-posix -lpcre2-8 -lssl -lcrypto -lsodium -lcap  -lssl -lcrypto  -lpam -lattr -lidn2 -lresolv -lresolv -lcrypt -lmemcachedutil -lmemcached  -pthread

  Files:
    Configuration File:
      /etc/proftpd.conf
    Pid File:
      /run/proftpd/proftpd.pid
    Scoreboard File:
      /run/proftpd/proftpd.scoreboard
    Header Directory:
      /usr/include/proftpd
    Shared Module Directory:
      /usr/libexec/proftpd

  Info:
    + Max supported UID: 4294967295
    + Max supported GID: 4294967295

  Features:
    - Autoshadow support
    + Controls support
    + curses support
    - Developer support
    + DSO support
    + IPv6 support
    + Largefile support
    - Lastlog support
    + Memcache support
    + ncursesw support
    + NLS support
    + OpenSSL support (OpenSSL 3.0.7 1 Nov 2022)
    - PCRE support
    + PCRE2 support
    + POSIX ACL support
    - Redis support
    + Sendfile support
    + Shadow file support
    + Sodium support
    + Trace support
    + xattr support

  Tunable Options:
    PR_TUNABLE_BUFFER_SIZE = 1024
    PR_TUNABLE_DEFAULT_RCVBUFSZ = 8192
    PR_TUNABLE_DEFAULT_SNDBUFSZ = 8192
    PR_TUNABLE_ENV_MAX = 2048
    PR_TUNABLE_GLOBBING_MAX_MATCHES = 100000
    PR_TUNABLE_GLOBBING_MAX_RECURSION = 8
    PR_TUNABLE_HASH_TABLE_SIZE = 40
    PR_TUNABLE_LOGIN_MAX = 256
    PR_TUNABLE_NEW_POOL_SIZE = 512
    PR_TUNABLE_PATH_MAX = 4096
    PR_TUNABLE_SCOREBOARD_BUFFER_SIZE = 80
    PR_TUNABLE_SCOREBOARD_SCRUB_TIMER = 30
    PR_TUNABLE_SELECT_TIMEOUT = 30
    PR_TUNABLE_TIMEOUTIDENT = 10
    PR_TUNABLE_TIMEOUTIDLE = 600
    PR_TUNABLE_TIMEOUTLINGER = 10
    PR_TUNABLE_TIMEOUTLOGIN = 300
    PR_TUNABLE_TIMEOUTNOXFER = 300
    PR_TUNABLE_TIMEOUTSTALLED = 3600
    PR_TUNABLE_XFER_SCOREBOARD_UPDATES = 10
@cfiehe
Copy link

cfiehe commented Apr 29, 2024

Hi @linuxsch,
may it be possible to update to the most recent version of ProFTPD and mod_vroot?

@Castaglia was so nice and implemented some fixes that may help to solve the issue you are confronted with:

Regards,
Christoph

@Castaglia
Copy link
Member

@linuxsch Would it be possible to see the ProFTPD configuration you are using, and perhaps the ProFTPD debug logging, debug level 10, generated from one of these failed uploads? Thanks!

@linuxsch
Copy link
Author

@Castaglia

BTW, same configuration in rockylinux-8.9 + proftpd-1.3.6e, no problem for upload file.

more /etc/proftpd.conf

# This is the ProFTPD configuration file
#
# See: http://www.proftpd.org/docs/directives/linked/by-name.html

# Security-Enhanced Linux (SELinux) Notes:
#
# In Fedora and Red Hat Enterprise Linux, ProFTPD runs confined by SELinux
# in order to mitigate the effects of an attacker taking advantage of an
# unpatched vulnerability and getting control of the ftp server. By default,
# ProFTPD cannot read or write most files on a system nor connect to many
# external network services, but these restrictions can be relaxed by
# setting SELinux booleans as follows:
#
# setsebool -P ftpd_anon_write=1
#   This allows the ftp daemon to write to files and directories labelled
#   with the public_content_rw_t context type; the daemon would only have
#   read access to these files normally. Files to be made available by ftp
#   but not writeable should be labelled public_content_t.
#   On older systems this boolean was called allow_ftpd_anon_write.
#
# setsebool -P ftpd_full_access=1
#   This allows the ftp daemon to read and write all files on the system.
#   On older systems this boolean was called allow_ftpd_full_access, and there
#   was a separate boolean ftp_home_dir to allow the ftp daemon access to
#   files in users' home directories.
#
# setsebool -P ftpd_use_cifs=1
#   This allows the ftp daemon to read and write files on CIFS-mounted
#   filesystems.
#   On older systems this boolean was called allow_ftpd_use_cifs.
#
# setsebool -P ftpd_use_fusefs=1
#   This allows the ftp daemon to read and write files on ntfs/fusefs-mounted
#   filesystems.
#
# setsebool -P ftpd_use_nfs=1
#   This allows the ftp daemon to read and write files on NFS-mounted
#   filesystems.
#   On older systems this boolean was called allow_ftpd_use_nfs.
#
# setsebool -P ftpd_connect_all_unreserved=1
#   This setting is only available from Fedora 16/RHEL-7 onwards, and is
#   necessary for active-mode ftp transfers to work reliably with non-Linux
#   clients (see http://bugzilla.redhat.com/782177), which may choose to
#   use port numbers outside the "ephemeral port" range of 32768-61000.
#
# setsebool -P ftpd_connect_db=1
#   This setting allows the ftp daemon to connect to commonly-used database
#   ports over the network, which is necessary if you are using a database
#   back-end for user authentication, etc.
#
# setsebool -P ftpd_use_passive_mode=1
#   This setting allows the ftp daemon to bind to all unreserved ports for
#   passive mode.
#
# All of these booleans are unset by default.
#
# See also the "ftpd_selinux" manpage.
#
# Note that the "-P" option to setsebool makes the setting permanent, i.e.
# it will still be in effect after a reboot; without the "-P" option, the
# effect only lasts until the next reboot.
#
# Restrictions imposed by SELinux are on top of those imposed by ordinary
# file ownership and access permissions; in normal operation, the ftp daemon
# will not be able to read and/or write a file unless *all* of the ownership,
# permission and SELinux restrictions allow it.

# Load DSO modules as required
Include /etc/proftpd/modules.conf

# Server Config - config used for anything outside a <VirtualHost> or <Global> context
# See: http://www.proftpd.org/docs/howto/Vhost.html

# Trace logging, disabled by default for performance reasons
# (http://www.proftpd.org/docs/howto/Tracing.html)
#TraceLog			/var/log/proftpd/trace.log
#Trace				DEFAULT:0

ServerName			"ProFTPD server"
ServerIdent			on "FTP Server ready."
ServerAdmin			root@localhost
DefaultServer		on

# Cause every FTP user except adm to be chrooted into their home directory
DefaultRoot			~ !adm

# Use pam to authenticate (default) and be authoritative
#AuthPAMConfig		proftpd
# AuthOrder			mod_auth_pam.c* mod_auth_unix.c
# If you use NIS/YP/LDAP you may need to disable PersistentPasswd
#PersistentPasswd		off

# Don't do reverse DNS lookups (hangs on DNS problems)
UseReverseDNS			off

# Set the user and group that the server runs as
User				pftpuser
Group				pftpgroup

# To prevent DoS attacks, set the maximum number of child processes
# to 20.  If you need to allow more than 20 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode; in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances		100

# Disable sendfile by default since it breaks displaying the download speeds in
# ftptop and ftpwho
UseSendfile			off

# Define the log formats
#LogFormat			default	"%h %l %u %t \"%r\" %s %b"
#LogFormat			auth	"%v [%P] %h %t \"%r\" %s"

LogFormat           default "%{iso8601} %h %l %u \"%r\" %s %b"
LogFormat           auth    "%{iso8601} %v [%P] %h \"%r\" %s"

# Don't log hostname or timestamps because systemd will do that for us
# LogOptions			-Timestamp -Hostname +RoleBasedProcessLabels
LogOptions          -Hostname

# Enable basic controls via ftpdctl
# (http://www.proftpd.org/docs/modules/mod_ctrls.html)
ControlsEngine			on
ControlsACLs			all allow user root
ControlsSocketACL		allow user *
ControlsLog			/var/log/proftpd/controls.log

# Enable admin controls via ftpdctl
# (http://www.proftpd.org/docs/contrib/mod_ctrls_admin.html)
<IfModule mod_ctrls_admin.c>
  AdminControlsEngine		on
  AdminControlsACLs		all allow user root
</IfModule>

# Enable mod_vroot by default for better compatibility with PAM
# (http://bugzilla.redhat.com/506735)
<IfModule mod_vroot.c>
  VRootEngine			on
</IfModule>

# TLS (http://www.castaglia.org/proftpd/modules/mod_tls.html)
# Enable this with PROFTPD_OPTIONS=-DTLS in /etc/sysconfig/proftpd
<IfDefine TLS>
Include /etc/proftpd/mod_tls.conf
</IfDefine>

# Dynamic ban lists (http://www.proftpd.org/docs/contrib/mod_ban.html)
# Enable this with PROFTPD_OPTIONS=-DDYNAMIC_BAN_LISTS in /etc/sysconfig/proftpd
<IfModule mod_ban.c>
Include /etc/proftpd/mod_ban.conf
</IfModule>

# Set networking-specific "Quality of Service" (QoS) bits on the packets used
# by the server (http://www.proftpd.org/docs/contrib/mod_qos.html)
<IfModule mod_qos.c>
Include /etc/proftpd/mod_qos.conf
</IfModule>

# Global Config - config common to Server Config and all virtual hosts
# See: http://www.proftpd.org/docs/howto/Vhost.html
<Global>
  SetEnv TZ "Asia/Shanghai"

  # Umask 022 is a good standard umask to prevent new dirs and files
  # from being group and world writable
  Umask				002

  # Allow users to overwrite files and change permissions
  AllowOverwrite    yes

  <Limit ALL SITE_CHMOD>
    AllowAll
  </Limit>

  ExtendedLog /var/log/proftpd/access.log WRITE,READ default
  ExtendedLog /var/log/proftpd/auth.log AUTH auth  
</Global>

# A basic anonymous configuration, with an upload directory
# Enable this with PROFTPD_OPTIONS=-DANONYMOUS_FTP in /etc/sysconfig/proftpd
<IfDefine ANONYMOUS_FTP>
  Include /etc/proftpd/anonftp.conf
</IfDefine>

LoadModule mod_sql.c
LoadModule mod_sql_passwd.c
LoadModule mod_deflate.c
LoadModule mod_sql_oracle.c

<IfModule mod_sql_oracle.c>
    SetEnv ORACLE_HOME /dbms/oracle/12c
    SetEnv LD_LIBRARY_PATH /dbms/oracle/12c/lib
    SetEnv TNS_ADMIN /dbms/oracle/12c/network/admin
</IfModule>

SystemLog   /var/log/proftpd/proftpd.log
UseIPv6 off

# Include other custom configuration files
Include /etc/proftpd/conf.d/*.conf

more /etc/proftpd/conf.d/ftp-2121.conf

ServerName "FTP Server"
DefaultRoot ~
Port 2121
ServerIdent off

#SQLLogFile /var/log/proftpd/sql.log
SQLAuthTypes Plaintext
CreateHome on 770 dirmode 770 NoRootPrivs
RequireValidShell off
SQLEngine on
SQLBackend oracle

SQLDefaultUID 2001
SQLDefaultGID 2001

SQLAuthenticate users
SQLConnectInfo mydb xxx xxx 5
SQLUserInfo UserInfo userid passwd null null HomeDir null 
SQLUserWhereClause "Status='Y'"

SyslogLevel INFO

proftpd -d10 -n

2024-04-30 08:53:54,637 phwl-130 proftpd[21484]: using PCRE2 10.40
2024-04-30 08:53:54,639 phwl-130 proftpd[21484]: using TCP receive buffer size of 131072 bytes
2024-04-30 08:53:54,640 phwl-130 proftpd[21484]: using TCP send buffer size of 16384 bytes
2024-04-30 08:53:54,640 phwl-130 proftpd[21484]: using 'en_US' locale based on LANG=en_US environment variable
2024-04-30 08:53:54,640 phwl-130 proftpd[21484]: using 'ISO-8859-1' as local charset for UTF-8 conversion
2024-04-30 08:53:54,640 phwl-130 proftpd[21484]: mod_tls/2.9.2: using OpenSSL 3.0.7 1 Nov 2022
2024-04-30 08:53:54,641 phwl-130 proftpd[21484]: mod_memcache/0.1: using libmemcached-1.1.0
2024-04-30 08:53:54,641 phwl-130 proftpd[21484]: ROOT PRIVS at mod_core.c:384
2024-04-30 08:53:54,641 phwl-130 proftpd[21484]: RELINQUISH PRIVS at mod_core.c:386
2024-04-30 08:53:54,641 phwl-130 proftpd[21484]: ROOT PRIVS at mod_core.c:393
2024-04-30 08:53:54,641 phwl-130 proftpd[21484]: ROOT PRIVS at parser.c:1207
2024-04-30 08:53:54,641 phwl-130 proftpd[21484]: mod_dso/0.5: loading 'mod_ctrls_admin.c'
2024-04-30 08:53:54,642 phwl-130 proftpd[21484]: mod_dso/0.5: loaded module 'mod_ctrls_admin' (from '/usr/libexec/proftpd/mod_ctrls_admin.so', last modified on Sun Mar 31 20:46:31 2024)
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: mod_dso/0.5: loading 'mod_vroot.c'
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: mod_dso/0.5: loaded module 'mod_vroot' (from '/usr/libexec/proftpd/mod_vroot.so', last modified on Sun Mar 31 20:46:31 2024)
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: <IfDefine>: skipping 'DYNAMIC_BAN_LISTS' section at line 155
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: <IfDefine>: skipping 'QOS' section at line 161
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: RELINQUISH PRIVS at parser.c:1210
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: RELINQUISH PRIVS at mod_core.c:396
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: retrieved UID 2001 for user 'pftpuser'
2024-04-30 08:53:54,643 phwl-130 proftpd[21484]: retrieved GID 2001 for group 'pftpgroup'
2024-04-30 08:53:54,644 proftpd[21484]: ROOT PRIVS at mod_ctrls.c:112
2024-04-30 08:53:54,644 proftpd[21484]: RELINQUISH PRIVS at mod_ctrls.c:115
2024-04-30 08:53:54,644 proftpd[21484]: <IfModule>: using 'mod_ctrls_admin.c' section at line 133
2024-04-30 08:53:54,644 proftpd[21484]: <IfModule>: using 'mod_vroot.c' section at line 140
2024-04-30 08:53:54,644 proftpd[21484]: <IfDefine>: skipping 'TLS' section at line 146
2024-04-30 08:53:54,644 proftpd[21484]: <IfModule>: skipping 'mod_ban.c' section at line 152
2024-04-30 08:53:54,644 proftpd[21484]: <IfModule>: skipping 'mod_qos.c' section at line 158
2024-04-30 08:53:54,644 proftpd[21484]: <IfDefine>: skipping 'ANONYMOUS_FTP' section at line 184
2024-04-30 08:53:54,644 proftpd[21484]: mod_dso/0.5: loading 'mod_sql.c'
2024-04-30 08:53:54,645 proftpd[21484]: mod_dso/0.5: loaded module 'mod_sql' (from '/usr/libexec/proftpd/mod_sql.so', last modified on Sun Mar 31 20:46:31 2024)
2024-04-30 08:53:54,645 proftpd[21484]: mod_dso/0.5: loading 'mod_sql_passwd.c'
2024-04-30 08:53:54,645 proftpd[21484]: mod_dso/0.5: loaded module 'mod_sql_passwd' (from '/usr/libexec/proftpd/mod_sql_passwd.so', last modified on Sun Mar 31 20:46:31 2024)
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: using libsodium-1.0.18
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'bcrypt' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'md5' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'sha1' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'sha256' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'sha512' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'pbkdf2' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'scrypt' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_sql_passwd/1.2: registered 'argon2' SQLAuthType handler
2024-04-30 08:53:54,645 proftpd[21484]: mod_dso/0.5: loading 'mod_deflate.c'
2024-04-30 08:53:54,646 proftpd[21484]: mod_dso/0.5: loaded module 'mod_deflate' (from '/usr/libexec/proftpd/mod_deflate.so', last modified on Sun Mar 31 20:46:31 2024)
2024-04-30 08:53:54,646 proftpd[21484]: mod_deflate/0.6: using zlib 1.2.11
2024-04-30 08:53:54,646 proftpd[21484]: mod_dso/0.5: loading 'mod_sql_oracle.c'
2024-04-30 08:53:54,658 proftpd[21484]: mod_dso/0.5: loaded module 'mod_sql_oracle' (from '/usr/libexec/proftpd/mod_sql_oracle.so', last modified on Sun Apr 28 08:39:29 2024)
2024-04-30 08:53:54,658 proftpd[21484]: <IfModule>: using 'mod_sql_oracle.c' section at line 195
2024-04-30 08:53:54,658 proftpd[21484]: disabling runtime support for IPv6 connections
2024-04-30 08:53:54,658 proftpd[21484]: ROOT PRIVS at mod_core.c:384
2024-04-30 08:53:54,658 proftpd[21484]: RELINQUISH PRIVS at mod_core.c:386
2024-04-30 08:53:54,658 proftpd[21484]: ROOT PRIVS at mod_core.c:393
2024-04-30 08:53:54,658 proftpd[21484]: ROOT PRIVS at parser.c:1348
2024-04-30 08:53:54,658 proftpd[21484]: mod_sql/4.5: WARNING: Use of Plaintext SQLAuthType is insecure, as it allows storage of passwords IN THE CLEAR in your database tables!
2024-04-30 08:53:54,658 proftpd[21484]: RELINQUISH PRIVS at parser.c:1351
2024-04-30 08:53:54,659 proftpd[21484]: RELINQUISH PRIVS at mod_core.c:396
2024-04-30 08:53:54,661 proftpd[21484]: UseReverseDNS off, returning IP address instead of DNS name
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: 
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: Config for FTP Server:
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: ServerIdent
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: DefaultServer
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: DefaultRoot
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: UserID
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: UserName
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: GroupID
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: GroupName
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: UseSendfile
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: LogFormat
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: LogFormat
2024-04-30 08:53:54,661 proftpd[21484] 192.168.89.130: LogOptions
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: VRootEngine
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SetEnv
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SetEnv
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SetEnv
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SetEnv
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SystemLog
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: DefaultRoot
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: Port
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: ServerIdent
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLAuthTypes
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: CreateHome
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: RequireValidShell
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLEngine
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLBackend
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLDefaultUID
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLDefaultGID
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLAuthenticate
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLConnectInfo
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLUserTable
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLUsernameField
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLPasswordField
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLHomedirField
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SQLUserWhereClause
2024-04-30 08:53:54,662 proftpd[21484] 192.168.89.130: SyslogLevel
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: TransferLog
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: ServerLog
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: Limit
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130:  AllowAll
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: SetEnv
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: Umask
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: AllowOverwrite
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: ExtendedLog
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: ExtendedLog
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: mod_lang/1.1: binding to text domain 'proftpd' using locale path '/usr/share/locale'
2024-04-30 08:53:54,663 proftpd[21484] 192.168.89.130: mod_lang/1.1: using locale files in '/usr/share/locale'
2024-04-30 08:53:54,666 proftpd[21484] 192.168.89.130: mod_lang/1.1: added the following supported languages: bg_BG, en_US, es_ES, fr_FR, it_IT, ja_JP, ko_KR, ru_RU, zh_CN, zh_TW
2024-04-30 08:53:54,666 proftpd[21484] 192.168.89.130: ROOT PRIVS at mod_ctrls.c:1233
2024-04-30 08:53:54,666 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at mod_ctrls.c:1235
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: mod_tls/2.9.2: generating initial TLS session ticket key
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: ROOT PRIVS at mod_tls.c:6562
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at mod_tls.c:6565
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: mod_tls/2.9.2: scheduling new TLS session ticket key every 3600 secs
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: ROOT PRIVS at mod_delay.c:583
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at mod_delay.c:586
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: ROOT PRIVS at mod_log.c:864
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at mod_log.c:867
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: ROOT PRIVS at mod_rlimit.c:554
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at mod_rlimit.c:557
2024-04-30 08:53:54,667 proftpd[21484] 192.168.89.130: set core resource limits for daemon
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: ignoring supplemental groups for non-root UID 2001
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: SETUP PRIVS at main.c:2796
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: ROOT PRIVS at main.c:1952
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: opening scoreboard '/run/proftpd/proftpd.scoreboard'
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at main.c:1979
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: ROOT PRIVS at ../modules/mod_ctrls_admin.c:1635
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: opening scoreboard '/run/proftpd/proftpd.scoreboard'
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at ../modules/mod_ctrls_admin.c:1637
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: ROOT PRIVS at pidfile.c:56
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at pidfile.c:59
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: ROOT PRIVS at pidfile.c:67
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at pidfile.c:70
2024-04-30 08:53:54,668 proftpd[21484] 192.168.89.130: ProFTPD 1.3.8b (maint) (built Sun Mar 31 2024 00:00:00 UTC) standalone mode STARTUP




2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130: ROOT PRIVS at main.c:1327
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130: RELINQUISH PRIVS at main.c:1331
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130: no matching vhost found for 192.168.89.130#2121, using 'FTP Server' listening on wildcard address
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at main.c:1136
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SETUP PRIVS at main.c:1141
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): session requested from client in unknown class
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): performing module session initializations
2024-04-30 08:54:00,258 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_sql/4.5: defaulting to 'oracle' backend
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_sql/4.5: defaulting to 'oracle' backend
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_cap/1.1: adding CAP_AUDIT_WRITE capability
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_tls.c:6752
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_tls.c:6755
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_delay.c:2111
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_delay.c:2114
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_log.c:1202
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_log.c:1205
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_log: opening ExtendedLog '/var/log/proftpd/auth.log'
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_log.c:1284
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_log.c:1287
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_log: opening ExtendedLog '/var/log/proftpd/access.log'
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_log.c:1284
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_log.c:1287
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_auth.c:215
2024-04-30 08:54:00,259 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): opening scoreboard '/run/proftpd/proftpd.scoreboard'
2024-04-30 08:54:00,260 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_auth.c:217
2024-04-30 08:54:00,260 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): connected - local  : 192.168.89.130:2121
2024-04-30 08:54:00,260 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): connected - remote : 192.168.90.133:53812
2024-04-30 08:54:00,260 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): FTP session opened.
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'USER feifx' to mod_tls
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'USER feifx' to mod_core
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'USER feifx' to mod_core
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'USER feifx' to mod_delay
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'USER feifx' to mod_auth
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'USER feifx' to mod_auth
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'USER feifx' to mod_sql
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'USER feifx' to mod_delay
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'USER feifx' to mod_sql
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'USER feifx' to mod_log
2024-04-30 08:54:02,477 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'USER feifx' to mod_delay
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_tls
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_core
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_core
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_sql_passwd
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_sql
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_delay
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'PASS (hidden)' to mod_auth
2024-04-30 08:54:03,581 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'PASS (hidden)' to mod_auth
2024-04-30 08:54:03,641 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): retrieved UID 2001 for user 'feifx'
2024-04-30 08:54:03,642 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): no supplemental groups found for user 'feifx'
2024-04-30 08:54:03,642 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_auth_pam.c:348
2024-04-30 08:54:03,643 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_auth_pam.c:582
2024-04-30 08:54:03,643 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): user 'feifx' authenticated by mod_sql.c
2024-04-30 08:54:03,643 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at auth.c:1774
2024-04-30 08:54:03,643 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at auth.c:1777
2024-04-30 08:54:03,643 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): USER PRIVS 2001 at mod_auth.c:1576
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_auth.c:1578
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): USER PRIVS 2001 at mkhome.c:323
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mkhome.c:371
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): 
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Config for FTP Server:
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ServerIdent
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): DefaultServer
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): DefaultRoot
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): UserID
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): UserName
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): GroupID
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): GroupName
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): UseSendfile
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): LogFormat
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): LogFormat
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): LogOptions
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): VRootEngine
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SetEnv
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SetEnv
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SetEnv
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SetEnv
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SystemLog
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): DefaultRoot
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Port
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ServerIdent
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLAuthTypes
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): CreateHome
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RequireValidShell
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLEngine
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLBackend
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLDefaultUID
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLDefaultGID
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLAuthenticate
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLConnectInfo
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLUserTable
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLUsernameField
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLPasswordField
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLHomedirField
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SQLUserWhereClause
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SyslogLevel
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): TransferLog
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ServerLog
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Limit
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]):  AllowAll
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SetEnv
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Umask
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): AllowOverwrite
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ExtendedLog
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ExtendedLog
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_auth.c:1672
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): opening TransferLog '/var/log/proftpd/transfer-2121.log'
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_auth.c:1717
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): USER PRIVS 2001 at mod_auth.c:942
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): retrieved UID 2001 for user 'feifx'
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at mod_auth.c:945
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): TZ environment variable already set to 'Asia/Shanghai'
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Preparing to chroot to directory '/home/pftpuser/jckj/client/feifx'
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_vroot/0.9.11: vroot registered
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at auth.c:1912
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RELINQUISH PRIVS at auth.c:1915
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Environment successfully chroot()ed
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_auth.c:1768
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): SETUP PRIVS at mod_auth.c:1790
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): in dir_check_full(): path = '/', fullpath = '/'
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_sql
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_sql
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_vroot
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_lang
2024-04-30 08:54:03,644 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_cap
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_cap/1.1: uid = 2001, euid = 2001, gid = 2001, egid = 2001
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): mod_cap/1.1: capabilities 'cap_chown,cap_setgid,cap_setuid,cap_net_bind_service,cap_audit_write=ep'
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_tls
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_delay
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_log
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_ls
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_auth
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): UseReverseDNS off, returning IP address instead of DNS name
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS at mod_auth.c:727
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): ROOT PRIVS: ID switching disabled
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): REVOKE PRIVS at mod_auth.c:728
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): RootRevoke in effect, dropped root privs
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_rlimit
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_xfer
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'PASS (hidden)' to mod_core
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'PASS (hidden)' to mod_sql
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'PASS (hidden)' to mod_log
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'PASS (hidden)' to mod_readme
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'PASS (hidden)' to mod_delay
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'PASS (hidden)' to mod_auth
2024-04-30 08:54:03,645 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): USER feifx: Login successful.
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'SYST' to mod_tls
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'SYST' to mod_core
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'SYST' to mod_core
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'SYST' to mod_core
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'SYST' to mod_sql
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'SYST' to mod_sql
2024-04-30 08:54:03,651 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'SYST' to mod_log
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'FEAT' to mod_tls
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'FEAT' to mod_core
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'FEAT' to mod_core
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'FEAT' to mod_core
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): in dir_check_full(): path = '/', fullpath = '/'
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'FEAT' to mod_sql
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'FEAT' to mod_sql
2024-04-30 08:54:03,658 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'FEAT' to mod_log
2024-04-30 08:54:04,470 proftpd[21484] 192.168.89.130: ROOT PRIVS at mod_ctrls.c:747
2024-04-30 08:54:04,470 proftpd[21484] 192.168.89.130: RELINQUISH PRIVS at mod_ctrls.c:753
2024-04-30 08:54:04,829 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'CWD temp' to mod_tls
2024-04-30 08:54:04,829 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'CWD temp' to mod_core
2024-04-30 08:54:04,829 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'CWD temp' to mod_core
2024-04-30 08:54:04,830 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'CWD temp' to mod_core
2024-04-30 08:54:04,830 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): in dir_check_full(): path = '/temp', fullpath = '/temp'
2024-04-30 08:54:04,830 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'CWD temp' to mod_sql
2024-04-30 08:54:04,830 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'CWD temp' to mod_readme
2024-04-30 08:54:04,830 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'CWD temp' to mod_sql
2024-04-30 08:54:04,830 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'CWD temp' to mod_log
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'TYPE I' to mod_tls
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'TYPE I' to mod_core
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'TYPE I' to mod_core
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'TYPE I' to mod_xfer
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'TYPE I' to mod_sql
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'TYPE I' to mod_sql
2024-04-30 08:54:08,032 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'TYPE I' to mod_log
2024-04-30 08:54:08,039 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'EPSV' to mod_tls
2024-04-30 08:54:08,039 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'EPSV' to mod_core
2024-04-30 08:54:08,039 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'EPSV' to mod_core
2024-04-30 08:54:08,039 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'EPSV' to mod_core
2024-04-30 08:54:08,039 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): in dir_check_full(): path = '/temp', fullpath = '/temp'
2024-04-30 08:54:08,040 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): Entering Extended Passive Mode (|||32194|)
2024-04-30 08:54:08,040 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'EPSV' to mod_sql
2024-04-30 08:54:08,040 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'EPSV' to mod_sql
2024-04-30 08:54:08,040 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'EPSV' to mod_log
2024-04-30 08:54:08,052 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'STOR test.txt' to mod_tls
2024-04-30 08:54:08,052 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'STOR test.txt' to mod_core
2024-04-30 08:54:08,052 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'STOR test.txt' to mod_core
2024-04-30 08:54:08,052 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'STOR test.txt' to mod_vroot
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'STOR test.txt' to mod_vroot
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'STOR test.txt' to mod_xfer
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): in dir_check_full(): path = '/temp/test.txt', fullpath = '/temp/test.txt'
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): in dir_check_full(): setting umask to 0002 (was 0002)
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'STOR test.txt' to mod_vroot
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'STOR test.txt' to mod_xfer
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): unable to open 'test.txt' for writing: Permission denied
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD_ERR command 'STOR test.txt' to mod_sql
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD_ERR command 'STOR test.txt' to mod_vroot
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD_ERR command 'STOR test.txt' to mod_sql
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD_ERR command 'STOR test.txt' to mod_log
2024-04-30 08:54:08,053 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD_ERR command 'STOR test.txt' to mod_xfer
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'QUIT' to mod_tls
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'QUIT' to mod_core
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching PRE_CMD command 'QUIT' to mod_core
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching CMD command 'QUIT' to mod_core
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching POST_CMD command 'QUIT' to mod_sql
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'QUIT' to mod_sql
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'QUIT' to mod_log
2024-04-30 08:54:10,230 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): dispatching LOG_CMD command 'QUIT' to mod_core
2024-04-30 08:54:10,231 proftpd[21485] 192.168.89.130 (192.168.90.133[192.168.90.133]): FTP session closed.

@Castaglia
Copy link
Member

Castaglia commented May 4, 2024

What are the permissions/ownership on the target /home/pftpuser/jckj/client/feifx//temp/test.txt file? That is, what is the output from the following command?

ls -aln /home/pftpuser/jckj/client/feifx /home/pftpuser/jckj/client/feifx/temp /home/pftpuser/jckj/client/feifx//temp/test.txt

Would also be possible to get the VRootLog, and/or trace logging for the "vroot" trace channel, e.g.:

TraceLog /path/to/proftpd-trace.log
Trace fsio:20 vroot:30

for these failing uploads? Thanks!

@linuxsch
Copy link
Author

linuxsch commented May 5, 2024

hi, @Castaglia, thx.

the permissions/ownership on the target /home/pftpuser/jckj/client/feifx/temp

drwxrwxr-x 2 app app 6 Apr 29 09:08 temp

more trace.log

2024-05-05 16:59:22,722 [1653] fsio:8: using system read() for path '/etc/proftpd.conf' (4096 bytes)
2024-05-05 16:59:22,736 [1653] fsio:8: using system lstat() for path '/etc/proftpd/conf.d'
2024-05-05 16:59:22,736 [1653] fsio:8: using system lstat() for path '/etc/proftpd/conf.d'
2024-05-05 16:59:22,737 [1653] fsio:8: using system lstat() for path '/'
2024-05-05 16:59:22,737 [1653] fsio:8: using system lstat() for path '/etc'
2024-05-05 16:59:22,737 [1653] fsio:8: using system lstat() for path '/etc/proftpd'
2024-05-05 16:59:22,737 [1653] fsio:8: using system lstat() for path '/etc/proftpd/conf.d'
2024-05-05 16:59:22,737 [1653] fsio:8: using system opendir() for path '/etc/proftpd/conf.d'
2024-05-05 16:59:22,737 [1653] fsio:8: using system readdir()
2024-05-05 16:59:22,737 [1653] fsio:8: using system readdir()
2024-05-05 16:59:22,737 [1653] fsio:8: using system readdir()
2024-05-05 16:59:22,737 [1653] fsio:8: using system readdir()
2024-05-05 16:59:22,737 [1653] fsio:8: using system closedir()
2024-05-05 16:59:22,737 [1653] fsio:8: using system open() for path '/etc/proftpd/conf.d/ftp-2121.conf'
2024-05-05 16:59:22,737 [1653] fsio:8: using system fstat() for path '/etc/proftpd/conf.d/ftp-2121.conf'
2024-05-05 16:59:22,737 [1653] fsio:8: using system read() for path '/etc/proftpd/conf.d/ftp-2121.conf' (4096 bytes)
2024-05-05 16:59:22,737 [1653] fsio:8: using system read() for path '/etc/proftpd/conf.d/ftp-2121.conf' (4096 bytes)
2024-05-05 16:59:22,737 [1653] fsio:8: using system close() for path '/etc/proftpd/conf.d/ftp-2121.conf'
2024-05-05 16:59:22,737 [1653] fsio:8: using system read() for path '/etc/proftpd.conf' (4096 bytes)
2024-05-05 16:59:22,737 [1653] fsio:8: using system close() for path '/etc/proftpd.conf'
2024-05-05 16:59:22,745 [1653] fsio:8: using system open() for path '/run/proftpd/proftpd.delay'
2024-05-05 16:59:22,745 [1653] fsio:8: using system fstat() for path '/run/proftpd/proftpd.delay'
2024-05-05 16:59:22,745 [1653] fsio:8: using system close() for path '/run/proftpd/proftpd.delay'
2024-05-05 16:59:51,386 [1659] fsio:8: using system open() for path '/run/proftpd/proftpd.delay'
2024-05-05 16:59:56,068 [1659] fsio:8: using system lstat() for path '/'
2024-05-05 16:59:56,068 [1659] fsio:8: using system lstat() for path '/home'
2024-05-05 16:59:56,068 [1659] fsio:8: using system lstat() for path '/home/pftpuser'
2024-05-05 16:59:56,068 [1659] fsio:8: using system lstat() for path '/home/pftpuser/jckj'
2024-05-05 16:59:56,068 [1659] fsio:8: using system lstat() for path '/home/pftpuser/jckj/client'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/home/pftpuser/jckj/client/feifx'
2024-05-05 16:59:56,069 [1659] fsio:8: using system stat() for path '/home/pftpuser/jckj/client/feifx'
2024-05-05 16:59:56,069 [1659] fsio:8: using system stat() for path '/home/pftpuser/jckj/client/feifx'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/home'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/home/pftpuser'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/home/pftpuser/jckj'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/home/pftpuser/jckj/client'
2024-05-05 16:59:56,069 [1659] fsio:8: using system lstat() for path '/home/pftpuser/jckj/client/feifx'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot chroot() for path '/home/pftpuser/jckj/client/feifx'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot chdir() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 16:59:56,070 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:01,406 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 17:00:01,406 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 17:00:01,406 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:01,406 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,814 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 17:00:03,814 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 17:00:03,814 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,814 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,830 [1659] fsio:8: using vroot stat() for path ''
2024-05-05 17:00:03,830 [1659] fsio:8: using vroot stat() for path ''
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '.'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '.'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot opendir() for path '.'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot readdir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot closedir()
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path 'expdown'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path 'expdown'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expdown'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expdown'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expdown/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expdown/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path 'expup'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path 'expup'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expup'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expup'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expup/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/expup/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path 'impdown'
2024-05-05 17:00:03,831 [1659] fsio:8: using vroot lstat() for path 'impdown'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impdown'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impdown'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impdown/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impdown/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot lstat() for path 'impup'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot lstat() for path 'impup'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impup'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impup'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impup/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/impup/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot lstat() for path 'temp'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot lstat() for path 'temp'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/temp'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/temp'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:03,832 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:11,029 [1659] fsio:8: using vroot lstat() for path '/temp'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot stat() for path '/temp'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot stat() for path '/temp'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot chdir() for path '/temp'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 17:00:11,030 [1659] fsio:8: using vroot lstat() for path '/temp'
2024-05-05 17:00:15,957 [1659] fsio:8: using vroot stat() for path '/temp'
2024-05-05 17:00:15,957 [1659] fsio:8: using vroot stat() for path '/temp'
2024-05-05 17:00:15,957 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:15,957 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:15,957 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:15,957 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:15,975 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 17:00:15,975 [1659] fsio:8: using vroot lstat() for path '/temp'
2024-05-05 17:00:15,975 [1659] fsio:8: using vroot lstat() for path '/temp/test.txt'
2024-05-05 17:00:15,975 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot lstat() for path '/temp'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot stat() for path '/temp/test.txt'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot stat() for path '/temp/test.txt'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot stat() for path '/temp/.ftpaccess'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot stat() for path '/.ftpaccess'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot lstat() for path '/temp/test.txt'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot lstat() for path '/temp/test.txt'
2024-05-05 17:00:15,976 [1659] vroot:17: fixed up 'mod_xfer.store-path' path in command STOR; was '/temp/test.txt', now '/home/pftpuser/jckj/client/feifx/temp/test.txt'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot lstat() for path '/'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot lstat() for path '/temp'
2024-05-05 17:00:15,976 [1659] fsio:8: using vroot open() for path '/home/pftpuser/jckj/client/feifx/temp/test.txt'
2024-05-05 17:00:15,976 [1659] vroot:17: fixed up 'mod_xfer.store-path' path in command STOR; was '/home/pftpuser/jckj/client/feifx/temp/test.txt', now '/home/pftpuser/jckj/client/feifx/home/pftpuser/jckj/client/feifx/temp/test.txt'
2024-05-05 17:00:21,576 [1653] fsio:8: using system open() for path '/run/proftpd/proftpd.delay'
2024-05-05 17:00:21,576 [1653] fsio:8: using system write() for path '/run/proftpd/proftpd.delay' (12608 bytes)
2024-05-05 17:00:21,576 [1653] fsio:8: using system close() for path '/run/proftpd/proftpd.delay'

@linuxsch
Copy link
Author

linuxsch commented May 6, 2024

ls -aln /home/pftpuser/jckj/client/feifx /home/pftpuser/jckj/client/feifx/temp /home/pftpuser/jckj/client/feifx//temp/test.txt

ls: cannot access '/home/pftpuser/jckj/client/feifx//temp/test.txt': No such file or directory
/home/pftpuser/jckj/client/feifx:
total 4
drwxrwxr-x 7 2001 2001 74 May 6 09:30 .
drwxrwxr-x 40 2001 2001 4096 Apr 28 22:48 ..
drwxrwxrwx 2 5002 5002 6 Apr 28 22:48 expdown
drwxrwxrwx 2 5002 5002 6 Apr 28 22:48 expup
drwxrwxrwx 2 5002 5002 6 Apr 28 22:48 impdown
drwxrwxrwx 2 5002 5002 6 Apr 28 22:48 impup
drwxrwxr-x 2 5002 5002 6 Apr 29 17:08 temp

/home/pftpuser/jckj/client/feifx/temp:
total 0
drwxrwxr-x 2 5002 5002 6 Apr 29 17:08 .
drwxrwxr-x 7 2001 2001 74 May 6 09:30 ..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants