Просмотр исходного кода

Merge branch 'master' of github.com:serghey-rodin/vesta

Serghey Rodin 10 лет назад
Родитель
Сommit
ddf19a4bbc

+ 9 - 3
README.md

@@ -13,12 +13,18 @@ Connect to your server as root via SSH
 ssh root@your.server
 ssh root@your.server
 ```
 ```
 
 
-Download the installation script
+Download the installation script, and run it:
 ```bash
 ```bash
-curl -O http://vestacp.com/pub/vst-install.sh
+curl http://vestacp.com/pub/vst-install.sh | bash
 ```
 ```
 
 
-Run it
+If the above example does not work, try this 2 step method:
+
+Download the installation script:
+```bash
+curl -O http://vestacp.com/pub/vst-install.sh
+```
+Then run it:
 ```bash
 ```bash
 bash vst-install.sh
 bash vst-install.sh
 ```
 ```

+ 3 - 2
bin/v-update-user-quota

@@ -31,9 +31,10 @@ is_object_valid 'user' 'USER' "$user"
 #----------------------------------------------------------#
 #----------------------------------------------------------#
 
 
 # Updating disk quota
 # Updating disk quota
+# Had quota equals package value. Soft quota equals 90% of package value for warnings.
 quota=$(get_user_value '$DISK_QUOTA')
 quota=$(get_user_value '$DISK_QUOTA')
-soft=$((quota * 1000))
-hard=$((quota + 50000))
+soft=$((quota * 1024 * 0.90))
+hard=$((quota * 1024))
 
 
 # Searching home mount point
 # Searching home mount point
 mnt=$(df -P /home |awk '{print $6}' |tail -n1)
 mnt=$(df -P /home |awk '{print $6}' |tail -n1)

+ 2 - 1
src/rpm/conf/nginx.conf

@@ -37,7 +37,8 @@ http {
 
 
 
 
     # SSL PCI Compliance
     # SSL PCI Compliance
-    ssl_ciphers                 RC4:HIGH:!aNULL:!MD5:!kEDH;
+    ssl_protocols               TLSv1.2 TLSv1.1 TLSv1;
+    ssl_ciphers                 EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
     ssl_session_cache           shared:SSL:10m;
     ssl_session_cache           shared:SSL:10m;
     ssl_prefer_server_ciphers   on;
     ssl_prefer_server_ciphers   on;
 
 

+ 0 - 2
web/api/index.php

@@ -87,5 +87,3 @@ if (isset($_POST['user']) || isset($_POST['hash'])) {
         }
         }
     }
     }
 }
 }
-
-?>

+ 40 - 67
web/file_manager/files.php

@@ -4,25 +4,18 @@
 //define(LISTING_TIMEOUT, 0.000001);
 //define(LISTING_TIMEOUT, 0.000001);
 define(LISTING_TIMEOUT, 5);
 define(LISTING_TIMEOUT, 5);
 
 
-
-
-
 //echo 'files: ';
 //echo 'files: ';
 //$files = scandir(__DIR__);
 //$files = scandir(__DIR__);
 
 
-
 //echo '<pre>';
 //echo '<pre>';
 //print_r($files);
 //print_r($files);
 
 
-
 //$_REQUEST['sort_field'] = 'size';
 //$_REQUEST['sort_field'] = 'size';
 $_REQUEST['sort_field'] = 'name';
 $_REQUEST['sort_field'] = 'name';
 //$_REQUEST['sort_field'] = 'atime';
 //$_REQUEST['sort_field'] = 'atime';
 //$_REQUEST['sort_field'] = 'mtime';
 //$_REQUEST['sort_field'] = 'mtime';
 $_REQUEST['sort_desc'] = 1;
 $_REQUEST['sort_desc'] = 1;
 
 
-
-
 /*
 /*
 +-  copy file / dir [ recursive ]
 +-  copy file / dir [ recursive ]
 +-  rename(move) file / dir
 +-  rename(move) file / dir
@@ -33,7 +26,7 @@ $_REQUEST['sort_desc'] = 1;
 +-  create dir
 +-  create dir
 */
 */
 
 
