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

This commit is contained in:
Malishev Dmitry 2015-04-16 14:31:15 -04:00
commit f871fafa12
24 changed files with 635 additions and 99 deletions

View file

@ -536,11 +536,8 @@ TIME=$(date +%T)
# Defining local storage function
local_backup(){
# Removing dublicate for this day
if [ -e "$BACKUP/$user.$DATE.tar" ]; then
deprecated="$DATE"
rm -f $BACKUP/$user.$DATE.tar
fi
rm -f $BACKUP/$user.$DATE.tar
# Checking retention
backup_list=$(ls -lrt $BACKUP/ | awk '{print $9}' |grep "^$user\.")
@ -549,10 +546,9 @@ local_backup(){
backups_rm_number=$((backups_count - BACKUPS))
(( ++backups_rm_number))
# Removing old backup
for backup in $(echo "$backup_list" | head -n $backups_rm_number); do
# Removing old backup
backup_date=$(echo $backup | sed -e "s/$user.//" -e "s/.tar$//")
deprecated="$deprecated $backup_date"
echo -e "$(date "+%F %T") Roated: $backup_date"
msg="$msg\n$(date "+%F %T") Rotated: $backup_date"
rm -f $BACKUP/$backup
@ -672,7 +668,6 @@ ftp_backup() {
backups_rm_number=$((backups_count - BACKUPS + 1))
for backup in $(echo "$backup_list" | head -n $backups_rm_number); do
backup_date=$(echo $backup | sed -e "s/$user.//" -e "s/.tar$//")
deprecated="$deprecated $backup"
echo -e "$(date "+%F %T") Roated ftp backup: $backup_date"
msg="$msg\n$(date "+%F %T") Roated ftp backup: $backup_date"
ftpc "cd $BPATH" "delete $backup"
@ -732,7 +727,7 @@ expect -f "-" <<EOF "$@"
set rc $OK
}
}
exp_continue
exp_continue
}
timeout {
@ -745,7 +740,7 @@ expect -f "-" <<EOF "$@"
puts "\$output"
}
exit \$rc
exit \$rc
EOF
}
@ -813,7 +808,7 @@ sftp_backup() {
exit "$rc"
fi
echo -e "$(date "+%F %T") Connection established"
# Checking retention
echo -e "$(date "+%F %T") Checking retention ..."
backup_list=$(sftpc "cd $BPATH" "ls -l" |awk '{print $9}' |grep "^$user\.")
@ -857,7 +852,6 @@ for backup_type in $(echo -e "${BACKUP_SYSTEM//,/\\n}"); do
done
# Removing tmpdir
cd /
rm -rf $tmpdir
# Calculation run time
@ -882,14 +876,11 @@ msg="$msg\n$(date "+%F %T") Runtime: $run_time $min"
# Vesta #
#----------------------------------------------------------#
# Deleting old backup records
for backup_record in $deprecated; do
if [ -e "$USER_DATA/backup.conf" ]; then
sed -i "/DATE='$backup_record/d" $USER_DATA/backup.conf
fi
done
# Removing duplicate
touch $USER_DATA/backup.conf
sed -i "/$user.$DATE.tar/d" $USER_DATA/backup.conf
# Concatenating string
# Regestering new backup
backup_str="BACKUP='$user.$DATE.tar'"
backup_str="$backup_str TYPE='$BACKUP_SYSTEM' SIZE='$size'"
backup_str="$backup_str WEB='${web_list// /,}'"
@ -900,9 +891,13 @@ backup_str="$backup_str CRON='$cron_list'"
backup_str="$backup_str UDIR='${udir_list// /,}'"
backup_str="$backup_str RUNTIME='$run_time' TIME='$TIME' DATE='$DATE'"
echo "$backup_str" >> $USER_DATA/backup.conf
# Removing old backups
tail -n $BACKUPS $USER_DATA/backup.conf > $USER_DATA/backup.conf_
mv -f $USER_DATA/backup.conf_ $USER_DATA/backup.conf
chmod 660 $USER_DATA/backup.conf
# Clean backup queue
# Deleting task from queue
sed -i "/v-backup-user $user /d" $VESTA/data/queue/backup.pipe
# Send notification

View file

@ -45,7 +45,7 @@ for ip in $ip_list; do
# Calculate usage
ip_usage=$(grep -H $ip $VESTA/data/users/*/web.conf)
web_domains=$(echo "$ip_usage"| wc -l)
web_domains=$(echo "$ip_usage" | sed '/^$/d' | wc -l)
sys_users=$(echo "$ip_usage" | cut -f7 -d/ | sort -u |\
tr '\n' ',' | sed "s/,$//g")

View file

@ -108,7 +108,7 @@ acl_check_rcpt:
require message = relay not permitted
domains = +local_domains : +relay_to_domains
deny message = smtp auth requried
deny message = smtp auth required
sender_domains = +local_domains
!authenticated = *

View file

@ -1,6 +1,6 @@
RULE='1' ACTION='ACCEPT' PROTOCOL='ICMP' PORT='0' IP='0.0.0.0/0' COMMENT='PING' SUSPENDED='no' TIME='17:13:48' DATE='2014-09-16'
RULE='2' ACTION='ACCEPT' PROTOCOL='TCP' PORT='8083' IP='0.0.0.0/0' COMMENT='VESTA' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='0.0.0.0/0' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='127.0.0.1/32' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='4' ACTION='ACCEPT' PROTOCOL='TCP' PORT='143,993' IP='0.0.0.0/0' COMMENT='IMAP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='5' ACTION='ACCEPT' PROTOCOL='TCP' PORT='110,995' IP='0.0.0.0/0' COMMENT='POP3' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='6' ACTION='ACCEPT' PROTOCOL='TCP' PORT='25,465,587,2525' IP='0.0.0.0/0' COMMENT='SMTP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'

View file

@ -82,11 +82,12 @@ http {
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/12;
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 172.64.0.0/13;
#set_real_ip_from 2400:cb00::/32;
#set_real_ip_from 2606:4700::/32;
#set_real_ip_from 2803:f800::/32;
#set_real_ip_from 2405:b500::/32;
#set_real_ip_from 2405:8100::/32;
real_ip_header CF-Connecting-IP;

View file

@ -43,6 +43,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_UserAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
// Enable ssh access
if(($answer == 'OK') && ($params["configoption2"] == 'on')) {
$postvars = array(
@ -62,6 +64,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_EnableSSH','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
}
// Add domain
@ -84,6 +88,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_AddDomain','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
}
}
@ -92,8 +98,8 @@ function vesta_CreateAccount($params) {
} else {
$result = $answer;
}
return $result;
return $result;
}
function vesta_TerminateAccount($params) {
@ -122,6 +128,8 @@ function vesta_TerminateAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','TerminateAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
@ -129,7 +137,6 @@ function vesta_TerminateAccount($params) {
}
return $result;
}
function vesta_SuspendAccount($params) {
@ -158,12 +165,15 @@ function vesta_SuspendAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','SuspendAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_UnsuspendAccount($params) {
@ -192,12 +202,15 @@ function vesta_UnsuspendAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','UnsuspendAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_ChangePassword($params) {
@ -227,13 +240,15 @@ function vesta_ChangePassword($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','ChangePassword','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_ChangePackage($params) {
@ -263,13 +278,15 @@ function vesta_ChangePackage($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','ChangePackage','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
return $result;
}
function vesta_ClientArea($params) {

View file

@ -108,7 +108,7 @@ acl_check_rcpt:
require message = relay not permitted
domains = +local_domains : +relay_to_domains
deny message = smtp auth requried
deny message = smtp auth required
sender_domains = +local_domains
!authenticated = *

View file

@ -1,6 +1,6 @@
RULE='1' ACTION='ACCEPT' PROTOCOL='ICMP' PORT='0' IP='0.0.0.0/0' COMMENT='PING' SUSPENDED='no' TIME='17:13:48' DATE='2014-09-16'
RULE='2' ACTION='ACCEPT' PROTOCOL='TCP' PORT='8083' IP='0.0.0.0/0' COMMENT='VESTA' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='0.0.0.0/0' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='127.0.0.1/32' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='4' ACTION='ACCEPT' PROTOCOL='TCP' PORT='143,993' IP='0.0.0.0/0' COMMENT='IMAP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='5' ACTION='ACCEPT' PROTOCOL='TCP' PORT='110,995' IP='0.0.0.0/0' COMMENT='POP3' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='6' ACTION='ACCEPT' PROTOCOL='TCP' PORT='25,465,587,2525' IP='0.0.0.0/0' COMMENT='SMTP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'

View file

@ -82,11 +82,12 @@ http {
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/12;
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 172.64.0.0/13;
#set_real_ip_from 2400:cb00::/32;
#set_real_ip_from 2606:4700::/32;
#set_real_ip_from 2803:f800::/32;
#set_real_ip_from 2405:b500::/32;
#set_real_ip_from 2405:8100::/32;
real_ip_header CF-Connecting-IP;

View file

@ -43,6 +43,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_UserAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
// Enable ssh access
if(($answer == 'OK') && ($params["configoption2"] == 'on')) {
$postvars = array(
@ -62,6 +64,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_EnableSSH','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
}
// Add domain
@ -84,6 +88,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_AddDomain','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
}
}
@ -92,8 +98,8 @@ function vesta_CreateAccount($params) {
} else {
$result = $answer;
}
return $result;
return $result;
}
function vesta_TerminateAccount($params) {
@ -122,6 +128,8 @@ function vesta_TerminateAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','TerminateAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
@ -129,7 +137,6 @@ function vesta_TerminateAccount($params) {
}
return $result;
}
function vesta_SuspendAccount($params) {
@ -158,12 +165,15 @@ function vesta_SuspendAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','SuspendAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_UnsuspendAccount($params) {
@ -192,12 +202,15 @@ function vesta_UnsuspendAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','UnsuspendAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_ChangePassword($params) {
@ -227,13 +240,15 @@ function vesta_ChangePassword($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','ChangePassword','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_ChangePackage($params) {
@ -263,13 +278,15 @@ function vesta_ChangePackage($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','ChangePackage','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
return $result;
}
function vesta_ClientArea($params) {

View file

@ -15,7 +15,7 @@ Alias /phpmyadmin /usr/share/phpmyadmin
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext:/usr/share/javascript:
</IfModule>
</Directory>

View file

@ -108,7 +108,7 @@ acl_check_rcpt:
require message = relay not permitted
domains = +local_domains : +relay_to_domains
deny message = smtp auth requried
deny message = smtp auth required
sender_domains = +local_domains
!authenticated = *

View file

@ -1,6 +1,6 @@
RULE='1' ACTION='ACCEPT' PROTOCOL='ICMP' PORT='0' IP='0.0.0.0/0' COMMENT='PING' SUSPENDED='no' TIME='17:13:48' DATE='2014-09-16'
RULE='2' ACTION='ACCEPT' PROTOCOL='TCP' PORT='8083' IP='0.0.0.0/0' COMMENT='VESTA' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='0.0.0.0/0' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='127.0.0.1/32' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='4' ACTION='ACCEPT' PROTOCOL='TCP' PORT='143,993' IP='0.0.0.0/0' COMMENT='IMAP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='5' ACTION='ACCEPT' PROTOCOL='TCP' PORT='110,995' IP='0.0.0.0/0' COMMENT='POP3' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'
RULE='6' ACTION='ACCEPT' PROTOCOL='TCP' PORT='25,465,587,2525' IP='0.0.0.0/0' COMMENT='SMTP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25'

View file

@ -82,11 +82,12 @@ http {
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/12;
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 172.64.0.0/13;
#set_real_ip_from 2400:cb00::/32;
#set_real_ip_from 2606:4700::/32;
#set_real_ip_from 2803:f800::/32;
#set_real_ip_from 2405:b500::/32;
#set_real_ip_from 2405:8100::/32;
real_ip_header CF-Connecting-IP;

View file

@ -43,6 +43,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_UserAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
// Enable ssh access
if(($answer == 'OK') && ($params["configoption2"] == 'on')) {
$postvars = array(
@ -62,6 +64,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_EnableSSH','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
}
// Add domain
@ -84,6 +88,8 @@ function vesta_CreateAccount($params) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
$answer = curl_exec($curl);
logModuleCall('vesta','CreateAccount_AddDomain','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
}
}
@ -92,8 +98,8 @@ function vesta_CreateAccount($params) {
} else {
$result = $answer;
}
return $result;
return $result;
}
function vesta_TerminateAccount($params) {
@ -122,6 +128,8 @@ function vesta_TerminateAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','TerminateAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
@ -129,7 +137,6 @@ function vesta_TerminateAccount($params) {
}
return $result;
}
function vesta_SuspendAccount($params) {
@ -158,12 +165,15 @@ function vesta_SuspendAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','SuspendAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_UnsuspendAccount($params) {
@ -192,12 +202,15 @@ function vesta_UnsuspendAccount($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','UnsuspendAccount','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_ChangePassword($params) {
@ -227,13 +240,15 @@ function vesta_ChangePassword($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','ChangePassword','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
}
function vesta_ChangePackage($params) {
@ -263,13 +278,15 @@ function vesta_ChangePackage($params) {
$answer = curl_exec($curl);
}
logModuleCall('vesta','ChangePackage','https://'.$params["serverhostname"].':8083/api/'.$postdata,$answer);
if($answer == 'OK') {
$result = "success";
} else {
$result = $answer;
}
return $result;
return $result;
}
function vesta_ClientArea($params) {

View file

@ -26,7 +26,7 @@ help() {
-f, --force Force installation
-i, --disable-iptables Disable iptables support
-b, --disable-fail2ban Disable fail2ban protection
-n, --noupdate Do not run yum update command
-n, --noupdate Do not run apt-get upgrade command
-s, --hostname Set server hostname
-e, --email Set email address
-p, --password Set admin password instead of generating it
@ -78,7 +78,7 @@ while getopts "hfibdnqe:m:p:s:" Option; do
f) force='yes' ;; # Force install
i) disable_iptables='yes' ;; # Disable iptables
b) disable_fail2ban='yes' ;; # Disable fail2ban
n) noupdate='yes' ;; # Disable yum update
n) noupdate='yes' ;; # Disable apt-get upgrade
s) servername=$OPTARG ;; # Server hostname
e) email=$OPTARG ;; # Set email
p) vpass=$OPTARG ;; # Admin password
@ -126,11 +126,11 @@ if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" != 'yes' ]; then
exit 1
fi
# Check admin user account
# Check admin group
if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" != 'yes' ]; then
echo "Error: user admin exists"
echo "Error: group admin exists"
echo
echo 'Please remove admin user account before proceeding.'
echo 'Please remove admin group before proceeding.'
echo 'If you want to do it automatically run installer with -f option:'
echo "Example: bash $0 --force"
exit 1

View file

@ -124,11 +124,11 @@ if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" != 'yes' ]; then
exit 1
fi
# Check admin user account
# Check admin group
if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" != 'yes' ]; then
echo "Error: user admin exists"
echo "Error: group admin exists"
echo
echo 'Please remove admin user account before proceeding.'
echo 'Please remove admin group before proceeding.'
echo 'If you want to do it automatically run installer with -f option:'
echo "Example: bash $0 --force"
exit 1

View file

@ -25,7 +25,7 @@ help() {
-f, --force Force installation
-i, --disable-iptables Disable iptables support
-b, --disable-fail2ban Disable fail2ban protection
-n, --noupdate Do not run yum update command
-n, --noupdate Do not run apt-get upgrade command
-s, --hostname Set server hostname
-e, --email Set email address
-p, --password Set admin password instead of generating it
@ -77,7 +77,7 @@ while getopts "hfibdnqe:m:p:s:" Option; do
f) force='yes' ;; # Force install
i) disable_iptables='yes' ;; # Disable iptables
b) disable_fail2ban='yes' ;; # Disable fail2ban
n) noupdate='yes' ;; # Disable yum update
n) noupdate='yes' ;; # Disable apt-get upgrade
s) servername=$OPTARG ;; # Server hostname
e) email=$OPTARG ;; # Set email
p) vpass=$OPTARG ;; # Admin password
@ -123,11 +123,11 @@ if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" != 'yes' ]; then
exit 1
fi
# Check admin user account
# Check admin group
if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" != 'yes' ]; then
echo "Error: user admin exists"
echo "Error: group admin exists"
echo
echo 'Please remove admin user account before proceeding.'
echo 'Please remove admin group before proceeding.'
echo 'If you want to do it automatically run installer with -f option:'
echo "Example: bash $0 --force"
exit 1

View file

@ -27,11 +27,11 @@ if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ -z "$1" ]; then
exit 1
fi
# Check admin user account
# Check admin group
if [ ! -z "$(grep ^admin: /etc/group)" ] && [ -z "$1" ]; then
echo "Error: group admin exists"
echo
echo 'Please remove admin user account before proceeding.'
echo 'Please remove admin group before proceeding.'
echo 'If you want to do it automatically run installer with -f option:'
echo "Example: bash $0 --force"
exit 1

View file

@ -82,6 +82,9 @@ http {
root /usr/local/vesta/web;
charset utf-8;
// Fix error "The plain HTTP request was sent to HTTPS port"
error_page 497 https://$host:$server_port$request_uri;
ssl on;
ssl_certificate /usr/local/vesta/ssl/certificate.crt;
ssl_certificate_key /usr/local/vesta/ssl/certificate.key;

471
web/inc/i18n/el.php Normal file
View file

@ -0,0 +1,471 @@
<?php
/**
* VestaCP interface translation in Greek.
* Translation by Cemendur.
* Last update: 10/03/2015
*/
$LANG['el'] = array(
'Packages' => 'Πακέτα',
'IP' => 'IP',
'Graphs' => 'Γραφήματα',
'Statistics' => 'Στατιστικά',
'Log' => 'Αρχείο Καταγραφής',
'Services' => 'Υπηρεσίες',
'Firewall' => 'Firewall',
'Updates' => 'Ενημερώσεις',
'Log in' => 'Σύνδεση',
'Log out' => 'Αποσύνδεση',
'USER' => 'ΧΡΗΣΤΗΣ',
'WEB' => 'WEB',
'DNS' => 'DNS',
'MAIL' => 'MAIL',
'DB' => 'DB',
'CRON' => 'CRON',
'BACKUP' => 'BACKUP',
'Add User' => 'Προσθέστε χρήστη',
'Add Domain' => 'Προσθέστε domain',
'Add Web Domain' => 'Προσθέστε Web Domain',
'Add DNS Domain' => 'Προσθέστε DNS Domain',
'Add DNS Record' => 'Προσθέστε Εγγραφή DNS',
'Add Mail Domain' => 'Προσθέστε Mail Domain',
'Add Mail Account' => 'Προσθέστε Λογαριασμό Mail',
'Add Database' => 'Προσθέστε Βάση Δεδομένων',
'Add Cron Job' => 'Προσθέστε Cron Job',
'Create Backup' => 'Δημιουργήστε αντίγραφο ασφαλείας',
'Configure' => 'Ρύθμιση',
'Restore All' => 'Επαναφορά Όλων',
'Add Package' => 'Προσθήκη Πακέτου',
'Add IP' => 'Προσθήκη Διεύθυνσης IP',
'Add Rule' => 'Προσθήκη Κανόνα',
'Ban IP Address' => 'Αποκλεισμός Διεύθυνσης IP',
'Search' => 'Αναζήτηση',
'Add one more FTP Account' => 'Προσθήκη ενός ακόμα Λογαριασμού FTP',
'Overall Statistics' => 'Συγκεντρωτικά Στατιστικά',
'Daily' => 'Καθημερινά',
'Weekly' => 'Εβδομαδιαία',
'Monthly' => 'Μηνιαία',
'Yearly' => 'Ετήσια',
'Add' => 'Προσθήκη',
'Back' => 'Πίσω',
'Save' => 'Αποθήκευση',
'Submit' => 'Υποβολή',
'toggle all' => 'Εναλλαγή όλων',
'apply to selected' => 'εφαρμογή επιλεγμένων',
'rebuild' => 'επαναδημιουργία',
'rebuild web' => 'επαναδημιουργία web',
'rebuild dns' => 'επαναδημιουργία dns',
'rebuild mail' => 'επαναδημιουργία mail',
'rebuild db' => 'επαναδημιουργία db',
'rebuild cron' => 'επαναδημιουργία cron',
'update counters' => 'ενημέρωση μετρητών',
'suspend' => 'αποκλεισμός',
'unsuspend' => 'άρση αποκλεισμού',
'delete' => 'διαγραφή',
'show per user' => 'εμφάνιση ανά χρήστη',
'login as' => 'είσοδος ως',
'logout' => 'αποσύνδεση',
'edit' => 'επεξεργασία',
'open webstats' => 'άνοιγμα στατιστικών web',
'view logs' => 'δείτε τα αρχεία καταγραφής',
'list records' => 'εμφάνιση %s εγγραφών',
'add record' => 'προσθήκη εγγραφής',
'list accounts' => 'εμφάνιση %s λογαριασμών',
'add account' => 'προσθήκη λογαριασμού',
'open webmail' => 'άνοιγμα webmail',
'list fail2ban' => 'εμφάνιση fail2ban',
'open %s' => 'άνοιγμα %s',
'download' => 'λήψη',
'restore' => 'επαναφορά',
'configure restore settings' => 'επεξεργασία ρυθμίσεων επαναφοράς',
'stop' => 'τερματισμός',
'start' => 'εκκίνηση',
'restart' => 'επανεκκίνηση',
'update' => 'ενημέρωση',
'generate' => 'δημιουργήστε',
'Generate CSR' => 'Δημιουργήστε CSR',
'reread IP' => 'Ενημέρωση IP',
'enable autoupdate' => 'ενεργοποίηση autoupdate',
'disable autoupdate' => 'απενεργοποίηση autoupdate',
'turn on notifications' => 'ενεργοποίηση ειδοποιήσεων',
'turn off notifications' => 'απενεργοποίηση ειδοποιήσεων',
'Adding User' => 'Προσθήκη Χρήστη',
'Editing User' => 'Επεξεργασία Χρήστη',
'Adding Domain' => 'Προσθήκη Domain',
'Editing Domain' => 'Επεξεργασία Domain',
'Adding DNS Domain' => 'Προσθήκη DNS Domain',
'Editing DNS Domain' => 'Επεξεργασία DNS Domain',
'Adding DNS Record' => 'Προσθήκη Εγγραφής DNS',
'Editing DNS Record' => 'Επεξεργασία Εγγραφής DNS',
'Adding Mail Domain' => 'Προσθήκη Mail Domain',
'Editing Mail Domain' => 'Επεξεργασία Mail Domain',
'Adding Mail Account' => 'Προσθήκη Λογαριασμού Mail',
'Editing Mail Account' => 'Επεξεργασία Λογαριασμού Mail',
'Adding database' => 'Προσθήκη database',
'Editing Cron Job' => 'Επεξεργασία Cron Job',
'Adding Cron Job' => 'Προσθήκη Cron Job',
'Editing Database' => 'Επεξεργασία Βάσης Δεδομένων',
'Adding Package' => 'Προσθήκη Πακέτου',
'Editing Package' => 'Επεξεργασία Πακέτου',
'Adding IP address' => 'Προσθήκη Διεύθυνσης IP',
'Editing IP Address' => 'Επεξεργασία Διεύθυνσης IP',
'Editing Backup Exclusions' => 'Επεξεργασία εξαιρέσεων αντιγράφου ασφαλείας',
'Generating CSR' => 'Δημιουργία CSR',
'Listing' => 'Εμφάνιση',
'Search Results' => 'Αναζήτηση Αποτελεσμάτων',
'Adding Firewall Rule' => 'Προσθήκη Κανόνα Τείχους Προστασίας',
'Editing Firewall Rule' => 'Επεξεργασία Κανόνα Τείχους Προστασίας',
'Adding IP Address to Banlist' => 'Προσθήκη Διεύθυνσης IP στη λίστα απαγόρευσης',
'active' => 'ενεργό',
'spnd' => 'ανεσταλμένο',
'suspended' => 'ανεσταλμένο',
'running' => 'εκτελείται',
'stopped' => 'τερματισμένο',
'outdated' => 'ανενημέρωτο',
'updated' => 'ενημερωμένο',
'yes' => 'ναι',
'no' => 'όχι',
'none' => 'κανένα',
'pb' => 'pb',
'tb' => 'tb',
'gb' => 'gb',
'mb' => 'mb',
'minute' => 'λεπτό',
'hour' => 'ώρα',
'day' => 'ημέρα',
'days' => 'ημέρες',
'hours' => 'ώρες',
'minutes' => 'λεπτά',
'month' => 'μήνας',
'package' => 'πακέτο',
'Bandwidth' => 'Bandwidth',
'Disk' => 'Δίσκος',
'Web' => 'Web',
'Mail' => 'Mail',
'Databases' => 'Βάσεις Δεδομένων',
'User Directories' => 'Κατάλογοι Χρήστη',
'Template' => 'Template',
'Web Template' => 'Apache Template',
'Proxy Template' => 'Nginx Template',
'DNS Template' => 'DNS Template',
'Web Domains' => 'Web Domains',
'SSL Domains' => 'SSL Domains',
'Web Aliases' => 'Ψευδώνυμα Web',
'per domain' => 'ανά domain',
'DNS Domains' => 'DNS Domains',
'DNS Domains' => 'DNS Domains',
'DNS records' => 'Εγγραφές DNS' ,
'Name Servers' => 'Διακομιστές Ονομάτων',
'Mail Domains' => 'Mail Domains',
'Mail Accounts' => 'Λογαριασμοί Mail',
'Cron Jobs' => 'Cron Jobs',
'SSH Access' => 'Πρόσβαση SSH',
'IP Addresses' => 'Διευθύνσεις IP',
'Backups' => 'Αντίγραφα Ασφαλείας',
'Backup System' => 'Σύστημα Αντιγράφων Ασφαλείας',
'backup exclusions' => 'εξαιρέσεις αντιγράφου ασφαλείας',
'template' => 'template',
'SSL Support' => 'Υποστήριξη SSL',
'SSL Home Directory' => 'Αρχικός Κατάλογος SSL',
'Proxy Support' => 'Υποστήριξη Nginx',
'Proxy Extensions' => 'Πρόσθετα Nginx',
'Web Statistics' => 'Στατιστικά Web',
'Additional FTP Account' => 'Επιπρόσθετος Λογαριασμός FTP',
'SOA' => 'SOA',
'TTL' => 'TTL',
'Expire' => 'Λήγει',
'Records' => 'Εγγραφές',
'Catchall email' => 'Catchall email',
'AntiVirus Support' => 'Υποστήριξη AntiVirus',
'AntiSpam Support' => 'Υποστήριξη AntiSpam',
'DKIM Support' => 'Υποστήριξη DKIM',
'Accounts' => 'Λογαριασμοί',
'Quota' => 'Ποσοστό',
'Autoreply' => 'Αυτόματη απάντηση',
'Forward to' => 'Προώθηση σε',
'Do not store forwarded mail' => 'Μη αποθήκευση των προωθημένων mail',
'database' => 'βάση δεδομένων',
'User' => 'Χρήστης',
'Host' => 'Host',
'Charset' => 'Charset',
'Min' => 'Λεπ',
'Hour' => 'Ώρα',
'Day' => 'Ημέρα',
'Month' => 'Μήνας',
'Day of week' => 'Ημέρα της εβδομάδας',
'local' => 'τοπικά',
'Run Time' => 'Ώρα',
'Backup Size' => 'Μέγεθος Αντιγράφων Ασφαλείας',
'SYS' => 'SYS',
'Domains' => 'Domains',
'Status' => 'Κατάσταση',
'shared' => 'shared',
'dedicated' => 'dedicated',
'Owner' => 'Ιδιοκτήτης',
'Users' => 'Χρήστες',
'Load Average' => 'Μέσος Όρος Φόρτου',
'Memory Usage' => 'Χρήση Μνήμης',
'HTTPD Usage' => 'Χρήση HTTPD',
'NGINX Usage' => 'Χρήση NGINX',
'MySQL Usage on localhost' => 'Χρήση της MySQL στο localhost',
'PostgreSQL Usage on localhost' => 'Χρήση της PostgreSQL στο localhost',
'Bandwidth Usage eth0' => 'Χρήση Bandwidth eth0',
'FTP Usage' => 'Χρήση FTP ',
'SSH Usage' => 'Χρήση SSH',
'reverse proxy' => 'reverse proxy',
'web server' => 'διακομιστής web ',
'dns server' => 'διακομιστής dns',
'mail server' => 'διακομιστής mail',
'pop/imap server' => 'διακομιστής pop/imap',
'email antivirus' => 'antivirus ηλεκτρονικής αλληλογραφίας',
'email antispam' => 'antispam ηλεκτρονικής αλληλογραφίας',
'database server' => 'διακομιστής βάσης δεδομένων',
'ftp server' => 'διακομιστής ftp',
'job scheduler' => 'job scheduler',
'CPU' => 'CPU',
'Memory' => 'Μνήμη',
'Uptime' => 'χρόνος λειτουργίας',
'core package' => 'πακέτο πυρήνα',
'php interpreter' => 'διερμηνέας php',
'internal web server' => 'εσωτερικός web server',
'Version' => 'Έκδοση',
'Release' => 'Κυκλοφορία',
'Architecture' => 'Αρχιτεκτονική',
'Object' => 'Αντικείμενο',
'Owner' => 'Ιδιοκτήτης',
'Username' => 'Όνομα Χρήστη',
'Password' => 'Κωδικός',
'Email' => 'Email',
'Package' => 'Πακέτο',
'Language' => 'Γλώσσα',
'First Name' => 'Όνομα',
'Last Name' => 'Επώνυμο',
'Send login credentials to email address' => 'αποστολή των διαπιστευτηρίων εισόδου στην διεύθυνση ηλεκτρονικού ταχυδρομείου',
'Default Template' => 'Προεπιλεγμένο Template',
'Default Name Servers' => 'Προεπιλεγμένοι Name Servers',
'Domain' => 'Domain',
'DNS Support' => 'Υποστήριξη DNS',
'Mail Support' => 'Υποστήριξη Mail',
'Advanced options' => 'Προχωρημένες επιλογές',
'Aliases' => 'Ψευδώνυμα',
'SSL Certificate' => 'Πιστοποιητικό SSL',
'SSL Key' => 'Κλειδί SSL',
'SSL Certificate Authority / Intermediate' => 'Αρχή Πιστοποιητικού SSL / Ενδιάμεσος',
'SSL CSR' => 'SSL CSR',
'optional' => 'προεραιτικό',
'internal' => 'εσωτερικό',
'Statistics Authorization' => 'Εξουσιοδότηση Στατιστικών',
'Statistics Auth' => 'Εξουσιοδότηση Στατιστικών',
'Account' => 'Λογαριασμός',
'Prefix will be automaticaly added to username' => 'Πρόθεμα %s θα προστεθεί αυτόματα στο όνομα χρήστη',
'Send FTP credentials to email' => 'Αποστολή διαπιστευτηρίων FTP στη διεύθυνση ηλεκτρονικού ταχυδρομείου',
'Expiration Date' => 'Ημερομηνία Λήξης',
'YYYY-MM-DD' => 'ΕΕΕΕ-MM-ΗΗ',
'Name servers' => 'Name servers',
'Record' => 'Εγγραφή',
'IP or Value' => 'IP ή Τιμή',
'Priority' => 'Προτεραιότητα',
'Record Number' => 'Αριθμός Εγγραφής',
'in megabytes' => 'σε megabytes',
'Message' => 'Μήνυμα',
'use local-part' => 'χρήση τοπικού-μέρους',
'one or more email addresses' => 'μία ή περισσότερες διευθύνσεις ηλεκτρονικού ταχυδρομείου',
'Prefix will be automaticaly added to database name and database user' => 'Πρόθεμα %s θα προστεθεί στο όνομα της βάσης δεδομένων και στον χρήστη της.',
'Database' => 'Βάση Δεδομένων',
'Type' => 'Τύπος',
'Minute' => 'Λεπτό',
'Command' => 'Εντολή',
'Package Name' => 'Όνομα Πακέτου',
'Netmask' => 'Μάσκα Δικτύου',
'Interface' => 'Διεπαφή',
'Shared' => 'Διαμοιραζόμενα',
'Assigned user' => 'Assigned user',
'Assigned domain' => 'Assigned domain',
'NAT IP association' => 'NAT IP association',
'shell' => 'κέλυφος',
'web domains' => 'web domains',
'web aliases' => 'Ψευδώνυμα web',
'dns records' => 'Εγγραφές dns',
'mail domains' => 'mail domains',
'mail accounts' => 'Λογαριασμοί mail',
'accounts' => 'λογαριασμοί',
'databases' => 'βάσεις δεδομένων',
'cron jobs' => 'cron jobs',
'backups' => 'αντίγραφα ασφαλείας',
'quota' => 'ποσοστό',
'day of week' => 'ημέρα της εβδομάδας',
'cmd' => 'cmd',
'users' => 'χρήστες',
'domains' => 'domains',
'aliases' => 'ψευδώνυμα',
'records' => 'εγγραφές',
'jobs' => 'jobs',
'username' => 'όνομα χρήστη',
'password' => 'κωδικός πρόσβασης',
'type' => 'τύπος',
'charset' => 'charset',
'domain' => 'domain',
'ip' => 'ip',
'ip address' => 'διεύθυνση ip',
'IP address' => 'διεύθυνση IP',
'netmask' => 'μάσκα δικτύου',
'interface' => 'διεπαφή',
'assigned user' => 'assigned user',
'ns1' => 'ns1',
'ns2' => 'ns2',
'user' => 'χρήστης',
'email' => 'διεύθυνση ηλεκτρονικού ταχυδρομείου',
'first name' => 'όνομα',
'last name' => 'επώνυμο',
'account' => 'λογαριασμός',
'ssl certificate' => 'πιστοποιητικό ssl',
'ssl key' => 'κλειδί ssl',
'stats user password' => 'στατιστικά χρήστης κωδικός πρόσβασης',
'stats username' => 'στατιστικά όνομα χρήστη',
'stats password' => 'στατιστικά κωδικός πρόσβασης',
'ftp user password' => 'κωδικός πρόσβασης χρήστη ftp',
'ftp user' => 'χρήστης ftp',
'Last 70 lines of %s.%s.log' => 'Τελευταίες 70 γραμμές του %s.%s.log',
'Download AccessLog' => 'Λήψη AccessLog',
'Download ErrorLog' => 'Λήψη ErrorLog',
'Country' => 'Χώρα',
'2 letter code' => 'κωδικός 2 χαρακτήρων',
'State / Province' => 'Πολιτεία / Επαρχία',
'City / Locality' => 'Πόλη / Περιοχή',
'Organization' => 'Οργάνωση',
'Action' => 'Ενέργεια',
'Protocol' => 'Πρωτόκολλο',
'Port' => 'Θύρα',
'Comment' => 'Σχόλιο',
'Banlist' => 'Λίστα απαγόρευσης',
'ranges are acceptable' => 'εύρος είναι αποδεκτό',
'CIDR format is supported' => 'To format CIDR υποστηρίζεται',
'1 account' => '1 λογαριασμός',
'%s accounts' => '%s λογαριασμοί',
'1 domain' => '1 domain',
'%s domains' => '%s domains',
'1 record' => '1 εγγραφή',
'%s records' => '%s εγγραφές',
'1 mail account' => '1 λογιαριασμός mail',
'%s mail accounts' => '%s λογαριασμοί mail',
'1 database' => '1 βάση δεδομένων',
'%s databases' => '%s βάσεις δεδομένων',
'1 cron job' => '1 cron job',
'%s cron jobs' => '%s cron jobs',
'1 archive' => '1 αρχείο',
'%s archives' => '%s αρχεία',
'1 package' => '1 πακέτο',
'%s packages' => '%s πακέτα',
'1 IP address' => '1 διεύθυνση IP',
'%s IP addresses' => '%s διευθύνσεις IP',
'1 month' => '1 μήνας',
'%s months' => '%s μήνες',
'1 log record' => '1 εγγραφή καταγραφής',
'%s log records' => '%s εγγραφές καταγραφής',
'1 object' => '1 αντικείμενο',
'%s objects' => '%s αντικείμενα',
'no exclusions' => 'χωρίς εξαιρέσεις',
'1 rule' => '1 κανόνας',
'%s rules' => '%s κανόνες',
'There are no currently banned IP' => 'Δεν έχει απαγορευτεί η πρόσβαση σε διευθύνσεις IP',
'USER_CREATED_OK' => 'Ο χρήστης <a href="/edit/user/?user=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'WEB_DOMAIN_CREATED_OK' => 'Το Domain <a href="/edit/web/?domain=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'DNS_DOMAIN_CREATED_OK' => 'To DNS Domain <a href="/list/dns/?domain=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'DNS_RECORD_CREATED_OK' => 'Η εγγραφή <b>%s.%s</b> έχει δημιουργηθεί επιτυχώς.',
'MAIL_DOMAIN_CREATED_OK' => 'Το mail domain <a href="/list/mail/?domain=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'MAIL_ACCOUNT_CREATED_OK' => 'Ο λογαριασμός mail <a href="/edit/mail/?account=%s&domain=%s"><b>%s@%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'DATABASE_CREATED_OK' => 'Η βάση δεδομένων <a href="/edit/db/?database=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'CRON_CREATED_OK' => 'Το cron job έχει δημιουργηθεί επιτυχώς.',
'IP_CREATED_OK' => 'Η διεύθυνση IP <a href="/edit/ip/?ip=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'PACKAGE_CREATED_OK' => 'Το πακέτο a href="/edit/package/?package=%s"><b>%s</b></a> έχει δημιουργηθεί επιτυχώς.',
'SSL_GENERATED_OK' => 'Το πιστοποιητικό έχει δημιουργηθεί επιτυχώς.',
'RULE_CREATED_OK' => 'Ο κανόνας έχει δημιουργηθεί επιτυχώς.',
'Autoupdate has been successfully enabled' => 'Η αυτόματη ενημέρωση έχει ενεργοποιηθεί επιτυχώς.',
'Autoupdate has been successfully disabled' => 'Η αυτόματη ενημέρωση έχει απενεργοποιηθεί επιτυχώς.',
'Cronjob email reporting has been successfully enabled' => 'Το Cronjob αναφοράς email έχει ενεργοποιηθεί επιτυχώς',
'Cronjob email reporting has been successfully disabled' => 'Το Cronjob αναφοράς email έχει απανεργοποιηθεί επιτυχώς',
'Changes has been saved.' => 'Οι αλλαγές έχουν αποθηκευτεί.',
'Confirmation' => 'Επιβεβαίωση',
'DELETE_USER_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε τον χρήστη %s;',
'SUSPEND_USER_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε τον χρήστη %s;',
'UNSUSPEND_USER_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός του χρήστη %s;',
'DELETE_DOMAIN_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε τo Domain %s;',
'SUSPEND_DOMAIN_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε τo Domain %s;',
'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός του Domain %s;',
'DELETE_RECORD_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε την εγγραφή %s;',
'SUSPEND_RECORD_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε την εγγραφή %s;',
'UNSUSPEND_RECORD_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός της εγγραφής %s;',
'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε το %s;',
'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε το %s;',
'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός του %s;',
'DELETE_DATABASE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε την βάση δεδομένων %s;',
'SUSPEND_DATABASE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε την βάση δεδομένων %s;',
'UNSUSPEND_DATABASE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός της βάσης δεδομένων%s;',
'DELETE_CRON_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε το cron job;',
'SUSPEND_CRON_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε το cron job;',
'UNSUSPEND_CRON_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός του cron job;',
'DELETE_BACKUP_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε το %s αντίγραφο ασφαλείας;',
'DELETE_EXCLUSION_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε την %s εξαίρεση;',
'DELETE_PACKAGE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε το πακέτο %s;',
'DELETE_IP_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε την διεύθυνση IP %s;',
'DELETE_RULE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να διαγράψετε τον κανόνα #%s?',
'SUSPEND_RULE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αποκλείσετε τον κανόνα #%s?',
'UNSUSPEND_RULE_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να αρθεί ο αποκλεισμός του κανόνα #%s?',
'RESTART_CONFIRMATION' => 'Είστε σίγουρος πως θέλετε να επανεκκινήσετε το %s?',
'Welcome' => 'Καλωσήρθατε',
'LOGGED_IN_AS' => 'Συνδεδεμένος ως χρήστης %s',
'Error' => 'Σφάλμα',
'Invalid username or password' => 'Λάθος όνομα χρήστη ή κωδικός πρόσβασης.',
'Invalid username or code' => 'Λάθος όνομα χρήστη ή κωδικός.',
'Passwords not match' => 'Δεν υπάρχει αντιστοιχία των κωδικών πρόσβασης.',
'Please enter valid email address.' => 'Παρακαλώ εισάγετε μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου.',
'Field "%s" can not be blank.' => 'Το πεδίο "%s" δεν επιτρέπεται να είναι κενό.',
'Password is too short.' => 'Ο κωδικός πρόσβασης είναι πολύ μικρός (το ελάχιστο είναι 6 χαρακτήρες)',
'Error code:' => 'Κωδικός λάθους: %s',
'SERVICE_ACTION_FAILED' => '"%s" "%s" απέτυχε',
'IP address is in use' => 'Η διεύθυνση IP είναι σε χρήση',
'BACKUP_SCHEDULED' => 'Η διεργασία έχει προστεθεί στην ουρά. Θα λάβετε ειδοποίηση ηλεκτρονικού ταχυδρομείου όταν το αντίγραφο ασφαλείας είναι έτοιμο προς λήψη.',
'BACKUP_EXISTS' => 'Μια υπάρχουσα διεργασία δημιουργίας αντιγράφου ασφαλείας εκτελείται ήδη. Παρακαλώ περιμένετε να ολοκληρωθεί.',
'RESTORE_SCHEDULED' => 'Η διεργασία έχει προστεθεί στην ουρά. Θα λάβετε ειδοποίηση ηλεκτρονικού ταχυδρομείου όταν η επαναφορά σας έχει ολοκληρωθεί.',
'RESTORE_EXISTS' => 'Μια υπάρχουσα διεργασία επαναφοράς εκτελείται ήδη. Παρακαλώ περιμένετε να ολοκληρωθεί πριν την εκκινήσετε ξανά.',
'WEB_EXCLUSIONS' => "Πληκτρολογήστε το όνομα domain, ένα ανά σειρά. Για να εξαιρέσετε όλα τα ονόματα domain χρησιμοποιήστε *. Για να εξαιρέσετε συγκεκριμένους καταλόγους χρησιμοποιήστε την ακόλουθη μορφή: domain.com:public_html/cache:public_html/tmp",
'DNS_EXCLUSIONS' => "Πληκτρολογήστε το όνομα της διεύθυνσης DNS, ένα ανά σειρά. Για να εξαιρέσετε όλα τα ονόματα διεύθυνσης DNS χρησιμοποιήστε *",
'MAIL_EXCLUSIONS' => "Πληκτρολογήστε το όνομα της διεύθυνσης mail, ένα ανά σειρά. Για να εξαιρέσετε όλα τα ονόματα διεύθυνσης mail χρησιμοποιήστε *. Για να εξαιρέσετε συγκεκριμένους λογαριασμούς χρησιμοποιήσετε την ακόλουθη μορφή: domain.com:info:support:postmaster",
'DB_EXCLUSIONS' => "Πληκτρολογήστε το πλήρες όνομα της βάσης δεδομένων, ένα ανά σειρά. Για να εξαιρέσετε όλες τις βάσεις δεδομένων χρησιμοποιήστε *",
'CRON_EXCLUSIONS' => "Για να εξαιρέσετε όλα τα jobs χρησιμοποιήστε *",
'USER_EXCLUSIONS' => "Πληκτρολογήστε το όνομα καταλόγου, ένα ανά σειρά. Για να εξαιρέσετε όλους τους καταλόγους χρησιμοποιήστε *",
'Welcome to Vesta Control Panel' => 'Καλωσήρθατε στον Πίνακα Ελέγχου Vesta',
'MAIL_FROM' => 'Vesta Control Panel <noreply@%s>',
'GREETINGS_GORDON_FREEMAN' => "Γειά, %s %s,\n",
'GREETINGS' => "Γειά,\n",
'ACCOUNT_READY' => "Ο λογαριασμός σας δημιουργήθηκε και είναι έτοιμος για χρήση.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n",
'FTP login credentials' => 'Διαπιστευτήρια εισόδου FTP',
'FTP_ACCOUNT_READY' => "Ο λογαριασμός FTP δημιουργήθηκε και είναι έτοιμος για χρήση.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n",
'Database Credentials' => 'Διαπιστευτήρια Βάσης Δεδομένων',
'DATABASE_READY' => "Η βάση δεδομένων δημιουργήθηκε επιτυχώς.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n",
'forgot password' => 'ξέχασα τον κωδικό πρόσβασης',
'Confirm' => 'Επιβεβαίωση',
'New Password' => 'Νέος κωδικός πρόσβασης',
'Confirm Password' => 'Επιβεβαίωση κωδικού πρόσβασης',
'Reset' => 'Επαναφορά',
'Reset Code' => 'Επαναφορά κωδικού',
'RESET_NOTICE' => '',
'RESET_CODE_SENT' => 'Ο κωδικός επαναφοράς του κωδικού πρόσβασης έχει αποσταλεί στη διεύθυνση ταχυδρομείου σας<br>',
'MAIL_RESET_SUBJECT' => 'Επαναφορά κωδικού πρόσβασης στο %s',
'PASSWORD_RESET_REQUEST' => "Για να επαναφέρετε τον κωδικό πρόσβασης του πίνακα ελέγχου σας, παρακαλώ ακολουθήστε το link:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nΕναλλακτικά, πλοηγηθείτε στη διεύθυνση https://%s/reset/?action=code&user=%s και εισάγετε τον ακόλουθο κωδικό επαναφοράς:\n%s\n\nΕάν δεν ζητήσατε επαναφορά κωδικού πρόσβασης, παρακαλούμε αγνοείστε το παρόν μήνυμα και δεχθείτε τη συγγνώμη μας.\n\n--\nVesta Control Panel\n",
);
?>

View file

@ -54,18 +54,18 @@ $LANG['tr'] = array(
'toggle all' => 'hepsini seç',
'apply to selected' => 'seçimi uygula',
'rebuild' => 'rebuild',
'rebuild web' => 'rebuild web',
'rebuild dns' => 'rebuild dns',
'rebuild mail' => 'rebuild mail',
'rebuild db' => 'rebuild db',
'rebuild cron' => 'rebuild cron',
'rebuild' => 'yeniden oluştur',
'rebuild web' => 'web\'i yeniden oluştur,
'rebuild dns' => 'dns\'i yeniden oluştur',
'rebuild mail' => 'mail\'i yeniden oluştur',
'rebuild db' => 'db\'yi yeniden oluştur',
'rebuild cron' => 'cron\'u yeniden oluştur',
'update counters' => 'sayaçları güncelle',
'suspend' => 'askıya al',
'unsuspend' => 'devam ettir',
'delete' => 'sil',
'show per user' => 'kullanıcı başına göster',
'login as' => 'login as',
'login as' => 'giriş yapıldı:',
'logout' => 'oturumu kapat',
'edit' => 'düzenle',
'open webstats' => 'webstats aç',
@ -178,9 +178,9 @@ $LANG['tr'] = array(
'Additional FTP Account' => 'İlave FTP Hesabı',
'SOA' => 'SOA',
'TTL' => 'TTL',
'Expire' => 'Expire',
'Records' => 'Records',
'Catchall email' => 'Catchall email',
'Expire' => 'Sona ermiş',
'Records' => 'Kayıtlar',
'Catchall email' => 'Kapsamlı email',
'AntiVirus Support' => 'AntiVirus Desteği',
'AntiSpam Support' => 'AntiSpam Desteği',
'DKIM Support' => 'DKIM Desteği',
@ -204,8 +204,8 @@ $LANG['tr'] = array(
'SYS' => 'SYS',
'Domains' => 'Domainler',
'Status' => 'Durum',
'shared' => 'shared',
'dedicated' => 'dedicated',
'shared' => 'paylaşılan',
'dedicated' => 'özel',
'Owner' => 'Sahip',
'Users' => 'Kullanıcılar',
'Load Average' => 'Sistem Yükü',
@ -231,11 +231,11 @@ $LANG['tr'] = array(
'Memory' => 'Hafıza',
'Uptime' => 'Uptime',
'core package' => 'core paketi',
'php interpreter' => 'php interpreter',
'internal web server' => 'internal web server',
'php interpreter' => 'php yorumcusu',
'internal web server' => 'dahili web sunucusu',
'Version' => 'Sürüm',
'Release' => 'Release',
'Architecture' => 'Architecture',
'Release' => 'Yayınlanma',
'Architecture' => 'Yapı',
'Object' => 'Nesne',
'Owner' => 'Sahip',
'Username' => 'Kullanıcı Adı',
@ -252,7 +252,7 @@ $LANG['tr'] = array(
'DNS Support' => 'DNS Desteği',
'Mail Support' => 'Mail Desteği',
'Advanced options' => 'Gelişmiş seçenekler',
'Aliases' => 'Aliases',
'Aliases' => 'Takma adlar (Alias)',
'SSL Certificate' => 'SSL Sertifikası',
'SSL Key' => 'SSL Anahtarı (Key)',
'SSL Certificate Authority / Intermediate' => 'SSL Sertifika Yazarı / Aracı (Authority / Intermediate)',
@ -283,13 +283,13 @@ $LANG['tr'] = array(
'Package Name' => 'Paket Adı',
'Netmask' => 'Netmask',
'Interface' => 'Arayüz',
'Shared' => 'Shared',
'Shared' => 'Paylaşılan',
'Assigned user' => 'Atanan kullanıcı',
'Assigned domain' => 'Atanan alan adı',
'NAT IP association' => 'NAT IP association',
'shell' => 'shell',
'web domains' => 'web alan adları',
'web aliases' => 'web aliases',
'web aliases' => 'web takma adları',
'dns records' => 'dns kayıtları',
'mail domains' => 'mail domainleri',
'mail accounts' => 'mail hesapları',

View file

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

View file

@ -51,15 +51,28 @@
</tr>
<tr>
<td>
<select class="vst-list" name="v_chain">
<option value="SSH" <?php if ((!empty($v_chain)) && ( $v_chain == "'SSH'" )) echo 'selected'?>><?php print __('SSH') ?></option>
<option value="WEB" <?php if ((!empty($v_chain)) && ( $v_chain == "'WEB'" )) echo 'selected'?>><?php print __('WEB') ?></option>
<option value="FTP" <?php if ((!empty($v_chain)) && ( $v_chain == "'FTP'" )) echo 'selected'?>><?php print __('FTP') ?></option>
<option value="DNS" <?php if ((!empty($v_chain)) && ( $v_chain == "'DNS'" )) echo 'selected'?>><?php print __('DNS') ?></option>
<option value="MAIL" <?php if ((!empty($v_chain)) && ( $v_chain == "'MAIL'" )) echo 'selected'?>><?php print __('MAIL') ?></option>
<option value="DB" <?php if ((!empty($v_chain)) && ( $v_chain == "'DB'" )) echo 'selected'?>><?php print __('DB') ?></option>
<option value="VESTA" <?php if ((!empty($v_chain)) && ( $v_chain == "'VESTA'" )) echo 'selected'?>><?php print __('VESTA') ?></option>
</select>
<select class="vst-list" name="v_chain">
<?php
// chains list
$chains = array(
'SSH',
'WEB',
'FTP',
'DNS',
'MAIL',
'DB',
'VESTA'
);
foreach($chains as $chain){
$selected = (!empty($v_chain)) && ( $v_chain == $chain) ? 'selected' : '';
?>
<option value="<?php echo $chain?>" <?php echo $selected ?>>
<?php print __($chain) ?>
</option>
<?php } ?>
</select>
</td>
</tr>
<tr>