Incomplete chroot configuration if user "is currently logged in"
short description
On creation of a chrooted cronjob, the jail is initialized if needed and the homedir of the affected user gets reconfigured via usermod --home=/var/www/clients/clientXXX/webXXX/./home/webXXX webXXX. The command however will fail, if the user is logged in or a process is running under the user which is always the case if using php-fpm.
Due to the misconfigured user the chrooted cronjob can't be executed and the following will be logged in ''/var/log/auth.log'':
jk_chrootsh[30473]: abort, homedir '/var/www/clients/clientXXX/webXXX' for user webXXX (XXX) does not contain the jail separator <jail>/./<home>
environment
Server OS: (probably all)
Server OS version: (probably all)
ISPConfig version: (3.14)
proposed fix
- Since neither the files relevant for the chroot are removed, nor the users homedir is reconfigured upon deletion of all chrooted cronjobs the user should be initially created with the "jailed" homedir which would render a later reconfiguration unnecessary.
- Alternatively ''/etc/passwd'' could be altered directly without invoking the ''usermod'' command.