-switch($_REQUEST['action']){
+switch($_REQUEST['action']) {
     case 'copy': fm_copy($_REQUEST['source'], $_REQUEST['dest']); break;
     case 'copy': fm_copy($_REQUEST['source'], $_REQUEST['dest']); break;
     case 'rename': fm_rename($_REQUEST['source'], $_REQUEST['dest']); break;
     case 'rename': fm_rename($_REQUEST['source'], $_REQUEST['dest']); break;
     case 'delete': fm_delete($_REQUEST['source']); break;
     case 'delete': fm_delete($_REQUEST['source']); break;
@@ -53,24 +46,12 @@ switch($_REQUEST['action']){
     break;
     break;
 }
 }
 
 
-
-
-
-
-
 //echo $_GET['sort_field'];
 //echo $_GET['sort_field'];
 
 
 //    if(in_array($_GET['sort_field'], $available_sort_fields)){
 //    if(in_array($_GET['sort_field'], $available_sort_fields)){
 //	echo '1';
 //	echo '1';
 //    }	
 //    }	
 
 
-
-
-
-
-
-
-
 /*
 /*
   upload_file
   upload_file
 
 
@@ -87,17 +68,16 @@ switch($_REQUEST['action']){
   download file / image   
   download file / image   
 */
 */
 
 
-
-
-function fm_create_file($filename){
+function fm_create_file($filename)
+{
     if(is_file($filename))
     if(is_file($filename))
         return array('error' => 'file exists', 'code' => 1);
         return array('error' => 'file exists', 'code' => 1);
 
 
-    return !!fopen($filename, 'w');
+    return (bool) fopen($filename, 'w'); // (bool) > !!, sorry
 }
 }
 
 
-
-function fm_create_dir($dirname){
+function fm_create_dir($dirname)
+{
     if(is_dir($filename))
     if(is_dir($filename))
         return array('error' => 'directory exists', 'code' => 1);
         return array('error' => 'directory exists', 'code' => 1);
 
 
@@ -105,49 +85,49 @@ function fm_create_dir($dirname){
     return mkdir($dirname);
     return mkdir($dirname);
 }
 }
 
 
-
-function fm_chown($filename, $recursive = 0, $uid = FALSE, $gid = FALSE){
-    if(is_dir($filename) && $recursive){
+function fm_chown($filename, $recursive = 0, $uid = FALSE, $gid = FALSE)
+{
+    if (is_dir($filename) && $recursive) {
         $dir_handle  = opendir($dir);
         $dir_handle  = opendir($dir);
-	while ($item = readdir($dir_handle)){
-    	    if (!in_array($item, array('.','..'))){
+	while ($item = readdir($dir_handle)) {
+    	    if (!in_array($item, array('.','..'))) {
 		$new_item = $filename.'/'.$item;
 		$new_item = $filename.'/'.$item;
 
 
-	        if($uid !== FALSE) chown($new_item, (int)$uid);
-		if($gid !== FALSE) chgrp($new_item, (int)$gid); 
+	        if ($uid !== FALSE) chown($new_item, (int)$uid);
+		if ($gid !== FALSE) chgrp($new_item, (int)$gid); 
 
 
-		if(is_dir($new_item)){
+		if (is_dir($new_item)) {
 		    fm_chown($new_item, $recursive, $uid, $gid);
 		    fm_chown($new_item, $recursive, $uid, $gid);
 		}
 		}
 	    }
 	    }
 	}
 	}
-    }else{
+    } else {
         if($uid !== FALSE) chown($filename, (int)$uid);
         if($uid !== FALSE) chown($filename, (int)$uid);
 	if($gid !== FALSE) chgrp($filename, (int)$gid); 
 	if($gid !== FALSE) chgrp($filename, (int)$gid); 
     }
     }
 }
 }
 
 
-
-function fm_chmod($filename, $recursive = 0, $mode){
-    if(is_dir($filename) && $recursive){
+function fm_chmod($filename, $recursive = 0, $mode)
+{
+    if(is_dir($filename) && $recursive) {
         $dir_handle  = opendir($dir);
         $dir_handle  = opendir($dir);
-	while ($item = readdir($dir_handle)){
-    	    if (!in_array($item, array('.','..'))){
+	while ($item = readdir($dir_handle)) {
+    	    if (!in_array($item, array('.','..'))) {
 		$new_item = $filename.'/'.$item;
 		$new_item = $filename.'/'.$item;
 	        chmod($new_item, octdec($mode));
 	        chmod($new_item, octdec($mode));
 
 
-		if(is_dir($new_item)){
+		if (is_dir($new_item)) {
 		    fm_chmod($new_item, $recursive, $mode);
 		    fm_chmod($new_item, $recursive, $mode);
 		}
 		}
 	    }
 	    }
 	}
 	}
-    }else{
+    } else {
 	chmod($filename, octdec($mode));
 	chmod($filename, octdec($mode));
     }
     }
 }
 }
 
 
-
-function fm_delete($filename){
+function fm_delete($filename)
+{
     if(is_dir($filename)){
     if(is_dir($filename)){
 	foreach (
 	foreach (
 	    $iterator = new RecursiveIteratorIterator(
 	    $iterator = new RecursiveIteratorIterator(
@@ -162,19 +142,21 @@ function fm_delete($filename){
 //	    copy($item, $dest . DIRECTORY_SEPARATOR . $iterator->getSubPathName());
 //	    copy($item, $dest . DIRECTORY_SEPARATOR . $iterator->getSubPathName());
 	  }
 	  }
 	}
 	}
-    }else{
+    } else {
 	return unlink($filename);
 	return unlink($filename);
     }
     }
 }
 }
 
 
 
 
-function fm_rename($source, $dest){
+function fm_rename($source, $dest)
+{
     return rename($source, $dest);
     return rename($source, $dest);
 }
 }
 
 
 
 
-function fm_copy($source, $dest){
-    if(is_dir($source)){
+function fm_copy($source, $dest)
+{
+    if (is_dir($source)) {
 	foreach (
 	foreach (
 	    $iterator = new RecursiveIteratorIterator(
 	    $iterator = new RecursiveIteratorIterator(
 	    new RecursiveDirectoryIterator($source, RecursiveDirectoryIterator::SKIP_DOTS),
 	    new RecursiveDirectoryIterator($source, RecursiveDirectoryIterator::SKIP_DOTS),
@@ -187,14 +169,13 @@ function fm_copy($source, $dest){
 	    copy($item, $dest . DIRECTORY_SEPARATOR . $iterator->getSubPathName());
 	    copy($item, $dest . DIRECTORY_SEPARATOR . $iterator->getSubPathName());
 	  }
 	  }
 	}
 	}
-    
     }else{
     }else{
 	return copy($source, $dest);
 	return copy($source, $dest);
     }
     }
 }
 }
 
 
-
-function list_dir(){
+function list_dir()
+{
     $dir_iterator = new RecursiveDirectoryIterator("/path");
     $dir_iterator = new RecursiveDirectoryIterator("/path");
     $iterator = new RecursiveIteratorIterator($dir_iterator, RecursiveIteratorIterator::SELF_FIRST);
     $iterator = new RecursiveIteratorIterator($dir_iterator, RecursiveIteratorIterator::SELF_FIRST);
     // could use CHILD_FIRST if you so wish
     // could use CHILD_FIRST if you so wish
@@ -214,12 +195,9 @@ function list_dir(){
     echo "\nTotal file size: ", $size, " bytes\n";
     echo "\nTotal file size: ", $size, " bytes\n";
 }
 }
 
 
-
-
-
 /// fast removing directory 
 /// fast removing directory 
-function rmrf($dir) {
-    
+function rmrf($dir)
+{
     foreach (glob($dir) as $file) {
     foreach (glob($dir) as $file) {
         if (is_dir($file)) {
         if (is_dir($file)) {
             rmrf("$file/*");
             rmrf("$file/*");
@@ -230,9 +208,6 @@ function rmrf($dir) {
     }
     }
 }
 }
 
 
-
-
-
 function dir_list($dir, $sort = 0)
 function dir_list($dir, $sort = 0)
 {
 {
     $sort_order_for_filename = SORT_ASC;
     $sort_order_for_filename = SORT_ASC;
@@ -252,7 +227,7 @@ function dir_list($dir, $sort = 0)
         if (!in_array($object, array('.','..'))){
         if (!in_array($object, array('.','..'))){
             $filename    = $dir . $object;
             $filename    = $dir . $object;
 	    $time = microtime(true) - $start;
 	    $time = microtime(true) - $start;
-	    if($time <= LISTING_TIMEOUT){
+	    if ($time <= LISTING_TIMEOUT) {
     		$stats = stat($filename);
     		$stats = stat($filename);
     		$mode = explain_mode($stats['mode']);
     		$mode = explain_mode($stats['mode']);
 		$perms = decoct(fileperms($filename));
 		$perms = decoct(fileperms($filename));
@@ -274,8 +249,11 @@ function dir_list($dir, $sort = 0)
             	);
             	);
 	    }else{
 	    }else{
 		$listing['timeout_exeeded'] = TRUE;
 		$listing['timeout_exeeded'] = TRUE;
-		if(is_dir($filename)){   $type = 'd';
-		}else{   $type = '-'; }
+		if (is_dir($filename)) {
+			$type = 'd';
+		} else {
+			$type = '-';
+		}
 
 
 	        $item = array(
 	        $item = array(
             	    'name' => $object,
             	    'name' => $object,
@@ -294,7 +272,6 @@ function dir_list($dir, $sort = 0)
             	);
             	);
 	    }
 	    }
 
 
-
 	    $listing['count']++;
 	    $listing['count']++;
 
 
 	    if($item['type'] == 'd'){
 	    if($item['type'] == 'd'){
@@ -311,7 +288,6 @@ function dir_list($dir, $sort = 0)
     }
     }
     $listing['time'] = microtime(TRUE) - $start;
     $listing['time'] = microtime(TRUE) - $start;
 
 
-
     if(!$listing['timeout_exeeded']){
     if(!$listing['timeout_exeeded']){
 	if(in_array($_REQUEST['sort_field'], $available_sort_fields)){
 	if(in_array($_REQUEST['sort_field'], $available_sort_fields)){
 	    if($_REQUEST['sort_desc']){
 	    if($_REQUEST['sort_desc']){
@@ -324,7 +300,6 @@ function dir_list($dir, $sort = 0)
 
 
     return $listing;
     return $listing;
 }
 }
-
 	
 	
 function explain_mode($mode)
 function explain_mode($mode)
 {
 {
@@ -355,5 +330,3 @@ function explain_mode($mode)
 
 
     return $info;
     return $info;
 }
 }
-
-?>

+ 0 - 2
web/generate/ssl/index.php

@@ -108,5 +108,3 @@ $_SESSION['back'] = $_SERVER['REQUEST_URI'];
 include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/list_ssl.html');
 include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/list_ssl.html');
 include($_SERVER['DOCUMENT_ROOT'].'/templates/footer.html');
 include($_SERVER['DOCUMENT_ROOT'].'/templates/footer.html');
 unset($_SESSION['ok_msg']);
 unset($_SESSION['ok_msg']);
-
-?>

+ 0 - 2
web/inc/mail-wrapper.php

@@ -32,5 +32,3 @@ $mailtext = file_get_contents("php://stdin");
 if ((!empty($to)) && (!empty($subject))) {
 if ((!empty($to)) && (!empty($subject))) {
     send_email($to,$subject,$mailtext,$from);
     send_email($to,$subject,$mailtext,$from);
 }
 }
-
-?>

+ 0 - 1
web/inc/main.php

@@ -344,4 +344,3 @@ function list_timezones() {
     }
     }
     return $timezone_list;
     return $timezone_list;
 }
 }
-?>

+ 1 - 2
web/index.php

@@ -1,8 +1,7 @@
 <?php
 <?php
 session_start();
 session_start();
 if (isset($_SESSION['user'])) {
 if (isset($_SESSION['user'])) {
-    header("Location: /list/user");
+    header("Location: /list/user/");
 } else {
 } else {
     header("Location: /login/");
     header("Location: /login/");
 }
 }
-?>

+ 1 - 1
web/list/index.php

@@ -1,7 +1,7 @@
 <?php
 <?php
 session_start();
 session_start();
 if (isset($_SESSION['user'])) {
 if (isset($_SESSION['user'])) {
-    header("Location: /list/user");
+    header("Location: /list/user/");
 } else {
 } else {
     header("Location: /login/");
     header("Location: /login/");
 }
 }

+ 1 - 3
web/login/index.php

@@ -20,7 +20,7 @@ if (isset($_GET['logout'])) {
 
 
 // Login as someone else
 // Login as someone else
 if (isset($_SESSION['user'])) {
 if (isset($_SESSION['user'])) {
-    if ($_SESSION['user'] ==  'admin' && !empty($_GET['loginas'])) {
+    if ($_SESSION['user'] == 'admin' && !empty($_GET['loginas'])) {
         exec (VESTA_CMD . "v-list-user ".escapeshellarg($_GET['loginas'])." json", $output, $return_var);
         exec (VESTA_CMD . "v-list-user ".escapeshellarg($_GET['loginas'])." json", $output, $return_var);
         if ( $return_var == 0 ) {
         if ( $return_var == 0 ) {
             $data = json_decode(implode('', $output), true);
             $data = json_decode(implode('', $output), true);
@@ -96,5 +96,3 @@ if (empty($_SESSION['language'])) $_SESSION['language']='en';
 require_once($_SERVER['DOCUMENT_ROOT'].'/inc/i18n/'.$_SESSION['language'].'.php');
 require_once($_SERVER['DOCUMENT_ROOT'].'/inc/i18n/'.$_SESSION['language'].'.php');
 require_once('../templates/header.html');
 require_once('../templates/header.html');
 require_once('../templates/login.html');
 require_once('../templates/login.html');
-
-?>