| | |
| | | $app->log('Directory of the shell user is not valid.',LOGLEVEL_WARN); |
| | | return false; |
| | | } |
| | | |
| | | if(!$app->system->is_allowed_user($data['new']['username'], false, false) |
| | | || !$app->system->is_allowed_user($data['new']['puser'], true, true) |
| | | || !$app->system->is_allowed_group($data['new']['pgroup'], true, true)) { |
| | | $app->log('Shell user must not be root or in group root.',LOGLEVEL_WARN); |
| | | return false; |
| | | } |
| | | |
| | | if($app->system->is_user($data['new']['puser'])) { |
| | | |
| | |
| | | return false; |
| | | } |
| | | |
| | | if(!$app->system->is_allowed_user($data['new']['username'], false, false) |
| | | || !$app->system->is_allowed_user($data['new']['puser'], true, true) |
| | | || !$app->system->is_allowed_group($data['new']['pgroup'], true, true)) { |
| | | $app->log('Shell user must not be root or in group root.',LOGLEVEL_WARN); |
| | | return false; |
| | | } |
| | | |
| | | if($app->system->is_user($data['new']['puser'])) { |
| | | // Get the UID of the parent user |
| | | $uid = intval($app->system->getuid($data['new']['puser'])); |
| | |
| | | unset($client_data); |
| | | |
| | | // ssh-rsa authentication variables |
| | | $sshrsa = $this->data['new']['ssh_rsa']; |
| | | //$sshrsa = $this->data['new']['ssh_rsa']; |
| | | $sshrsa = ''; |
| | | $ssh_users = $app->db->queryAllRecords("SELECT ssh_rsa FROM shell_user WHERE parent_domain_id = ".intval($this->data['new']['parent_domain_id'])); |
| | | if(is_array($ssh_users)) { |
| | | foreach($ssh_users as $sshu) { |
| | | if($sshu['ssh_rsa'] != '') $sshrsa .= "\n".$sshu['ssh_rsa']; |
| | | } |
| | | } |
| | | $sshrsa = trim($sshrsa); |
| | | $usrdir = escapeshellcmd($this->data['new']['dir']); |
| | | $sshdir = $usrdir.'/.ssh'; |
| | | $sshkeys= $usrdir.'/.ssh/authorized_keys'; |