diff --git a/interface/web/sites/shell_user_edit.php b/interface/web/sites/shell_user_edit.php
index 2b606c2550bf869d746d7b1ebf9a7b8aadf71386..77c4509b44e7e2c56c5ca72d80e16d3d30b2198e 100644
--- a/interface/web/sites/shell_user_edit.php
+++ b/interface/web/sites/shell_user_edit.php
@@ -95,12 +95,6 @@ class page_action extends tform_actions {
 		} else {
 			$app->tpl->setVar("edit_disabled", 0);
 		}
-		
-		if($this->dataRecord['chroot'] == 'jailkit'){
-			$app->tpl->setVar("is_jailkit", true);
-		} else {
-			$app->tpl->setVar("is_jailkit", false);
-		}
 
 		parent::onShowEnd();
 	}
@@ -170,11 +164,7 @@ class page_action extends tform_actions {
 		$web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ?", $this->dataRecord["parent_domain_id"]);
 
 		$server_id = $app->functions->intval($web["server_id"]);
-		if($this->dataRecord['chroot'] == 'jailkit'){
-			$dir = $app->db->quote($web["document_root"]);
-		} else {
-			$dir = $app->db->quote($web["document_root"].'/home/'.$this->dataRecord['username']);
-		}
+		$dir = $web["document_root"];
 		$uid = $web["system_user"];
 		$gid = $web["system_group"];
 		
@@ -228,18 +218,7 @@ class page_action extends tform_actions {
 	function onAfterUpdate() {
 		global $app, $conf;
 
-		if(isset($this->dataRecord['chroot'])){
-			$shell_user = $app->db->queryOneRecord("SELECT * FROM shell_user WHERE shell_user_id = ".$this->id);
-			$web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$app->functions->intval($this->dataRecord["parent_domain_id"]));
-			$dir = $shell_user['dir'];
-			if($this->dataRecord['chroot'] == 'jailkit'){
-				$dir = $app->db->quote($web["document_root"]);
-			} else {
-				if($this->oldDataRecord['chroot'] == 'jailkit') $dir = $app->db->quote($web["document_root"].'/home/'.$this->dataRecord['username']);
-			}
 
-			if($dir != $shell_user['dir']) $app->db->query("UPDATE shell_user SET dir = '$dir' WHERE shell_user_id = ".$this->id);
-		}
 	}
 
 }
diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php
index 24b3469c8e1275292076a2866d468f65eef62c1e..71275d27a99f709a707b9dbf1f7d20e87e990d24 100755
--- a/server/plugins-available/shelluser_base_plugin.inc.php
+++ b/server/plugins-available/shelluser_base_plugin.inc.php
@@ -113,16 +113,20 @@ class shelluser_base_plugin {
 					$homedir = $data['new']['dir'].'/home/'.$data['new']['username'];
 				}
 				
+				// Create home base directory if it does not exist
 				if(!is_dir($data['new']['dir'].'/home')){
-					$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0750');
-					$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['puser']));
-					$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['pgroup']));
+					$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0755');
 				}
 				
+				// Change ownership of home base dir to root user
+				$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),'root');
+				$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),'root');
+				$app->system->chmod(escapeshellcmd($data['new']['dir'].'/home'),0755);
+				
 				if(!is_dir($homedir)){
 					$app->file->mkdirs(escapeshellcmd($homedir), '0750');
-					$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']));
-					$app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']));
+					$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']),false);
+					$app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']),false);
 				}
 				$command = 'useradd';
 				$command .= ' -d '.escapeshellcmd($homedir);
@@ -137,8 +141,8 @@ class shelluser_base_plugin {
 				$app->log("Executed command: ".$command, LOGLEVEL_DEBUG);
 				$app->log("Added shelluser: ".$data['new']['username'], LOGLEVEL_DEBUG);
 				
-				$app->system->chown(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['username']));
-				$app->system->chgrp(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['pgroup']));
+				$app->system->chown(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['username']),false);
+				$app->system->chgrp(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['pgroup']),false);
 				
 
 				// call the ssh-rsa update function
@@ -149,7 +153,7 @@ class shelluser_base_plugin {
 
 				//* Create .bash_history file
 				$app->system->touch(escapeshellcmd($homedir).'/.bash_history');
-				$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0755);
+				$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0750);
 				$app->system->chown(escapeshellcmd($homedir).'/.bash_history', $data['new']['username']);
 				$app->system->chgrp(escapeshellcmd($homedir).'/.bash_history', $data['new']['pgroup']);
 
@@ -249,17 +253,17 @@ class shelluser_base_plugin {
 							$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['puser']));
 							$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['pgroup']));
 						}
-						$app->file->mkdirs(escapeshellcmd($homedir), '0750');
-						$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']));
-						$app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']));
+						$app->file->mkdirs(escapeshellcmd($homedir), '0755');
+						$app->system->chown(escapeshellcmd($homedir),'root');
+						$app->system->chgrp(escapeshellcmd($homedir),'root');
 						$app->system->web_folder_protection($web['document_root'], true);
 					} else {
 						if(!is_dir($homedir)){
 							$app->system->web_folder_protection($web['document_root'], false);
 							if(!is_dir($data['new']['dir'].'/home')){
-								$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0750');
-								$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['puser']));
-								$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['pgroup']));
+								$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0755');
+								$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),'root');
+								$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),'root');
 							}
 							$app->file->mkdirs(escapeshellcmd($homedir), '0750');
 							$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']));
@@ -279,7 +283,7 @@ class shelluser_base_plugin {
 					//* Create .bash_history file
 					if(!is_file($data['new']['dir']).'/.bash_history') {
 						$app->system->touch(escapeshellcmd($homedir).'/.bash_history');
-						$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0755);
+						$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0750);
 						$app->system->chown(escapeshellcmd($homedir).'/.bash_history', escapeshellcmd($data['new']['username']));
 						$app->system->chgrp(escapeshellcmd($homedir).'/.bash_history', escapeshellcmd($data['new']['pgroup']));
 					}