From 560d4e548e7731022fe5267e998a6ea9de9d999a Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Wed, 14 Dec 2011 15:15:26 +0200 Subject: [PATCH 01/16] new skeleton templates --- data/templates/skel/document_errors/403.html | 29 +++++++++++------ data/templates/skel/document_errors/404.html | 30 +++++++++++------ data/templates/skel/document_errors/50x.html | 29 +++++++++++------ data/templates/skel/public_html/index.html | 34 ++++++++++++-------- data/templates/skel/public_shtml/index.html | 34 ++++++++++++-------- 5 files changed, 102 insertions(+), 54 deletions(-) diff --git a/data/templates/skel/document_errors/403.html b/data/templates/skel/document_errors/403.html index 68bd5f2f..8547c106 100644 --- a/data/templates/skel/document_errors/403.html +++ b/data/templates/skel/document_errors/403.html @@ -1,17 +1,28 @@ - - + 403 — Forbidden - - + + + -
-
- http://%domain% -

Forbidden
403

-

Unfortunately, you do not have permission to view this.

+

%domain%

+ +

403

+

Forbidden

+
+ Unfortunately, you do not have permission to view this
diff --git a/data/templates/skel/document_errors/404.html b/data/templates/skel/document_errors/404.html index 6fc5eccc..91d8331f 100644 --- a/data/templates/skel/document_errors/404.html +++ b/data/templates/skel/document_errors/404.html @@ -1,18 +1,28 @@ - - + 404 — Not Found - - + + + -
-
- http://%domain% -

Page Not Found
404

-

It seems that the page you were trying to reach does not exist anymore, or maybe it has just moved. You can start again from the home or go back to previous page.

+

%domain%

+

404

+

Page Not Found

+
+ It seems that the page you were trying to reach does not exist anymore, or maybe it has just moved. + You can start again from the home or go back to previous page.
- diff --git a/data/templates/skel/document_errors/50x.html b/data/templates/skel/document_errors/50x.html index 1fee5157..b5ae9a50 100644 --- a/data/templates/skel/document_errors/50x.html +++ b/data/templates/skel/document_errors/50x.html @@ -1,17 +1,28 @@ - - + 500 — Internal Sever Error - - + + + -
-
- http://%domain% -

Internal Sever Error
500

-

Sorry, something went wrong :(

+

%domain%

+ +

500

+

Internal Sever Error

+
+ Sorry, something went wrong :(
diff --git a/data/templates/skel/public_html/index.html b/data/templates/skel/public_html/index.html index f757746f..1a191891 100644 --- a/data/templates/skel/public_html/index.html +++ b/data/templates/skel/public_html/index.html @@ -1,21 +1,29 @@ - - - %domain% — coming soon - - + + %domain% — Coming Soon + + + -
-

%domain%

-

- apache + - nginx + - percona + - vesta -

+

%domain%

+
+ apache + + nginx + + percona + + vesta
+ diff --git a/data/templates/skel/public_shtml/index.html b/data/templates/skel/public_shtml/index.html index f757746f..1a191891 100644 --- a/data/templates/skel/public_shtml/index.html +++ b/data/templates/skel/public_shtml/index.html @@ -1,21 +1,29 @@ - - - %domain% — coming soon - - + + %domain% — Coming Soon + + + -
-

%domain%

-

- apache + - nginx + - percona + - vesta -

+

%domain%

+
+ apache + + nginx + + percona + + vesta
+ From 0a0dc0a638248a1ee6d876fff105809dffeb32fb Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Thu, 15 Dec 2011 00:19:04 +0200 Subject: [PATCH 02/16] time period support for rrd --- bin/v_upd_sys_rrd | 21 ++++++++++++--------- bin/v_upd_sys_rrd_ftp | 26 +++++++++++++++++--------- bin/v_upd_sys_rrd_httpd | 33 +++++++++++++++++++-------------- bin/v_upd_sys_rrd_la | 27 +++++++++++++++++---------- bin/v_upd_sys_rrd_mem | 27 +++++++++++++++++---------- bin/v_upd_sys_rrd_mysql | 28 +++++++++++++++++----------- bin/v_upd_sys_rrd_net | 27 +++++++++++++++++---------- bin/v_upd_sys_rrd_nginx | 27 +++++++++++++++++---------- bin/v_upd_sys_rrd_pgsql | 28 +++++++++++++++++----------- bin/v_upd_sys_rrd_ssh | 27 +++++++++++++++++---------- 10 files changed, 167 insertions(+), 104 deletions(-) diff --git a/bin/v_upd_sys_rrd b/bin/v_upd_sys_rrd index fd9d4588..73b2e827 100755 --- a/bin/v_upd_sys_rrd +++ b/bin/v_upd_sys_rrd @@ -19,29 +19,32 @@ source $V_FUNC/shared.func PATH="$PATH:$V_BIN" export PATH +# Argument defenition +period=$1 + #----------------------------------------------------------# # Action # #----------------------------------------------------------# # Updateing system stats -$V_BIN/v_upd_sys_rrd_la -$V_BIN/v_upd_sys_rrd_net -$V_BIN/v_upd_sys_rrd_mem -$V_BIN/v_upd_sys_rrd_ssh +$V_BIN/v_upd_sys_rrd_la $period +$V_BIN/v_upd_sys_rrd_net $period +$V_BIN/v_upd_sys_rrd_mem $period +$V_BIN/v_upd_sys_rrd_ssh $period # Updating web stats if [ "$WEB_SYSTEM" = 'apache' ]; then - $V_BIN/v_upd_sys_rrd_httpd + $V_BIN/v_upd_sys_rrd_httpd $period fi if [ "$PROXY_SYSTEM" = 'nginx' ]; then - $V_BIN/v_upd_sys_rrd_nginx + $V_BIN/v_upd_sys_rrd_nginx $period fi # Updating ftp stats if [ ! -z "$FTP_SYSTEM" ] && [ "$FTP_SYSTEM" != 'no' ]; then - $V_BIN/v_upd_sys_rrd_ftp + $V_BIN/v_upd_sys_rrd_ftp $period fi # Updating db stats @@ -49,8 +52,8 @@ if [ ! -z "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'no' ]; then for type in ${DB_SYSTEM//,/ }; do # Switching on db type case $type in - mysql) $V_BIN/v_upd_sys_rrd_mysql ;; - pgsql) $V_BIN/v_upd_sys_rrd_pgsql ;; + mysql) $V_BIN/v_upd_sys_rrd_mysql $period ;; + pgsql) $V_BIN/v_upd_sys_rrd_pgsql $period ;; esac done fi diff --git a/bin/v_upd_sys_rrd_ftp b/bin/v_upd_sys_rrd_ftp index d6873ca9..5abbb5ca 100755 --- a/bin/v_upd_sys_rrd_ftp +++ b/bin/v_upd_sys_rrd_ftp @@ -6,9 +6,8 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf @@ -19,6 +18,15 @@ source $V_CONF/vesta.conf # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/ftp" ]; then mkdir $V_RRD/ftp @@ -40,7 +48,7 @@ if [ ! -e "$V_RRD/ftp/ftp.rrd" ]; then fi # Parsing data -if [ -z "$1" ]; then +if [ -z "$update" ]; then a=0 a=$(ps aux |grep $FTP_SYSTEM |grep -v grep| grep -v nobody|\ grep -v root|wc -l) @@ -50,15 +58,15 @@ if [ -z "$1" ]; then fi # Updating rrd graph -rrdtool graph $V_RRD/ftp/ftp.png \ +rrdtool graph $V_RRD/ftp/$period-ftp.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "$(echo $FTP_SYSTEM|tr '[a-z]' '[A-Z]') Usage" \ + --start "$start" \ + --end "$end" \ + --title "$(echo $FTP_SYSTEM|tr '[a-z]' '[A-Z]') Usage ($period)" \ --vertical-label "Connections" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_httpd b/bin/v_upd_sys_rrd_httpd index a8a5714e..6b0723ea 100755 --- a/bin/v_upd_sys_rrd_httpd +++ b/bin/v_upd_sys_rrd_httpd @@ -6,21 +6,27 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf -source $V_FUNC/shared.func -source $V_FUNC/domain.func #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + + # Checking directory if [ ! -d "$V_RRD/web" ]; then mkdir $V_RRD/web @@ -42,9 +48,8 @@ if [ ! -e "$V_RRD/web/httpd.rrd" ]; then fi # Parsing data -if [ -z "$1" ]; then - web_port=$(get_config_value '$WEB_PORT') - server_status=$(wget -qO- http://localhost:$web_port/server-status |\ +if [ -z "$update" ]; then + server_status=$(wget -qO- http://localhost:$WEB_PORT/server-status |\ grep 'currently being processed'| \ cut -f 2 -d '>' |\ sed 's/requests currently being processed, //' | \ @@ -58,15 +63,15 @@ if [ -z "$1" ]; then fi # Updating rrd graph -rrdtool graph $V_RRD/web/httpd.png \ +rrdtool graph $V_RRD/web/$period-httpd.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "HTTPD Usage" \ + --start "$start" \ + --end "$end" \ + --title "HTTPD Usage ($period)" \ --vertical-label "Connections" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_la b/bin/v_upd_sys_rrd_la index be19ddd2..f3da739f 100755 --- a/bin/v_upd_sys_rrd_la +++ b/bin/v_upd_sys_rrd_la @@ -6,19 +6,26 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/la" ]; then mkdir $V_RRD/la @@ -41,7 +48,7 @@ if [ ! -e "$V_RRD/la/la.rrd" ]; then fi # Parsing data -if [ -z "$1" ]; then +if [ -z "$update" ]; then loadavg=$(cat /proc/loadavg ) la=$(echo "$loadavg"|cut -f 2 -d ' ') pr=$(echo "$loadavg"|cut -f 4 -d ' '|cut -f 2 -d /) @@ -51,15 +58,15 @@ if [ -z "$1" ]; then fi # Updating graph -rrdtool graph $V_RRD/la/la.png \ +rrdtool graph $V_RRD/la/$period-la.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "Load Average" \ + --start "$start" \ + --end "$end" \ + --title "Load Average ($period)" \ --vertical-label "Points" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_mem b/bin/v_upd_sys_rrd_mem index 12356b91..65846b3e 100755 --- a/bin/v_upd_sys_rrd_mem +++ b/bin/v_upd_sys_rrd_mem @@ -6,19 +6,26 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/mem" ]; then mkdir $V_RRD/mem @@ -41,7 +48,7 @@ if [ ! -e "$V_RRD/mem/mem.rrd" ]; then fi # Parsing data -if [ -z "$1" ]; then +if [ -z "$update" ]; then mem=$(free -m) ram=$(echo "$mem" |awk '{print $3}'|head -n2 |tail -n1) swap=$(echo "$mem" |awk '{print $3}'|tail -n1) @@ -51,15 +58,15 @@ if [ -z "$1" ]; then fi # Updating rrd graph -rrdtool graph $V_RRD/mem/mem.png \ +rrdtool graph $V_RRD/mem/$period-mem.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "Memory Usage" \ + --start "$start" \ + --end "$end" \ + --title "Memory Usage ($period)" \ --vertical-label "Mbytes" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_mysql b/bin/v_upd_sys_rrd_mysql index 14441078..712ec0cf 100755 --- a/bin/v_upd_sys_rrd_mysql +++ b/bin/v_upd_sys_rrd_mysql @@ -6,21 +6,27 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf source $V_FUNC/shared.func -source $V_FUNC/db.func #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/db" ]; then mkdir $V_RRD/db @@ -58,7 +64,7 @@ for host in $hosts; do RRA:MAX:0.5:288:797 fi - if [ -z "$1" ]; then + if [ -z "$update" ]; then # Defining host credentials host_str=$(grep "HOST='$host'" $conf) for key in $host_str; do @@ -89,15 +95,15 @@ for host in $hosts; do fi # Updating daily graph - rrdtool graph $V_RRD/db/mysql_$host.png \ + rrdtool graph $V_RRD/db/$period-mysql_$host.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "MySQL Usage on $host" \ + --start "$start" \ + --end "$end" \ + --title "MySQL Usage on $host ($period)" \ --vertical-label "Queries" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_net b/bin/v_upd_sys_rrd_net index 7ca46a30..eb2f1732 100755 --- a/bin/v_upd_sys_rrd_net +++ b/bin/v_upd_sys_rrd_net @@ -6,19 +6,26 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/net" ]; then mkdir $V_RRD/net @@ -50,7 +57,7 @@ for iface in $ifaces; do fi # Parsing device stats - if [ -z "$1" ]; then + if [ -z "$update" ]; then raw_iface=$(grep "$iface:" /proc/net/dev |sed -e "s/:/ /") rx=$(echo "$raw_iface" |awk '{print $2}') tx=$(echo "$raw_iface" |awk '{print $10}') @@ -60,15 +67,15 @@ for iface in $ifaces; do fi # Updating rrd graph - rrdtool graph $V_RRD/net/$iface.png \ + rrdtool graph $V_RRD/net/$period-$iface.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "Bandwidth Usage $iface" \ + --start "$start" \ + --end "$end" \ + --title "Bandwidth Usage $iface ($period)" \ --vertical-label "KBytes" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_nginx b/bin/v_upd_sys_rrd_nginx index 1833a5e0..faafa6d2 100755 --- a/bin/v_upd_sys_rrd_nginx +++ b/bin/v_upd_sys_rrd_nginx @@ -6,19 +6,26 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/web" ]; then mkdir $V_RRD/web @@ -40,7 +47,7 @@ if [ ! -e "$V_RRD/web/nginx.rrd" ]; then fi # Parsing data -if [ -z "$1" ]; then +if [ -z "$update" ]; then a=$(wget -qO- http://localhost:8084/|head -n1|cut -f 3 -d ' ') # Updating rrd database @@ -48,15 +55,15 @@ if [ -z "$1" ]; then fi # Updating rrd graph -rrdtool graph $V_RRD/web/nginx.png \ +rrdtool graph $V_RRD/web/$period-nginx.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "NGINX Usage" \ + --start "$start" \ + --end "$end" \ + --title "NGINX Usage ($period)" \ --vertical-label "Connections" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_pgsql b/bin/v_upd_sys_rrd_pgsql index abab6e37..fb4c5577 100755 --- a/bin/v_upd_sys_rrd_pgsql +++ b/bin/v_upd_sys_rrd_pgsql @@ -6,21 +6,27 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf source $V_FUNC/shared.func -source $V_FUNC/db.func #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/db" ]; then mkdir $V_RRD/db @@ -58,7 +64,7 @@ for host in $hosts; do RRA:MAX:0.5:288:797 fi - if [ -z "$1" ]; then + if [ -z "$update" ]; then # Defining host credentials host_str=$(grep "HOST='$host'" $conf) for key in $host_str; do @@ -95,15 +101,15 @@ for host in $hosts; do fi # Updating rrd graph - rrdtool graph $V_RRD/db/pgsql_$host.png \ + rrdtool graph $V_RRD/db/$period-pgsql_$host.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ - --title "PostgreSQL Usage on $host" \ + --start "$start" \ + --end "$end" \ + --title "PostgreSQL Usage on $host ($period)" \ --vertical-label "Queries" \ - --x-grid "$rrd_grid" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ diff --git a/bin/v_upd_sys_rrd_ssh b/bin/v_upd_sys_rrd_ssh index 6c61ba94..41102663 100755 --- a/bin/v_upd_sys_rrd_ssh +++ b/bin/v_upd_sys_rrd_ssh @@ -6,19 +6,26 @@ #----------------------------------------------------------# # Argument defenition -rrd_start=${1--1d} -rrd_end=${2-now} -rrd_grid=${3-MINUTE:30:HOUR:1:HOUR:4:0:%H:%M} +update=$1 +period=${1-daily} # Importing variables source $VESTA/conf/vars.conf -source $V_CONF/vesta.conf #----------------------------------------------------------# # Action # #----------------------------------------------------------# +# Switching on time period +case $period in + daily) start='-1d'; end='now'; grid='MINUTE:30:HOUR:1:HOUR:4:0:%H:%M';; + weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; + monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; + yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; + *) exit $E_RRD_FAILED ;; +esac + # Checking directory if [ ! -d "$V_RRD/ssh" ]; then mkdir $V_RRD/ssh @@ -40,7 +47,7 @@ if [ ! -e "$V_RRD/ssh/ssh.rrd" ]; then fi # Parsing data -if [ -z "$1" ]; then +if [ -z "$update" ]; then a=0 a=$(ps auxf|grep sshd |grep -v grep |grep -v '/usr/sbin/'| wc -l) @@ -49,15 +56,15 @@ if [ -z "$1" ]; then fi # Updating daily graph -rrdtool graph $V_RRD/ssh/ssh.png \ +rrdtool graph $V_RRD/ssh/$period-ssh.png \ --imgformat PNG \ --height="120" \ --width="440" \ - --start "$rrd_start" \ - --end "$rrd_end" \ + --start "$start" \ + --end "$end" \ --title "SSH Usage" \ - --vertical-label "Connections" \ - --x-grid "$rrd_grid" \ + --vertical-label "Connections ($period)" \ + --x-grid "$grid" \ -c "BACK#484439" \ -c "SHADEA#484439" \ -c "SHADEB#484439" \ From 05ba0965e02d2b4d7275aa02be4365ac1c8978e0 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Thu, 15 Dec 2011 00:19:43 +0200 Subject: [PATCH 03/16] ip disown script --- bin/v_del_sys_user_ips | 67 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100755 bin/v_del_sys_user_ips diff --git a/bin/v_del_sys_user_ips b/bin/v_del_sys_user_ips new file mode 100755 index 00000000..a70fab42 --- /dev/null +++ b/bin/v_del_sys_user_ips @@ -0,0 +1,67 @@ +#!/bin/bash +# info: deliting system user ips + +#----------------------------------------------------------# +# Variable&Function # +#----------------------------------------------------------# + +# Argument defenition +user=$1 + +# Importing variables +source $VESTA/conf/vars.conf +source $V_CONF/vesta.conf +source $V_FUNC/shared.func +source $V_FUNC/ip.func + + +#----------------------------------------------------------# +# Verifications # +#----------------------------------------------------------# + +# Checking arg number +check_args '1' "$#" 'user' + +# Checking argument format +format_validation 'user' + +# Checking user +is_user_valid + +# Checking user is active +is_user_suspended + +# Checking user vesta +if [ "$user" = 'vesta' ]; then + exit +fi + +#----------------------------------------------------------# +# Action # +#----------------------------------------------------------# + +# Parsing user ips +ip_list=$(grep -H "OWNER='$user'" $V_IPS/* | cut -f 1 -d:) + +for ip in $ip_list; do + ip=$(basename $ip) + + # Checking webdomains and users + is_ip_key_empty '$U_WEB_DOMAINS' + is_ip_key_empty '$U_SYS_USERS' + + # Assig ip to main account + update_sys_ip_value '$OWNER' 'vesta' + update_sys_ip_value '$STATUS' 'exclusive' + +done + + +#----------------------------------------------------------# +# Vesta # +#----------------------------------------------------------# + +# Logging +log_event 'system' "$V_EVENT" + +exit From 120ee22972876ab1d8904f9803b197159a5c40c0 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Thu, 15 Dec 2011 00:20:40 +0200 Subject: [PATCH 04/16] changed arguments order --- bin/v_change_sys_ip_owner | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/bin/v_change_sys_ip_owner b/bin/v_change_sys_ip_owner index 4ab3b37d..d3761a0b 100755 --- a/bin/v_change_sys_ip_owner +++ b/bin/v_change_sys_ip_owner @@ -6,8 +6,9 @@ #----------------------------------------------------------# # Argument defenition -user=$1 -ip=$2 +ip=$1 +user=$2 + # Importing variables source $VESTA/conf/vars.conf @@ -21,10 +22,10 @@ source $V_FUNC/ip.func #----------------------------------------------------------# # Checking arg number -check_args '2' "$#" 'user ip' +check_args '2' "$#" 'ip user' # Checking argument format -format_validation 'user' 'ip' +format_validation 'ip' 'user' # Checking user is_user_valid From e9624651d4fccf1b1fddeddaee758070396ea448 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Thu, 15 Dec 2011 00:23:23 +0200 Subject: [PATCH 05/16] improved arguments validator --- func/shared.func | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/func/shared.func b/func/shared.func index e42a75c4..3f109d21 100644 --- a/func/shared.func +++ b/func/shared.func @@ -99,7 +99,7 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|-|+|=|{|}|:|_|,|.|<|>|?|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|-|+|=|{|}|:|_|,|.|<|>|?|/|\|\"|'|;|%| ]" ) if [[ 0 -ne "$special_chars" ]]; then echo "Error: $var out of range" @@ -194,7 +194,7 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:| |,|<|>|?|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:| |,|<|>|?|/|\|\"|'|;|%| ]" ) # Checking result if [[ 0 -ne "$special_chars" ]]; then @@ -210,7 +210,7 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|<|>|?|_|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|<|>|?|_|/|\|\"|'|;|%| ]" ) needed_chars=$(echo "$val" | cut -s -f 2 -d '.') # Checking result @@ -227,7 +227,7 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|.|<|>|?|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|.|<|>|?|/|\|\"|'|;|%| ]" ) # Checking result if [[ 0 -ne "$special_chars" ]] || [ 17 -le ${#val} ]; then From 5ab11ebc6825abae70a2976cca0de6871e365633 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Thu, 15 Dec 2011 00:41:32 +0200 Subject: [PATCH 06/16] fixed sbin path issue --- bin/v_add_sys_ip | 2 +- bin/v_del_sys_ip | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/v_add_sys_ip b/bin/v_add_sys_ip index 0e1d1d62..d846a61c 100755 --- a/bin/v_add_sys_ip +++ b/bin/v_add_sys_ip @@ -62,7 +62,7 @@ iconf='/etc/sysconfig/network-scripts/ifcfg' rconf='/etc/httpd/conf.d/rpaf.conf' # Adding ip -ifconfig "$iface" "$ip" netmask "$mask" +/sbin/ifconfig "$iface" "$ip" netmask "$mask" # Adding startup script ip_add_startup diff --git a/bin/v_del_sys_ip b/bin/v_del_sys_ip index 856b953a..419a8970 100755 --- a/bin/v_del_sys_ip +++ b/bin/v_del_sys_ip @@ -56,7 +56,7 @@ rconf='/etc/httpd/conf.d/rpaf.conf' user="$(get_sys_ip_value '$OWNER')" # Deleting interface -ifconfig "$interface" down +/sbin/ifconfig "$interface" down # Deleting startup script rm -f $iconf-$interface From 8183c1f7818a603be1449bd4736f5ae55cf8dd0c Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Thu, 15 Dec 2011 17:52:11 +0200 Subject: [PATCH 07/16] improved key=value assigment --- bin/v_list_db_base | 8 ++------ bin/v_list_db_host | 8 ++------ bin/v_list_dns_domain | 8 ++------ bin/v_list_dns_template | 10 ++-------- bin/v_list_sys_cron | 10 ++-------- bin/v_list_sys_ip | 8 ++------ bin/v_list_sys_ips | 8 ++------ bin/v_list_sys_user | 8 ++------ bin/v_list_sys_user_ips | 8 ++------ bin/v_list_sys_user_packages | 8 ++------ bin/v_list_sys_users | 8 ++------ bin/v_list_web_domain | 8 ++------ func/shared.func | 8 ++------ 13 files changed, 26 insertions(+), 82 deletions(-) diff --git a/bin/v_list_db_base b/bin/v_list_db_base index 9102ea46..79e15a62 100755 --- a/bin/v_list_db_base +++ b/bin/v_list_db_base @@ -29,9 +29,7 @@ json_list_db() { echo '{' # Parsing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Starting output loop for field in $fields; do @@ -70,9 +68,7 @@ shell_list_db() { line=$(grep "DB='$database'" $conf) # Parsing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result line for field in $fields; do diff --git a/bin/v_list_db_host b/bin/v_list_db_host index f1e50fb6..9e8aee1e 100755 --- a/bin/v_list_db_host +++ b/bin/v_list_db_host @@ -30,9 +30,7 @@ json_list_dbhost() { echo '{' # Assign key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Starting output loop for field in $fields; do @@ -68,9 +66,7 @@ shell_list_dbhost() { line=$(grep "HOST='$host'" $conf) # Parsing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result line for field in $fields; do diff --git a/bin/v_list_dns_domain b/bin/v_list_dns_domain index a087b196..94293bec 100755 --- a/bin/v_list_dns_domain +++ b/bin/v_list_dns_domain @@ -29,9 +29,7 @@ json_list_dns() { IFS=$'\n' # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Closing bracket if there already was output if [ -n "$data" ]; then @@ -86,9 +84,7 @@ shell_list_dns() { # New delimeter IFS=$'\n' # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result eval echo "$fields" | sed -e "s/%quote%/'/g" diff --git a/bin/v_list_dns_template b/bin/v_list_dns_template index 4bb18ff0..2cec9c65 100755 --- a/bin/v_list_dns_template +++ b/bin/v_list_dns_template @@ -42,9 +42,7 @@ json_list_dns() { IFS=$'\n' # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Closing bracket if there already was output if [ -n "$data" ]; then @@ -96,12 +94,8 @@ shell_list_dns() { # Reading file line by line while read line ; do - # New delimeter - IFS=$'\n' # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result eval echo "$fields" | sed -e "s/%quote%/'/g" diff --git a/bin/v_list_sys_cron b/bin/v_list_sys_cron index 486e01d4..525fc197 100755 --- a/bin/v_list_sys_cron +++ b/bin/v_list_sys_cron @@ -27,9 +27,7 @@ json_list_cron() { IFS=$'\n' # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Closing bracket if there already was output if [ -n "$data" ]; then @@ -81,12 +79,8 @@ shell_list_cron() { # Reading file line by line while read line ; do - # New delimeter - IFS=$'\n' # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result eval echo "$fields" | sed -e "s/%quote%/'/g" diff --git a/bin/v_list_sys_ip b/bin/v_list_sys_ip index 610460ab..6cfa1bc6 100755 --- a/bin/v_list_sys_ip +++ b/bin/v_list_sys_ip @@ -25,9 +25,7 @@ json_list_ip() { echo '{' # Assign key=value - for key in $ip_data; do - eval ${key%%=*}=${key#*=} - done + eval $ip_data for field in $fields; do eval value=$field @@ -59,9 +57,7 @@ shell_list_ip() { line=$(cat $V_IPS/$IP) # Assing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result line for field in $fields; do diff --git a/bin/v_list_sys_ips b/bin/v_list_sys_ips index b73b4e85..f98831d2 100755 --- a/bin/v_list_sys_ips +++ b/bin/v_list_sys_ips @@ -26,9 +26,7 @@ json_list_ips() { for IP in $ip_list; do # Assing key=value ip_data=$(cat $V_IPS/$IP) - for key in $ip_data; do - eval ${key%%=*}=${key#*=} - done + eval $ip_data # Closing bracket if there already was output if [ -n "$data" ]; then @@ -83,9 +81,7 @@ shell_list_ips() { ip_data=$(cat $V_IPS/$IP) # Assign key/value config - for key in $ip_data; do - eval ${key%%=*}=${key#*=} - done + eval $ip_data # Print result line eval echo "$fields" diff --git a/bin/v_list_sys_user b/bin/v_list_sys_user index 583bcdc1..18917afa 100755 --- a/bin/v_list_sys_user +++ b/bin/v_list_sys_user @@ -24,9 +24,7 @@ json_list_user() { echo '{' # Assing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Starting output loop for field in $fields; do @@ -60,9 +58,7 @@ shell_list_user() { line=$(cat $V_USERS/$USER/user.conf) # Parsing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result line for field in $fields; do diff --git a/bin/v_list_sys_user_ips b/bin/v_list_sys_user_ips index 891aae0a..c4428eff 100755 --- a/bin/v_list_sys_user_ips +++ b/bin/v_list_sys_user_ips @@ -32,9 +32,7 @@ json_list_user_ips() { ip_data=$(cat $V_IPS/$IP) # Assing key=value - for key in $ip_data; do - eval ${key%%=*}=${key#*=} - done + eval $ip_data # Closing bracket if there already was output if [ -n "$data" ]; then @@ -93,9 +91,7 @@ shell_list_user_ips() { ip_data=$(cat $V_IPS/$IP) # Assign key/value config - for key in $ip_data; do - eval ${key%%=*}=${key#*=} - done + eval $ip_data # Print result line eval echo "$fields" diff --git a/bin/v_list_sys_user_packages b/bin/v_list_sys_user_packages index 2d70af14..2941a383 100755 --- a/bin/v_list_sys_user_packages +++ b/bin/v_list_sys_user_packages @@ -24,9 +24,7 @@ json_list_pkgs() { PACKAGE=${package/.pkg/} # Assing key=value pkg_data=$(cat $V_DATA/packages/$package) - for key in $pkg_data; do - eval ${key%%=*}=${key#*=} - done + eval $pkg_data # Closing bracket if there already was output if [ -n "$data" ]; then @@ -69,9 +67,7 @@ shell_list_pkgs() { PACKAGE=${package/.pkg/} # Assign key=value pkg_descr=$(cat $V_DATA/packages/$package) - for key in $pkg_descr; do - eval ${key%%=*}=${key#*=} - done + eval $pkg_descr if [ -z "$nohead" ]; then diff --git a/bin/v_list_sys_users b/bin/v_list_sys_users index 3a75f448..5b497808 100755 --- a/bin/v_list_sys_users +++ b/bin/v_list_sys_users @@ -23,9 +23,7 @@ json_list_users() { user_data=$(cat $V_USERS/$USER/user.conf) # Assign key/value config - for key in $user_data; do - eval ${key%%=*}=${key#*=} - done + eval $user_data # Closing bracket if there already was output if [ -n "$data" ]; then @@ -76,9 +74,7 @@ shell_list_users() { user_data=$(cat $V_USERS/$USER/user.conf) # Assign key/value config - for key in $user_data; do - eval ${key%%=*}=${key#*=} - done + eval $user_data eval echo "$fields" done diff --git a/bin/v_list_web_domain b/bin/v_list_web_domain index e749a27e..44d63a49 100755 --- a/bin/v_list_web_domain +++ b/bin/v_list_web_domain @@ -25,9 +25,7 @@ json_list_domain() { echo '{' # Assing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Starting output loop for field in $fields; do @@ -61,9 +59,7 @@ shell_list_domain() { line=$(grep "DOMAIN='$domain'" $conf) # Parsing key=value - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result line for field in $fields; do diff --git a/func/shared.func b/func/shared.func index 3f109d21..6435f919 100644 --- a/func/shared.func +++ b/func/shared.func @@ -907,9 +907,7 @@ json_list() { while read line; do # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Closing bracket if there already was output if [ -n "$data" ]; then @@ -960,9 +958,7 @@ shell_list() { # Reading file line by line while read line ; do # Assing key=value pair - for key in $line; do - eval ${key%%=*}=${key#*=} - done + eval $line # Print result eval echo "$fields" From ec400b1858ab62090d31b0bff010b892f5945f29 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Fri, 16 Dec 2011 13:22:59 +0200 Subject: [PATCH 08/16] new return codes --- conf/vars.conf | 70 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 28 deletions(-) diff --git a/conf/vars.conf b/conf/vars.conf index b8c60629..b0896f92 100644 --- a/conf/vars.conf +++ b/conf/vars.conf @@ -14,7 +14,7 @@ V_LOG="$VESTA/log" V_SRC="$VESTA/src" V_PKG="$V_DATA/packages" V_USERS="$V_DATA/users" -V_DB="$VESTA/conf" +V_DB="$V_CONF" V_QUEUE="$V_DATA/queue" V_IPS="$V_DATA/ips" V_WEBTPL="$V_DATA/templates" @@ -23,14 +23,20 @@ V_LOCK=/var/lock/vesta V_HOME='/home' V_TMP='/tmp' V_BACKUP='/backup' +V_WEB="$VESTA/web" +V_RRD="$V_WEB/rrd" # Other vars V_BACKUP_GZIP='5' -V_SUSPEND_URL='vestacp.com/faq/acc_suspended/' +V_BACKUP_DISK_LIMIT='95' +V_BACKUP_LA_LIMIT='5' +V_SUSPEND_URL='vestacp.com/suspended/' V_SCRIPT=$(basename $0) -V_EVENT="$(date +%m-%d-%y" "%H:%m:%S) $V_SCRIPT $*" -V_DATE=$(date +%m-%d-%y) +V_EVENT="$(date "+%F %T") $V_SCRIPT $*" +V_DATE=$(date +%F) V_UPD_HOST=yum.vestacp.com +V_RRD_STEP='300' +V_RRD_IFACE_EXCLUDE='lo' # Return codes OK=0 @@ -72,31 +78,31 @@ E_DOM_NOTALIAS=39 E_IP_EXIST=40 E_IP_NOTEXIST=41 E_IP_USED=42 -E_IP_UNUSED=33 -E_IP_OWNED=34 -E_IP_NOTOWNED=35 +E_IP_UNUSED=107 +E_IP_OWNED=108 +E_IP_NOTOWNED=98 E_QUOTA_ENABLED=1 -E_QUOTA_DISABLED=6 -E_LOG_EXIST=36 -E_LOG_NOTEXIST=37 -E_LOG_ENABLED=38 -E_LOG_DISABLED=39 -E_PKG_EXIST=7 -E_PKG_NOTEXIST=7 -E_PKG_UPGRADE=20 -E_PASSWORD_SHORT=23 -E_PASSWORD_WRONG=24 -E_FWD_EXISTS=25 +E_QUOTA_DISABLED=103 +E_LOG_EXIST=100 +E_LOG_NOTEXIST=101 +E_LOG_ENABLED=102 +E_LOG_DISABLED=99 +E_PKG_EXIST=113 +E_PKG_NOTEXIST=114 +E_PKG_UPGRADE=26 +E_PASSWORD_SHORT=27 +E_PASSWORD_WRONG=28 +E_FWD_EXISTS=46 E_FWD_NOTFOUND=29 -E_CONF_EXISTS=30 -E_CONF_NOTEXIST=31 -E_PID_EXIST=32 -E_PID_NOTEXIST=32 -E_FILE_BROKEN=33 -E_LIMIT_NOTFOUND=34 -E_BACKUP_ENABLED=40 -E_BACKUP_DISABLED=41 -E_LOCK_EXIST=42 +E_CONF_EXISTS=54 +E_CONF_NOTEXIST=95 +E_PID_EXIST=104 +E_PID_NOTEXIST=105 +E_FILE_BROKEN=106 +E_LIMIT_NOTFOUND=109 +E_BACKUP_ENABLED=110 +E_BACKUP_DISABLED=111 +E_LOCK_EXIST=112 E_DIR_NOTEXIST=43 E_DIR_EXIST=44 E_EMAIL_INVALID=45 @@ -142,4 +148,12 @@ E_DBUSER_EXIST=86 E_DBHOST_BUSY=87 E_DBHOST_FREE=88 E_UPD_FAILED=89 -E_PROXY_DISABLED='90' +E_PROXY_DISABLED=90 +E_FTP_ERROR=91 +E_SFTP_ERROR=92 +E_DISK_SPACE=93 +E_LOAD_AVERAGE=94 +E_CHILD_EXIST=96 +E_CHILD_NOTEXIST=97 +E_RRD_FAILED=114 +E_BACKUP_NOTFOUND=115 From 24454b535ba614647d439f3c8c39b545bf278044 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Fri, 16 Dec 2011 13:41:00 +0200 Subject: [PATCH 09/16] Removed quoting. Closes #1. --- conf/vars.conf | 52 +++++++++++++++++++++++++------------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/conf/vars.conf b/conf/vars.conf index b0896f92..8099152f 100644 --- a/conf/vars.conf +++ b/conf/vars.conf @@ -5,38 +5,38 @@ ############################################################# # Paths -VESTA='/usr/local/vesta' -V_BIN="$VESTA/bin" -V_FUNC="$VESTA/func" -V_CONF="$VESTA/conf" -V_DATA="$VESTA/data" -V_LOG="$VESTA/log" -V_SRC="$VESTA/src" -V_PKG="$V_DATA/packages" -V_USERS="$V_DATA/users" -V_DB="$V_CONF" -V_QUEUE="$V_DATA/queue" -V_IPS="$V_DATA/ips" -V_WEBTPL="$V_DATA/templates" -V_DNSTPL="$V_WEBTPL/dns" +VESTA=/usr/local/vesta +V_BIN=$VESTA/bin +V_FUNC=$VESTA/func +V_CONF=$VESTA/conf +V_DATA=$VESTA/data +V_LOG=$VESTA/log +V_SRC=$VESTA/src +V_PKG=$V_DATA/packages +V_USERS=$V_DATA/users +V_DB=$V_CONF +V_QUEUE=$V_DATA/queue +V_IPS=$V_DATA/ips +V_WEBTPL=$V_DATA/templates +V_DNSTPL=$V_WEBTPL/dns V_LOCK=/var/lock/vesta -V_HOME='/home' -V_TMP='/tmp' -V_BACKUP='/backup' -V_WEB="$VESTA/web" -V_RRD="$V_WEB/rrd" +V_HOME=/home +V_TMP=/tmp +V_BACKUP=/backup +V_WEB=$VESTA/web +V_RRD=$V_WEB/rrd # Other vars -V_BACKUP_GZIP='5' -V_BACKUP_DISK_LIMIT='95' -V_BACKUP_LA_LIMIT='5' -V_SUSPEND_URL='vestacp.com/suspended/' +V_BACKUP_GZIP=5 +V_BACKUP_DISK_LIMIT=95 +V_BACKUP_LA_LIMIT=5 +V_SUSPEND_URL=vestacp.com/suspended/ V_SCRIPT=$(basename $0) -V_EVENT="$(date "+%F %T") $V_SCRIPT $*" +V_EVENT="$(date '+%F %T') $V_SCRIPT $*" V_DATE=$(date +%F) V_UPD_HOST=yum.vestacp.com -V_RRD_STEP='300' -V_RRD_IFACE_EXCLUDE='lo' +V_RRD_STEP=300 +V_RRD_IFACE_EXCLUDE=lo # Return codes OK=0 From 8140eae24bbbdbb5651d67cde678aba6ece8ecc0 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Fri, 16 Dec 2011 17:37:00 +0200 Subject: [PATCH 10/16] changed suspend url --- conf/vars.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/vars.conf b/conf/vars.conf index 8099152f..9e7bf745 100644 --- a/conf/vars.conf +++ b/conf/vars.conf @@ -30,7 +30,7 @@ V_RRD=$V_WEB/rrd V_BACKUP_GZIP=5 V_BACKUP_DISK_LIMIT=95 V_BACKUP_LA_LIMIT=5 -V_SUSPEND_URL=vestacp.com/suspended/ +V_SUSPEND_URL=vestacp.com/error/suspend/ V_SCRIPT=$(basename $0) V_EVENT="$(date '+%F %T') $V_SCRIPT $*" V_DATE=$(date +%F) From 496c3f5cfbde2b2d89cfccdbe3be62be939010c2 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Sat, 17 Dec 2011 22:08:54 +0200 Subject: [PATCH 11/16] Optimized shard function file. --- bin/v_add_sys_user | 12 +++ bin/v_add_sys_user_reports | 3 - bin/v_add_web_domain_stat | 1 - bin/v_change_sys_user_package | 83 ++++++++++++++++ bin/v_change_sys_user_shell | 2 +- bin/v_del_sys_user_reports | 3 - func/shared.func | 172 +--------------------------------- 7 files changed, 97 insertions(+), 179 deletions(-) diff --git a/bin/v_add_sys_user b/bin/v_add_sys_user index 9da65420..071a0fe4 100755 --- a/bin/v_add_sys_user +++ b/bin/v_add_sys_user @@ -18,6 +18,18 @@ source $VESTA/conf/vars.conf source $V_CONF/vesta.conf source $V_FUNC/shared.func +is_user_free() { + # Parsing domain values + check_sysuser=$(cut -f 1 -d : /etc/passwd | grep -w "$user" ) + + # Checking result + if [ ! -z "$check_sysuser" ] || [ -e "$V_USERS/$user" ]; then + echo "Error: user $user exist" + log_event 'debug' "$E_USER_EXIST $V_EVENT" + exit $E_USER_EXIST + fi +} + #----------------------------------------------------------# # Verifications # diff --git a/bin/v_add_sys_user_reports b/bin/v_add_sys_user_reports index 0d4f25e9..105989e5 100755 --- a/bin/v_add_sys_user_reports +++ b/bin/v_add_sys_user_reports @@ -31,9 +31,6 @@ is_user_valid # Checking user is active is_user_suspended -# Checking reports existance -is_user_key_empty '$REPORTS' - #----------------------------------------------------------# # Action # diff --git a/bin/v_add_web_domain_stat b/bin/v_add_web_domain_stat index 1f6b44f0..713ea715 100755 --- a/bin/v_add_web_domain_stat +++ b/bin/v_add_web_domain_stat @@ -30,7 +30,6 @@ format_validation 'user' 'domain' # Checking web system is enabled is_system_enabled 'web' -check_func_result $? # Checking user is_user_valid "$user" diff --git a/bin/v_change_sys_user_package b/bin/v_change_sys_user_package index 79b53816..9b001459 100755 --- a/bin/v_change_sys_user_package +++ b/bin/v_change_sys_user_package @@ -14,6 +14,89 @@ source $VESTA/conf/vars.conf source $V_CONF/vesta.conf source $V_FUNC/shared.func +is_package_avalable() { + # Parsing user data + usr_data=$(cat $V_USERS/$user/user.conf) + for key in $usr_data; do + eval ${key%%=*}=${key#*=} + done + + # Clearing vars + WEB_DOMAINS='0' + WEB_SSL='0' + DATABASES='0' + MAIL_DOMAINS='0' + MAIL_BOXES='0' + MAIL_FORWARDERS='0' + DNS_DOMAINS='0' + DISK_QUOTA='0' + BANDWIDTH='0' + + # Parsing package + pkg_data=$(cat $V_PKG/$package.pkg) + for key in $pkg_data; do + eval ${key%%=*}=${key#*=} + done + + # Comparing user data with package + if [ "$WEB_DOMAINS" -lt "$U_WEB_DOMAINS" ] ||\ + [ "$WEB_SSL" -lt "$U_WEB_SSL" ] ||\ + [ "$DATABASES" -lt "$U_DATABASES" ] ||\ + [ "$MAIL_DOMAINS" -lt "$U_MAIL_DOMAINS" ] ||\ + [ "$DNS_DOMAINS" -lt "$U_DNS_DOMAINS" ] ||\ + [ "$DISK_QUOTA" -lt "$U_DISK" ] ||\ + [ "$BANDWIDTH" -lt "$U_BANDWIDTH" ]; then + echo "Error: Upgrade package" + log_event 'debug' "$E_PKG_UPGRADE $v_log" + exit $E_PKG_UPGRADE + fi +} + +change_user_package() { + # Parsing user data + usr_data=$(cat $V_USERS/$user/user.conf) + for key in $usr_data; do + eval ${key%%=*}=${key#*=} + done + + # Parsing package + pkg_data=$(cat $V_PKG/$package.pkg) + for key in $pkg_data; do + eval ${key%%=*}=${key#*=} + done + + echo "FNAME='$FNAME' +LNAME='$LNAME' +PACKAGE='$package' +WEB_DOMAINS='$WEB_DOMAINS' +WEB_SSL='$WEB_SSL' +WEB_ALIASES='$WEB_ALIASES' +DATABASES='$DATABASES' +MAIL_DOMAINS='$MAIL_DOMAINS' +MAIL_BOXES='$MAIL_BOXES' +MAIL_FORWARDERS='$MAIL_FORWARDERS' +DNS_DOMAINS='$DNS_DOMAINS' +DISK_QUOTA='$DISK_QUOTA' +BANDWIDTH='$BANDWIDTH' +NS='$NS' +SHELL='$SHELL' +BACKUPS='$BACKUPS' +WEB_TPL='$WEB_TPL' +SUSPENDED='$SUSPENDED' +CONTACT='$CONTACT' +REPORTS='$REPORTS' +IP_OWNED='$IP_OWNED' +U_DIR_DISK='$U_DIR_DISK' +U_DISK='$U_DISK' +U_BANDWIDTH='$U_BANDWIDTH' +U_WEB_DOMAINS='$U_WEB_DOMAINS' +U_WEB_SSL='$U_WEB_SSL' +U_DNS_DOMAINS='$U_DNS_DOMAINS' +U_DATABASES='$U_DATABASES' +U_MAIL_DOMAINS='$U_MAIL_DOMAINS' +DATE='$DATE'" > $V_USERS/$user/user.conf +} + #----------------------------------------------------------# # Verifications # diff --git a/bin/v_change_sys_user_shell b/bin/v_change_sys_user_shell index 187d97db..d7ee2cea 100755 --- a/bin/v_change_sys_user_shell +++ b/bin/v_change_sys_user_shell @@ -40,7 +40,7 @@ is_user_suspended update_user_value "$user" '$SHELL' "$shell" # Get shell full path -shell_path=$(get_shell_path) +shell_path=$(/usr/bin/chsh --list-shells | grep -w "$shell" ) # Changing passwd file /usr/bin/chsh -s "$shell_path" "$user" >/dev/null 2>&1 diff --git a/bin/v_del_sys_user_reports b/bin/v_del_sys_user_reports index 01bbf395..647d99d6 100755 --- a/bin/v_del_sys_user_reports +++ b/bin/v_del_sys_user_reports @@ -31,9 +31,6 @@ is_user_valid # Checking user is active is_user_suspended -# Checking reports existance -is_user_value_exist '$REPORTS' - #----------------------------------------------------------# # Action # diff --git a/func/shared.func b/func/shared.func index 6435f919..2a65ff36 100644 --- a/func/shared.func +++ b/func/shared.func @@ -25,17 +25,6 @@ log_history() { fi } -# External function result checker -check_func_result() { - - return_code="$1" - - if [[ "$return_code" -ne "$OK" ]]; then - log_event 'debug' "$return_code $V_EVENT" - exit $return_code - fi -} - # Argument list checker check_args() { @@ -432,7 +421,7 @@ is_system_enabled() { # System user check is_user_valid() { search_user="${1-$user}" - check_user=$(cut -f 1 -d : /etc/passwd | grep -w "$search_user" ) + check_user=$(grep -w "$search_user" /etc/passwd ) if [ -z "$check_user" ]; then echo "Error: user not found" log_event 'debug' "$E_USER_NOTEXIST $V_EVENT" @@ -553,44 +542,6 @@ is_package_full() { esac } -is_package_avalable() { - # Parsing user data - usr_data=$(cat $V_USERS/$user/user.conf) - for key in $usr_data; do - eval ${key%%=*}=${key#*=} - done - - # Clearing vars - WEB_DOMAINS='0' - WEB_SSL='0' - DATABASES='0' - MAIL_DOMAINS='0' - MAIL_BOXES='0' - MAIL_FORWARDERS='0' - DNS_DOMAINS='0' - DISK_QUOTA='0' - BANDWIDTH='0' - - # Parsing package - pkg_data=$(cat $V_PKG/$package.pkg) - for key in $pkg_data; do - eval ${key%%=*}=${key#*=} - done - - # Comparing user data with package - if [ "$WEB_DOMAINS" -lt "$U_WEB_DOMAINS" ] ||\ - [ "$WEB_SSL" -lt "$U_WEB_SSL" ] ||\ - [ "$DATABASES" -lt "$U_DATABASES" ] ||\ - [ "$MAIL_DOMAINS" -lt "$U_MAIL_DOMAINS" ] ||\ - [ "$DNS_DOMAINS" -lt "$U_DNS_DOMAINS" ] ||\ - [ "$DISK_QUOTA" -lt "$U_DISK" ] ||\ - [ "$BANDWIDTH" -lt "$U_BANDWIDTH" ]; then - echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE - fi -} - is_template_valid() { stype="$1" @@ -676,18 +627,6 @@ restart_schedule() { fi } -is_user_free() { - # Parsing domain values - check_sysuser=$(cut -f 1 -d : /etc/passwd | grep -w "$user" ) - - # Checking result - if [ ! -z "$check_sysuser" ] || [ -e "$V_USERS/$user" ]; then - echo "Error: user $user exist" - log_event 'debug' "$E_USER_EXIST $V_EVENT" - exit $E_USER_EXIST - fi -} - is_package_valid() { if [ ! -e "$V_PKG/$package.pkg" ]; then echo "Error: package is not exist" @@ -696,28 +635,6 @@ is_package_valid() { fi } -is_user_key_empty() { - key="$1" - - # Parsing ip - string=$(cat $V_USERS/$user/user.conf ) - - # Parsing key=value - for keys in $string; do - eval ${keys%%=*}=${keys#*=} - done - - # Self reference - eval value="$key" - - # Checkng key - if [ ! -z "$value" ] && [ "$value" != 'no' ] && [ "$value" != '0' ]; then - echo "Error: value is not empty = $value " - log_event 'debug' "$E_VALUE_EXIST $V_EVENT" - exit $E_VALUE_EXIST - fi -} - update_user_value() { USER="$1" key="$2" @@ -797,76 +714,6 @@ is_type_valid() { fi } -change_user_package() { - # Parsing user data - usr_data=$(cat $V_USERS/$user/user.conf) - for key in $usr_data; do - eval ${key%%=*}=${key#*=} - done - - # Parsing package - pkg_data=$(cat $V_PKG/$package.pkg) - for key in $pkg_data; do - eval ${key%%=*}=${key#*=} - done - - echo "FNAME='$FNAME' -LNAME='$LNAME' -PACKAGE='$package' -WEB_DOMAINS='$WEB_DOMAINS' -WEB_SSL='$WEB_SSL' -WEB_ALIASES='$WEB_ALIASES' -DATABASES='$DATABASES' -MAIL_DOMAINS='$MAIL_DOMAINS' -MAIL_BOXES='$MAIL_BOXES' -MAIL_FORWARDERS='$MAIL_FORWARDERS' -DNS_DOMAINS='$DNS_DOMAINS' -DISK_QUOTA='$DISK_QUOTA' -BANDWIDTH='$BANDWIDTH' -NS='$NS' -SHELL='$SHELL' -BACKUPS='$BACKUPS' -WEB_TPL='$WEB_TPL' -SUSPENDED='$SUSPENDED' -CONTACT='$CONTACT' -REPORTS='$REPORTS' -IP_OWNED='$IP_OWNED' -U_DIR_DISK='$U_DIR_DISK' -U_DISK='$U_DISK' -U_BANDWIDTH='$U_BANDWIDTH' -U_WEB_DOMAINS='$U_WEB_DOMAINS' -U_WEB_SSL='$U_WEB_SSL' -U_DNS_DOMAINS='$U_DNS_DOMAINS' -U_DATABASES='$U_DATABASES' -U_MAIL_DOMAINS='$U_MAIL_DOMAINS' -DATE='$DATE'" > $V_USERS/$user/user.conf -} - -get_shell_path() { - check_shell=$(/usr/bin/chsh --list-shells | grep -w "$shell" ) - echo "$check_shell" -} - -is_user_value_exist() { - key="$1" - string=$(cat $V_USERS/$user/user.conf ) - - # Parsing key=value - for keys in $string; do - eval ${keys%%=*}=${keys#*=} - done - - # Self reference - eval value="$key" - - # Checking result - if [ -z "$value" ] || [ "$value" = 'no' ]; then - echo "Error: ${key//$/} is empty" - log_event 'debug' "$E_VALUE_EMPTY $V_EVENT" - exit $E_VALUE_EMPTY - fi -} - decrease_user_value() { USER="$1" key="$2" @@ -1024,23 +871,6 @@ get_usr_traff() { echo "$size" } -get_config_value() { - key="$1" - # Parsing config - string=$(cat $V_CONF/vesta.conf) - - # Parsing key=value - for keys in $string; do - eval ${keys%%=*}=${keys#*=} - done - - # Self reference - eval value="$key" - - # Print value - echo "$value" -} - is_backup_enabled() { BACKUPS=$(grep "BACKUPS='" $V_USERS/$user/user.conf |cut -f 2 -d \') if [ -z "$BACKUPS" ] || [[ "$BACKUPS" -le '0' ]]; then From 8633879b635d4ca49776a6bfca173ba4b6b73f85 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Sat, 17 Dec 2011 22:14:00 +0200 Subject: [PATCH 12/16] Added suspend/unsuspend user function --- bin/v_suspend_sys_user | 85 ++++++++++++++++++++++++++++++++++++++++ bin/v_unsuspend_sys_user | 82 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 167 insertions(+) create mode 100755 bin/v_suspend_sys_user create mode 100755 bin/v_unsuspend_sys_user diff --git a/bin/v_suspend_sys_user b/bin/v_suspend_sys_user new file mode 100755 index 00000000..5fd3f66a --- /dev/null +++ b/bin/v_suspend_sys_user @@ -0,0 +1,85 @@ +#!/bin/bash +# info: Suspending sys user + +#----------------------------------------------------------# +# Variable&Function # +#----------------------------------------------------------# + +# Argument defenition +user=$1 + +# Importing variables +source $VESTA/conf/vars.conf +source $V_CONF/vesta.conf +source $V_FUNC/shared.func + + +#----------------------------------------------------------# +# Verifications # +#----------------------------------------------------------# + +# Checking arg number +check_args '1' "$#" 'user' + +# Checking argument format +format_validation 'user' + +# Checking user +is_user_valid + +# Checking user status +is_user_suspended + +# Checking user vesta +if [ "$user" = 'vesta' ]; then + exit +fi + + +#----------------------------------------------------------# +# Action # +#----------------------------------------------------------# + +# Adding '!' in front of the password +/usr/sbin/usermod --lock $user + +# Suspending web domains +if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'no' ]; then + $V_BIN/v_suspend_web_domains $user +fi + +# Suspending dns domains +if [ ! -z "$DNS_SYSTEM" ] && [ "$DNS_SYSTEM" != 'no' ]; then + $V_BIN/v_suspend_dns_domains $user +fi + +# Suspending mail domains +# TBD + +# Suspending datbabases +if [ ! -z "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'no' ]; then + $V_BIN/v_suspend_db_bases $user +fi + +# Suspending cron jobs +if [ ! -z "$CRON_SYSTEM" ] && [ "$CRON_SYSTEM" != 'no' ]; then + $V_BIN/v_suspend_sys_cron_jobs $user +fi + + +#----------------------------------------------------------# +# Vesta # +#----------------------------------------------------------# + +# Adding task to the vesta pipe +restart_schedule 'cron' +restart_schedule 'web' +restart_schedule 'dns' + +# Changing suspend value +update_user_value "$user" '$SUSPEND' 'yes' + +# Logging +log_event 'system' "$V_EVENT" + +exit diff --git a/bin/v_unsuspend_sys_user b/bin/v_unsuspend_sys_user new file mode 100755 index 00000000..003ed6c1 --- /dev/null +++ b/bin/v_unsuspend_sys_user @@ -0,0 +1,82 @@ +#!/bin/bash +# info: Unsuspending sys user + +#----------------------------------------------------------# +# Variable&Function # +#----------------------------------------------------------# + +# Argument defenition +user=$1 + +# Importing variables +source $VESTA/conf/vars.conf +source $V_CONF/vesta.conf +source $V_FUNC/shared.func + + +#----------------------------------------------------------# +# Verifications # +#----------------------------------------------------------# + +# Checking arg number +check_args '1' "$#" 'user' + +# Checking argument format +format_validation 'user' + +# Checking user +is_user_valid + +# Checking user vesta +if [ "$user" = 'vesta' ]; then + exit +fi + + +#----------------------------------------------------------# +# Action # +#----------------------------------------------------------# + +# Deleting '!' in front of the password +/usr/sbin/usermod --unlock $user + +# Unsuspending web domains +if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'no' ]; then + $V_BIN/v_unsuspend_web_domains $user +fi + +# Unsuspending dns domains +if [ ! -z "$DNS_SYSTEM" ] && [ "$DNS_SYSTEM" != 'no' ]; then + $V_BIN/v_unsuspend_dns_domains $user +fi + +# Unsuspending mail domains +# TBD + +# Unsuspending datbabases +if [ ! -z "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'no' ]; then + $V_BIN/v_unsuspend_db_bases $user +fi + +# Unsuspending cron jobs +if [ ! -z "$CRON_SYSTEM" ] && [ "$CRON_SYSTEM" != 'no' ]; then + $V_BIN/v_unsuspend_sys_cron_jobs $user +fi + + +#----------------------------------------------------------# +# Vesta # +#----------------------------------------------------------# + +# Adding task to the vesta pipe +restart_schedule 'cron' +restart_schedule 'web' +restart_schedule 'dns' + +# Changing suspend value +update_user_value "$user" '$SUSPEND' 'no' + +# Logging +log_event 'system' "$V_EVENT" + +exit From 2fbabe2de5ef360c9c5b3929a6d43c4507d43742 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Sat, 17 Dec 2011 22:23:53 +0200 Subject: [PATCH 13/16] hot fix for suspend/unsuspend function with right key --- bin/v_suspend_sys_user | 2 +- bin/v_unsuspend_sys_user | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/v_suspend_sys_user b/bin/v_suspend_sys_user index 5fd3f66a..66264979 100755 --- a/bin/v_suspend_sys_user +++ b/bin/v_suspend_sys_user @@ -77,7 +77,7 @@ restart_schedule 'web' restart_schedule 'dns' # Changing suspend value -update_user_value "$user" '$SUSPEND' 'yes' +update_user_value "$user" '$SUSPENDED' 'yes' # Logging log_event 'system' "$V_EVENT" diff --git a/bin/v_unsuspend_sys_user b/bin/v_unsuspend_sys_user index 003ed6c1..c4fd86cd 100755 --- a/bin/v_unsuspend_sys_user +++ b/bin/v_unsuspend_sys_user @@ -74,7 +74,7 @@ restart_schedule 'web' restart_schedule 'dns' # Changing suspend value -update_user_value "$user" '$SUSPEND' 'no' +update_user_value "$user" '$SUSPENDED' 'no' # Logging log_event 'system' "$V_EVENT" From 593819e10b720a129d4a3db248160fb2cbdc8e06 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Sun, 18 Dec 2011 22:39:29 +0200 Subject: [PATCH 14/16] redesigned return codes --- bin/v_add_sys_user | 4 +- bin/v_backup_sys_user | 16 +-- bin/v_change_sys_ip_status | 8 +- bin/v_change_sys_user_package | 4 +- bin/v_del_web_domain_alias | 4 +- bin/v_upd_sys_rrd_ftp | 4 +- bin/v_upd_sys_rrd_httpd | 4 +- bin/v_upd_sys_rrd_la | 4 +- bin/v_upd_sys_rrd_mem | 4 +- bin/v_upd_sys_rrd_mysql | 8 +- bin/v_upd_sys_rrd_net | 4 +- bin/v_upd_sys_rrd_nginx | 4 +- bin/v_upd_sys_rrd_pgsql | 8 +- bin/v_upd_sys_rrd_ssh | 4 +- bin/v_upd_sys_user_backups | 20 ++-- bin/v_upd_sys_vesta | 8 +- bin/v_upd_web_domain_stat | 4 +- conf/vars.conf | 143 ++++---------------------- func/cron.func | 20 ++-- func/db.func | 176 ++++++++++++++++---------------- func/domain.func | 104 +++++++++---------- func/ip.func | 42 ++++---- func/shared.func | 170 +++++++++++++++--------------- src/v_check_sys_user_password.c | 8 +- 24 files changed, 335 insertions(+), 440 deletions(-) diff --git a/bin/v_add_sys_user b/bin/v_add_sys_user index 071a0fe4..b92ab8c5 100755 --- a/bin/v_add_sys_user +++ b/bin/v_add_sys_user @@ -25,8 +25,8 @@ is_user_free() { # Checking result if [ ! -z "$check_sysuser" ] || [ -e "$V_USERS/$user" ]; then echo "Error: user $user exist" - log_event 'debug' "$E_USER_EXIST $V_EVENT" - exit $E_USER_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } diff --git a/bin/v_backup_sys_user b/bin/v_backup_sys_user index ad17abba..495024c7 100755 --- a/bin/v_backup_sys_user +++ b/bin/v_backup_sys_user @@ -46,8 +46,8 @@ while [ "$la" -ge "$V_BACKUP_LA_LIMIT" ]; do if [ "$i" -ge "15" ]; then echo "Error: LA is too high" - log_event 'debug' "$E_LOAD_AVERAGE $V_EVENT" - exit $E_LOAD_AVERAGE + log_event 'debug' "$E_LA $V_EVENT" + exit $E_LA fi (( ++i)) @@ -367,8 +367,8 @@ local_backup(){ disk_usage=$(df $V_BACKUP | awk '{print $5}'|tail -n1|cut -f 1 -d '%') if [ "$disk_usage" -ge "$V_BACKUP_DISK_LIMIT" ]; then echo "Error: Not enough disk space" - log_event 'debug' "$E_DISK_SPACE $V_EVENT" - exit $E_DISK_SPACE + log_event 'debug' "$E_DISK $V_EVENT" + exit $E_DISK fi # Creating final tarball @@ -402,8 +402,8 @@ ftp_backup(){ if [ -z "$HOST" ] || [ -z "$USERNAME" ] || [ -z "$PASSWORD" ] ||\ [ -z "$BPATH" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Debug info @@ -417,8 +417,8 @@ ftp_backup(){ rm $ftmpdir" if [ ! -z "$(ftpc "$command")" ] ; then echo "Error: FTP error" - log_event 'debug' "$E_FTP_ERROR $V_EVENT" - exit $E_FTP_ERROR + log_event 'debug' "$E_FTP $V_EVENT" + exit $E_FTP fi # Checking retention diff --git a/bin/v_change_sys_ip_status b/bin/v_change_sys_ip_status index 220768a8..21795dd0 100755 --- a/bin/v_change_sys_ip_status +++ b/bin/v_change_sys_ip_status @@ -33,8 +33,8 @@ is_sys_ip_valid current_status=$(get_sys_ip_value '$STATUS') if [ "$ip_status" = "$current_status" ]; then echo "Error: status is already set" - log_event 'debug' "$E_VALUE_EXIST $V_EVENT" - exit $E_VALUE_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi # Parsing current ip usage @@ -45,8 +45,8 @@ ip_owner=$(get_sys_ip_value '$OWNER') # Checking condition if [ "$web_domains" -ne '0' ] && [ "$sys_user" != "$ip_owner" ]; then echo "Error: ip is used" - log_event 'debug' "$E_IP_USED $V_EVENT" - exit $E_IP_USED + log_event 'debug' "$E_INUSE $V_EVENT" + exit $E_INUSE fi diff --git a/bin/v_change_sys_user_package b/bin/v_change_sys_user_package index 9b001459..1b0c7f71 100755 --- a/bin/v_change_sys_user_package +++ b/bin/v_change_sys_user_package @@ -47,8 +47,8 @@ is_package_avalable() { [ "$DISK_QUOTA" -lt "$U_DISK" ] ||\ [ "$BANDWIDTH" -lt "$U_BANDWIDTH" ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi } diff --git a/bin/v_del_web_domain_alias b/bin/v_del_web_domain_alias index 6766d8f0..a8ddaa59 100755 --- a/bin/v_del_web_domain_alias +++ b/bin/v_del_web_domain_alias @@ -49,8 +49,8 @@ get_web_domain_values check_alias=$(echo ${ALIAS//,/ }|grep -w "$dom_alias") if [ -z "$check_alias" ]; then echo "Error: alias not exist" - log_event 'debug' "$E_DOM_NOTEXIST $V_EVENT" - exit $E_DOM_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi #----------------------------------------------------------# diff --git a/bin/v_upd_sys_rrd_ftp b/bin/v_upd_sys_rrd_ftp index 5abbb5ca..5f4d612e 100755 --- a/bin/v_upd_sys_rrd_ftp +++ b/bin/v_upd_sys_rrd_ftp @@ -24,7 +24,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -89,7 +89,7 @@ rrdtool graph $V_RRD/ftp/$period-ftp.png \ #----------------------------------------------------------# if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi exit diff --git a/bin/v_upd_sys_rrd_httpd b/bin/v_upd_sys_rrd_httpd index 6b0723ea..4c2a2ba5 100755 --- a/bin/v_upd_sys_rrd_httpd +++ b/bin/v_upd_sys_rrd_httpd @@ -23,7 +23,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac @@ -94,7 +94,7 @@ rrdtool graph $V_RRD/web/$period-httpd.png \ #----------------------------------------------------------# if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi exit diff --git a/bin/v_upd_sys_rrd_la b/bin/v_upd_sys_rrd_la index f3da739f..ea4f29c5 100755 --- a/bin/v_upd_sys_rrd_la +++ b/bin/v_upd_sys_rrd_la @@ -23,7 +23,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -94,7 +94,7 @@ rrdtool graph $V_RRD/la/$period-la.png \ #----------------------------------------------------------# if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi exit diff --git a/bin/v_upd_sys_rrd_mem b/bin/v_upd_sys_rrd_mem index 65846b3e..d929aaf2 100755 --- a/bin/v_upd_sys_rrd_mem +++ b/bin/v_upd_sys_rrd_mem @@ -23,7 +23,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -94,7 +94,7 @@ rrdtool graph $V_RRD/mem/$period-mem.png \ #----------------------------------------------------------# if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi exit diff --git a/bin/v_upd_sys_rrd_mysql b/bin/v_upd_sys_rrd_mysql index 712ec0cf..d8b0fa88 100755 --- a/bin/v_upd_sys_rrd_mysql +++ b/bin/v_upd_sys_rrd_mysql @@ -24,7 +24,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -76,8 +76,8 @@ for host in $hosts; do if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ] then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Parsing data @@ -126,7 +126,7 @@ for host in $hosts; do GPRINT:s:'MAX:Max\:''%8.0lf\j' >/dev/null 2>/dev/null; result=$? if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi done diff --git a/bin/v_upd_sys_rrd_net b/bin/v_upd_sys_rrd_net index eb2f1732..8831976c 100755 --- a/bin/v_upd_sys_rrd_net +++ b/bin/v_upd_sys_rrd_net @@ -23,7 +23,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -100,7 +100,7 @@ for iface in $ifaces; do GPRINT:out:'MAX:Max\:''%8.0lf\j' >/dev/null 2>/dev/null; result=$? if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi done diff --git a/bin/v_upd_sys_rrd_nginx b/bin/v_upd_sys_rrd_nginx index faafa6d2..c45b0c76 100755 --- a/bin/v_upd_sys_rrd_nginx +++ b/bin/v_upd_sys_rrd_nginx @@ -23,7 +23,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -86,7 +86,7 @@ rrdtool graph $V_RRD/web/$period-nginx.png \ #----------------------------------------------------------# if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi exit diff --git a/bin/v_upd_sys_rrd_pgsql b/bin/v_upd_sys_rrd_pgsql index fb4c5577..78099190 100755 --- a/bin/v_upd_sys_rrd_pgsql +++ b/bin/v_upd_sys_rrd_pgsql @@ -24,7 +24,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -78,8 +78,8 @@ for host in $hosts; do if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ] then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi @@ -132,7 +132,7 @@ for host in $hosts; do GPRINT:t:'MAX:Max\:''%8.0lf\j' >/dev/null 2>/dev/null; result=$? if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi done diff --git a/bin/v_upd_sys_rrd_ssh b/bin/v_upd_sys_rrd_ssh index 41102663..96494558 100755 --- a/bin/v_upd_sys_rrd_ssh +++ b/bin/v_upd_sys_rrd_ssh @@ -23,7 +23,7 @@ case $period in weekly) start='-7d'; end='now'; grid='HOUR:8:DAY:1:DAY:1:0:%a %d';; monthly) start='-1m'; end='now'; grid='WEEK:1:WEEK:1:WEEK:1:0:%b %d';; yearly) start='-1y'; end='now'; grid='MONTH:1:YEAR:1:MONTH:2:2419200:%b';; - *) exit $E_RRD_FAILED ;; + *) exit $E_RRD ;; esac # Checking directory @@ -87,7 +87,7 @@ rrdtool graph $V_RRD/ssh/$period-ssh.png \ #----------------------------------------------------------# if [ "$result" -ne 0 ]; then - exit $E_RRD_FAILED + exit $E_RRD fi exit diff --git a/bin/v_upd_sys_user_backups b/bin/v_upd_sys_user_backups index 0d70fe1d..6b2da7b9 100755 --- a/bin/v_upd_sys_user_backups +++ b/bin/v_upd_sys_user_backups @@ -158,8 +158,8 @@ init_ftp_variables() { if [ -z "$HOST" ] || [ -z "$USERNAME" ] || [ -z "$PASSWORD" ] ||\ [ -z "$BPATH" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi } @@ -171,8 +171,8 @@ check_ftp_connection(){ rm $ftmpdir" if [ ! -z "$(ftpc "$command")" ] ; then echo "Error: FTP error" - log_event 'debug' "$E_FTP_ERROR $V_EVENT" - exit $E_FTP_ERROR + log_event 'debug' "$E_FTP $V_EVENT" + exit $E_FTP fi } @@ -197,8 +197,8 @@ is_user_valid # Checking load averages la=$(cat /proc/loadavg |cut -f 1 -d ' '|cut -f 1 -d '.') if [ "$la" -ge "$V_BACKUP_LA_LIMIT" ]; then - log_event 'debug' "$E_LOAD_AVERAGE $V_EVENT" - exit $E_LOAD_AVERAGE + log_event 'debug' "$E_LA $V_EVENT" + exit $E_LA fi @@ -232,8 +232,8 @@ if [ "$type" = 'ftp' ]; then cd $tmpdir if [ ! -z "$(ftpc "get $backup")" ]; then echo "Error: FTP transfer error" - log_event 'debug' "$E_FTP_ERROR $V_EVENT" - exit $E_FTP_ERROR + log_event 'debug' "$E_FTP $V_EVENT" + exit $E_FTP fi get_backup_info $tmpdir/$backup $type >> $tmp_file rm -f $tmpdir/$backup @@ -259,8 +259,8 @@ if [ "$type" = 'ftp,local' ] || [ "$type" = 'local,ftp' ]; then cd $tmpdir if [ ! -z "$(ftpc "get $backup")" ]; then echo "Error: FTP transfer error" - log_event 'debug' "$E_FTP_ERROR $V_EVENT" - exit $E_FTP_ERROR + log_event 'debug' "$E_FTP $V_EVENT" + exit $E_FTP fi get_backup_info $tmpdir/$backup ftp >> $tmp_file rm -f $tmpdir/$backup diff --git a/bin/v_upd_sys_vesta b/bin/v_upd_sys_vesta index 1cb0e7fc..32a1529e 100755 --- a/bin/v_upd_sys_vesta +++ b/bin/v_upd_sys_vesta @@ -43,8 +43,8 @@ if [ "$version" != "$VERSION" ]; then # Checking download result if [ "$?" -ne "0" ]; then echo "Error: version tree update failed" - log_event 'debug' "$E_UPD_FAILED $V_EVENT" - exit $E_UPD_FAILED + log_event 'debug' "$E_UPDATE $V_EVENT" + exit $E_UPDATE fi # Deviding version @@ -89,8 +89,8 @@ if [ "$version" != "$VERSION" ]; then # Checking download result if [ "$?" -ne "0" ]; then echo "Error: version tree update failed" - log_event 'debug' "$E_UPD_FAILED $V_EVENT" - exit $E_UPD_FAILED + log_event 'debug' "$E_UPDATE $V_EVENT" + exit $E_UPDATE fi bash $V_BIN/updates/$update.sh done diff --git a/bin/v_upd_web_domain_stat b/bin/v_upd_web_domain_stat index fe7c2c36..80ac30ff 100755 --- a/bin/v_upd_web_domain_stat +++ b/bin/v_upd_web_domain_stat @@ -53,8 +53,8 @@ stats=$(get_web_domain_value '$STATS') config="$V_HOME/$user/conf/$stats.$domain.conf" if [ ! -e "$config" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking statistics directory diff --git a/conf/vars.conf b/conf/vars.conf index 9e7bf745..9050b680 100644 --- a/conf/vars.conf +++ b/conf/vars.conf @@ -1,9 +1,3 @@ -############################################################# -# # -# This file contains vesta global variable defenitions # -# # -############################################################# - # Paths VESTA=/usr/local/vesta V_BIN=$VESTA/bin @@ -39,121 +33,22 @@ V_RRD_STEP=300 V_RRD_IFACE_EXCLUDE=lo # Return codes -OK=0 -ERROR=1 -E_BAD_CMD=2 -E_BAD_ARGS=3 -E_BAD_STATUS=4 -E_BAD_TYPE=5 -E_BAD_FORMAT=6 -E_PARSE_ERROR=7 -E_STR_NOTFOUND=8 -E_OUTOFRANGE=9 -E_WEB_ENABLED=10 -E_WEB_DISABLED=11 -E_MAIL_ENABLED=12 -E_MAIL_DISABLED=13 -E_DNS_ENABLED=14 -E_DNS_DISABLED=15 -E_DB_ENABLED=16 -E_DB_DISABLED=17 -E_IM_ENABLED=18 -E_IM_DISABLED=19 -E_USER_EXIST=20 -E_USER_NOTEXIST=21 -E_USER_BADSTATUS=22 -E_USER_SUSPENDED=23 -E_USER_UNSUSPENDED=24 -E_USER_UNKNOWN=25 -E_DOM_EXIST=30 -E_DOM_NOTEXIST=31 -E_DOM_ADDED=32 -E_DOM_NOTADDED=33 -E_DOM_SUSPENDED=34 -E_DOM_UNSUSPENDED=35 -E_DOM_OWNED=36 -E_DOM_NOTOWNED=37 -E_DOM_ISALIAS=38 -E_DOM_NOTALIAS=39 -E_IP_EXIST=40 -E_IP_NOTEXIST=41 -E_IP_USED=42 -E_IP_UNUSED=107 -E_IP_OWNED=108 -E_IP_NOTOWNED=98 -E_QUOTA_ENABLED=1 -E_QUOTA_DISABLED=103 -E_LOG_EXIST=100 -E_LOG_NOTEXIST=101 -E_LOG_ENABLED=102 -E_LOG_DISABLED=99 -E_PKG_EXIST=113 -E_PKG_NOTEXIST=114 -E_PKG_UPGRADE=26 -E_PASSWORD_SHORT=27 -E_PASSWORD_WRONG=28 -E_FWD_EXISTS=46 -E_FWD_NOTFOUND=29 -E_CONF_EXISTS=54 -E_CONF_NOTEXIST=95 -E_PID_EXIST=104 -E_PID_NOTEXIST=105 -E_FILE_BROKEN=106 -E_LIMIT_NOTFOUND=109 -E_BACKUP_ENABLED=110 -E_BACKUP_DISABLED=111 -E_LOCK_EXIST=112 -E_DIR_NOTEXIST=43 -E_DIR_EXIST=44 -E_EMAIL_INVALID=45 -E_HOST_NOTFOUND=47 -E_HOST_EXIST=48 -E_HOST_USED=53 -E_CONN_FAILED=49 -E_PERMS_REQUEIURED=50 -E_TPL_EXIST=51 -E_TPL_NOTEXIST=52 -E_AUTH_ENABLED=55 -E_AUTH_DISABLED=56 -E_STATS_ENABLED=57 -E_STATS_DISABLED=58 -E_CERT_EXIST=59 -E_CERT_NOTEXIST=60 -E_CERT_INVALID=61 -E_KEY_INVALID=62 -E_CERTKEY_INVALID=63 -E_CERT_USED=64 -E_VALUE_EMPTY=65 -E_VALUE_EXIST=66 -E_ALIAS_NOTEXIST=67 -E_ALIAS_EXIST=68 -E_SHELL_INVALID=69 -E_INTERFACE_NOTEXIST=70 -E_IP_FIRST=71 -E_JOB_NOTEXIST=72 -E_JOB_EXIST=73 -E_ID_NOTEXIST=74 -E_ID_EXIST=75 -E_DB_NOTEXIST=76 -E_DB_EXIST=77 -E_DBHOST_NOTEXIST=78 -E_DBHOST_EXIST=79 -E_DBHOST_UNAVAILABLE=80 -E_JOB_SUSPENDED=81 -E_JOB_UNSUSPENDED=82 -E_DB_SUSPENDED=83 -E_DB_UNSUSPENDED=84 -E_DBUSER_NOTEXIST=85 -E_DBUSER_EXIST=86 -E_DBHOST_BUSY=87 -E_DBHOST_FREE=88 -E_UPD_FAILED=89 -E_PROXY_DISABLED=90 -E_FTP_ERROR=91 -E_SFTP_ERROR=92 -E_DISK_SPACE=93 -E_LOAD_AVERAGE=94 -E_CHILD_EXIST=96 -E_CHILD_NOTEXIST=97 -E_RRD_FAILED=114 -E_BACKUP_NOTFOUND=115 +E_ARGS=1 +E_INVALID=2 +E_NOTEXIST=3 +E_EXISTS=4 +E_SUSPENDED=5 +E_UNSUSPENDED=6 +E_INUSE=7 +E_LIMIT=8 +E_PASSWORD=9 +E_FORBIDEN=10 +E_DISABLED=11 +E_PARSING=12 +E_DISK=13 +E_LA=14 +E_FTP=15 +E_SSH=16 +E_DB=17 +E_RRD=18 +E_UPDATE=19 diff --git a/func/cron.func b/func/cron.func index 6c4fc230..e3626381 100644 --- a/func/cron.func +++ b/func/cron.func @@ -12,9 +12,9 @@ is_cron_job_free() { check_job=$(grep "JOB='$job'" $V_USERS/$user/cron.conf) if [ ! -z "$check_job" ]; then - echo "Error: job exist" - log_event 'debug' "$E_JOB_EXIST $V_EVENT" - exit $E_JOB_EXIST + echo "Error: job id exist" + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -61,9 +61,9 @@ is_job_valid() { result=$(grep "JOB='$job'" $V_USERS/$user/cron.conf) if [ -z "$result" ]; then - echo "Error: job not exists" - log_event 'debug' "$E_JOB_NOTEXIST $V_EVENT" - exit $E_JOB_NOTEXIST + echo "Error: job id not exists" + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -80,8 +80,8 @@ is_job_suspended() { # Checkng key if [ ! -z "$str" ]; then echo "Error: job suspended" - log_event 'debug' "$E_JOB_SUSPENDED $V_EVENT" - exit $E_JOB_SUSPENDED + log_event 'debug' "$E_SUSPENDED $V_EVENT" + exit $E_SUSPENDED fi } @@ -92,8 +92,8 @@ is_job_unsuspended() { # Checkng key if [ ! -z "$str" ]; then echo "Error: job unsuspended" - log_event 'debug' "$E_JOB_UNSUSPENDED $V_EVENT" - exit $E_JOB_UNSUSPENDED + log_event 'debug' "$E_UNSUSPENDED $V_EVENT" + exit $E_UNSUSPENDED fi } diff --git a/func/db.func b/func/db.func index bef3ccc4..08a07383 100644 --- a/func/db.func +++ b/func/db.func @@ -5,8 +5,8 @@ is_db_valid() { # Checking result if [ -z "$check_db" ]; then echo "Error: db not added" - log_event 'debug' "$E_DB_NOTEXIST $V_EVENT" - exit $E_DB_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -17,8 +17,8 @@ is_db_new() { # Checking result if [ ! -z "$check_db" ]; then echo "Error: db exist" - log_event 'debug' "$E_DB_EXIST $V_EVENT" - exit $E_DB_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -31,8 +31,8 @@ is_db_host_valid() { # Checking result if [ -z "$check_db" ]; then echo "Error: host not added" - log_event 'debug' "$E_DBHOST_NOTEXIST $V_EVENT" - exit $E_DBHOST_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -231,16 +231,16 @@ create_db_mysql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Adding database & checking result @@ -248,8 +248,8 @@ create_db_mysql() { code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Adding user with password (% will give access to db from any ip) @@ -279,16 +279,16 @@ create_db_pgsql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Adding new role @@ -296,8 +296,8 @@ create_db_pgsql() { code=$? if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Adding database & checking result @@ -320,8 +320,8 @@ is_db_host_new() { check_host=$(grep "HOST='$host'" $V_DB/$type.conf) if [ ! -z "$check_host" ]; then echo "Error: db host exist" - log_event 'debug' "$E_DBHOST_EXIST $V_EVENT" - exit $E_DBHOST_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi fi } @@ -332,8 +332,8 @@ is_mysql_host_alive() { $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi } @@ -344,8 +344,8 @@ is_pgsql_host_alive() { $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi } @@ -356,8 +356,8 @@ is_db_suspended() { # Checking result if [ ! -z "$check_db" ]; then echo "Error: db suspended" - log_event 'debug' "$E_DB_SUSPENDED $V_EVENT" - exit $E_DB_SUSPENDED + log_event 'debug' "$E_SUSPENDED $V_EVENT" + exit $E_SUSPENDED fi } @@ -368,8 +368,8 @@ is_db_unsuspended() { # Checking result if [ -z "$check_db" ]; then echo "Error: db unsuspended" - log_event 'debug' "$E_DB_UNSUSPENDED $V_EVENT" - exit $E_DB_UNSUSPENDED + log_event 'debug' "$E_UNSUSPENDED $V_EVENT" + exit $E_UNSUSPENDED fi } @@ -380,8 +380,8 @@ is_db_user_valid() { # Checking result if [ -z "$check_db" ]; then echo "Error: dbuser not exist" - log_event 'debug' "$E_DBUSER_NOTEXIST $V_EVENT" - exit $E_DBUSER_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -396,16 +396,16 @@ change_db_mysql_password() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Changing user password @@ -430,16 +430,16 @@ change_db_pgsql_password() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi $sql "ALTER ROLE $db_user WITH LOGIN PASSWORD '$db_password'" >/dev/null @@ -474,24 +474,24 @@ del_db_mysql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Deleting database & checking result $sql "DROP DATABASE $database" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Deleting user @@ -523,16 +523,16 @@ del_db_pgsql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Deleting database & checking result @@ -540,8 +540,8 @@ del_db_pgsql() { $sql "DROP DATABASE $database" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Deleting user @@ -562,8 +562,8 @@ del_db_vesta() { string=$( grep -n "DB='$database'" $conf | cut -f 1 -d : ) if [ -z "$string" ]; then echo "Error: parse error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi sed -i "$string d" $conf } @@ -580,16 +580,16 @@ dump_db_mysql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Dumping database @@ -613,16 +613,16 @@ dump_db_pgsql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Dumping database @@ -649,8 +649,8 @@ is_db_host_free() { # Checking U_DB_BASES if [ 0 -ne "$U_DB_BASES" ]; then echo "Error: host is used" - log_event 'debug' "$E_DBHOST_BUSY $V_EVENT" - exit $E_DBHOST_BUSY + log_event 'debug' "$E_INUSE $V_EVENT" + exit $E_INUSE fi } @@ -661,8 +661,8 @@ del_dbhost_vesta() { string=$( grep -n "HOST='$host'" $conf | cut -f 1 -d : ) if [ -z "$string" ]; then echo "Error: parse error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi sed -i "$string d" $conf } @@ -709,16 +709,16 @@ suspend_db_mysql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Suspending user @@ -739,16 +739,16 @@ suspend_db_pgsql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Suspending user @@ -767,16 +767,16 @@ unsuspend_db_mysql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Unsuspending user @@ -797,16 +797,16 @@ unsuspend_db_pgsql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Unsuspending user @@ -840,16 +840,16 @@ get_disk_db_mysql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $PORT ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1; code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Deleting database & checking result @@ -885,16 +885,16 @@ get_disk_db_pgsql() { # Checking empty vars if [ -z $HOST ] || [ -z $USER ] || [ -z $PASSWORD ] || [ -z $TPL ]; then echo "Error: config is broken" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking connection $sql "SELECT VERSION()" >/dev/null 2>&1;code="$?" if [ '0' -ne "$code" ]; then echo "Error: Connect failed" - log_event 'debug' "$E_DBHOST_UNAVAILABLE $V_EVENT" - exit $E_DBHOST_UNAVAILABLE + log_event 'debug' "$E_DB $V_EVENT" + exit $E_DB fi # Raw query diff --git a/func/domain.func b/func/domain.func index afd3209a..a696d4b9 100644 --- a/func/domain.func +++ b/func/domain.func @@ -19,10 +19,10 @@ is_domain_new() { if [ ! -z "$check_domain" ] || [ ! -z "$check_alias" ]; then if [ "$output_mode" != 'quiet' ]; then echo "Error: domain exist" - log_event 'debug' "$E_DOM_EXIST $V_EVENT" - exit $E_DOM_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi - return $E_DOM_EXIST + return $E_EXISTS fi } @@ -43,8 +43,8 @@ is_domain_owner() { # Checking result if [ -z "$check_domain" ] && [ -z "$check_alias" ]; then echo "Error: domain not owned" - log_event 'debug' "$E_DOM_NOTOWNED $V_EVENT" - exit $E_DOM_NOTOWNED + log_event 'debug' "$E_FORBIDEN $V_EVENT" + exit $E_FORBIDEN fi } @@ -55,8 +55,8 @@ is_dns_domain_free() { # Checking result if [ ! -z "$check_domain" ]; then echo "Error: domain exist" - log_event 'debug' "$E_DOM_EXIST $V_EVENT" - exit $E_DOM_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -75,8 +75,8 @@ is_web_domain_free() { # Checking result if [ ! -z "$check_domain" ] || [ ! -z "$check_alias" ]; then echo "Error: domain exist" - log_event 'debug' "$E_DOM_EXIST $V_EVENT" - exit $E_DOM_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -87,8 +87,8 @@ is_dns_domain_valid() { # Checking result if [ -z "$check_domain" ]; then echo "Error: domain not exist" - log_event 'debug' "$E_DOM_NOTEXIST $V_EVENT" - exit $E_DOM_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -99,8 +99,8 @@ is_web_domain_valid() { # Checking result if [ -z "$check_domain" ]; then echo "Error: domain not exist" - log_event 'debug' "$E_DOM_NOTEXIST $V_EVENT" - exit $E_DOM_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -113,8 +113,8 @@ is_domain_suspended() { # Checking result if [ ! -z "$check_domain" ]; then echo "Error: domain suspended" - log_event 'debug' "$E_DOM_SUSPENDED $V_EVENT" - exit $E_DOM_SUSPENDED + log_event 'debug' "$E_SUSPENDED $V_EVENT" + exit $E_SUSPENDED fi } @@ -127,8 +127,8 @@ is_domain_unsuspended() { # Checking result if [ ! -z "$check_domain" ]; then echo "Error: domain unsuspended" - log_event 'debug' "$E_DOM_UNSUSPENDED $V_EVENT" - exit $E_DOM_UNSUSPENDED + log_event 'debug' "$E_UNSUSPENDED $V_EVENT" + exit $E_UNSUSPENDED fi } @@ -207,8 +207,8 @@ is_dns_record_free() { if [ ! -z "$check_id" ]; then echo "Error: ID exist" - log_event 'debug' "$E_ID_EXIST $V_EVENT" - exit $E_ID_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -254,8 +254,8 @@ get_web_config_brds() { # Defining template borders serv_line=$(grep -ni 'Name %domain_idn%' "$tpl_file" |cut -f 1 -d :) if [ -z "$serv_line" ]; then - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - return $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + return $E_PARSING fi # Template lines @@ -444,8 +444,8 @@ is_web_domain_key_empty() { # Checkng key if [ ! -z "$value" ] && [ "$value" != 'no' ]; then echo "Error: value is not empty = $value" - log_event 'debug' "$E_VALUE_EXIST $V_EVENT" - exit $E_VALUE_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -453,34 +453,34 @@ is_web_domain_cert_valid() { # Checking file existance if [ ! -e "$ssl_dir/$domain.crt" ] || [ ! -e "$ssl_dir/$domain.key" ]; then - echo "Error: certificate not exist" - log_event 'debug' "$E_CERT_NOTEXIST $V_EVENT" - exit $E_CERT_NOTEXIST + echo "Error: ssl certificate not exist" + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi # Checking certificate crt=$(openssl verify $ssl_dir/$domain.crt 2>/dev/null |grep '/C=') if [ -z "$crt" ]; then - echo "Error: certificate invalid" - log_event 'debug' "$E_CERT_INVALID $V_EVENT" - exit $E_CERT_INVALID + echo "Error: ssl certificate invalid" + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi # Checking certificate key openssl rsa -in "$ssl_dir/$domain.key" -check >/dev/null 2>/dev/null if [ "$?" -ne 0 ]; then - echo "Error: key invalid" - log_event 'debug' "$E_KEY_INVALID $V_EVENT" - exit $E_KEY_INVALID + echo "Error: ssl key invalid" + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi # Checking certificate authority if [ -e "$ssl_dir/$domain.ca" ]; then ca=$(openssl verify $ssl_dir/$domain.ca 2>/dev/null |grep '/C=') if [ -z "$ca" ]; then - echo "Error: certificate invalid" - log_event 'debug' "$E_CERT_INVALID $V_EVENT" - exit $E_CERT_INVALID + echo "Error: ssl certificate invalid" + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi fi @@ -493,9 +493,9 @@ is_web_domain_cert_valid() { kill $pid > /dev/null 2>&1 result=$? if [ "$result" -ne '0' ]; then - echo "Error: certificate key pair invalid" - log_event 'debug' "$E_CERTKEY_INVALID $V_EVENT" - exit $E_CERTKEY_INVALID + echo "Error: ssl certificate key pair invalid" + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -506,8 +506,8 @@ is_dns_record_valid() { if [ -z "$check_id" ]; then echo "Error: ID not exist" - log_event 'debug' "$E_ID_NOTEXIST $V_EVENT" - exit $E_ID_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -528,8 +528,8 @@ is_web_domain_value_exist() { # Checking result if [ -z "$value" ] || [ "$value" = 'no' ]; then echo "Error: ${key//$/} is empty" - log_event 'debug' "$E_VALUE_EMPTY $V_EVENT" - exit $E_VALUE_EMPTY + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -550,8 +550,8 @@ is_dns_domain_value_exist() { # Checking result if [ -z "$value" ] || [ "$value" = 'no' ]; then echo "Error: ${key//$/} is empty" - log_event 'debug' "$E_VALUE_EMPTY $V_EVENT" - exit $E_VALUE_EXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_EXISTS fi } @@ -571,8 +571,8 @@ del_dns_domain() { string=$( grep -n "DOMAIN='$domain'" $conf | cut -f 1 -d : ) if [ -z "$string" ]; then echo "Error: parse error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi sed -i "$string d" $conf rm -f $V_USERS/$user/dns/$domain @@ -585,8 +585,8 @@ del_web_domain() { string=$( grep -n "DOMAIN='$domain'" $conf | cut -f 1 -d : ) if [ -z "$string" ]; then echo "Error: parse error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi sed -i "$string d" $conf } @@ -678,8 +678,8 @@ namehost_ip_disable() { if [ -z "$tpl_ln" ] || [ -z "$ip_line" ] || [ -z "$conf_line" ] then echo "Error: nginx config paring error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi up_line=$((ip_line - 1)) @@ -689,8 +689,8 @@ namehost_ip_disable() { # Checking parsed lines if [ -z "$first_line" ] || [ -z "$last_line" ]; then echo "Error: nginx config paring error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi sed -i "$first_line,$last_line d" $nconf diff --git a/func/ip.func b/func/ip.func index b4ba4d74..811b415c 100644 --- a/func/ip.func +++ b/func/ip.func @@ -6,8 +6,8 @@ is_sys_ip_free() { ip_check=$(echo "$ip_list"|grep -w "$ip") if [ -n "$ip_check" ] || [ -e "$V_IPS/$ip" ]; then echo "Error: IP exist" - log_event 'debug' "$E_IP_EXIST $V_EVENT" - exit $E_IP_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -32,8 +32,8 @@ is_sys_ip_valid() { # Checking ip existance if [ ! -e "$V_IPS/$ip" ] || [ -z "$check_ifc" ]; then echo "Error: IP not exist" - log_event 'debug' "$E_IP_NOTEXIST $V_EVENT" - exit $E_IP_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi } @@ -54,8 +54,8 @@ is_ip_key_empty() { # Checkng key if [ ! -z "$value" ] && [ "$value" != '0' ]; then echo "Error: value is not empty = $value " - log_event 'debug' "$E_VALUE_EXIST $V_EVENT" - exit $E_VALUE_EXIST + log_event 'debug' "$E_EXISTS $V_EVENT" + exit $E_EXISTS fi } @@ -92,8 +92,8 @@ is_ip_avalable() { # Checking ip existance if [ ! -e "$V_IPS/$ip" ]; then echo "Error: IP not exist" - log_event 'debug' "$E_IP_NOTEXIST $V_EVENT" - exit $E_IP_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi # Parsing ip data @@ -110,8 +110,8 @@ is_ip_avalable() { if [ "$ip_owner" != "$user" ] && [ "$ip_shared" != 'yes' ]; then echo "Error: ip not owned by user" - log_event 'debug' "$E_IP_NOTOWNED $V_EVENT" - exit $E_IP_NOTOWNED + log_event 'debug' "$E_FORBIDEN $V_EVENT" + exit $E_FORBIDEN fi } @@ -121,8 +121,8 @@ is_sys_ip_owner() { ip_owner=$(grep 'OWNER=' $V_IPS/$ip|cut -f 2 -d \') if [ "$ip_owner" != "$user" ]; then echo "Error: IP not owned" - log_event 'debug' "$E_IP_NOTOWNED $V_EVENT" - exit $E_IP_NOTOWNED + log_event 'debug' "$E_FORBIDEN $V_EVENT" + exit $E_FORBIDEN fi } @@ -144,8 +144,8 @@ increase_ip_value() { # Checking result if [ -z "$current_web" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # +1 webdomain @@ -181,8 +181,8 @@ decrease_ip_value() { # Checking result if [ -z "$current_web" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # -1 webdomain @@ -230,16 +230,16 @@ get_current_interface() { # Checking result if [ -z "$i" ]; then echo "Error: IP not exist" - log_event 'debug' "$E_IP_NOTEXIST $V_EVENT" - exit $E_IP_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi # Checking ip is alias check_alias=$(echo $i| cut -s -f 2 -d :) if [ -z "$check_alias" ]; then - echo "Error: IP is first on interface" - log_event 'debug' "$E_IP_FIRST $V_EVENT" - exit $E_IP_FIRST + echo "Error: Main IP on interface" + log_event 'debug' "$E_FORBIDEN $V_EVENT" + exit $E_FORBIDEN fi echo "$i" } diff --git a/func/shared.func b/func/shared.func index 2a65ff36..f25e5f93 100644 --- a/func/shared.func +++ b/func/shared.func @@ -35,8 +35,8 @@ check_args() { if [ "$user_args" -lt "$sys_args" ]; then echo "Error: bad args" echo "Usage: $V_SCRIPT $usage" - log_event 'debug' "$E_BAD_ARGS $V_EVENT" - exit $E_BAD_ARGS + log_event 'debug' "$E_ARGS $V_EVENT" + exit $E_ARGS fi } @@ -51,9 +51,9 @@ format_validation() { check_http=$( echo "$val" |grep "^https://" ) needed_chars=$(echo "$val" | cut -s -f 2 -d '.') if [ -z "$check_http" ] || [ -z "$needed_chars" ]; then - echo "Error: shell not found" - log_event 'debug' "$E_SHELL_INVALID $V_EVENT" - exit $E_SHELL_INVALID + echo "Error: invalid url" + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -65,8 +65,8 @@ format_validation() { check_shell=$(/usr/bin/chsh --list-shells | grep -w "$val" ) if [ -z "$check_shell" ]; then echo "Error: shell not found" - log_event 'debug' "$E_SHELL_INVALID $V_EVENT" - exit $E_SHELL_INVALID + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -77,8 +77,8 @@ format_validation() { # Checking password lenght if [ "${#val}" -lt '6' ]; then echo "Error: password is shorter than 6 chars" - log_event 'debug' "$E_PASSWORD_SHORT $V_EVENT" - exit $E_PASSWORD_SHORT + log_event 'debug' "$E_PASSWORD $V_EVENT" + exit $E_PASSWORD fi } @@ -92,23 +92,23 @@ format_validation() { if [[ 0 -ne "$special_chars" ]]; then echo "Error: $var out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi # Checking letters letters=$(echo "$val" | grep -c "[a-Z]") if [ 0 -ne "$letters" ]; then echo "Error: $var out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi # Checking -zero if [[ 0 -ne "$val" ]] && [[ 0 -gt "$val" ]]; then echo "Error: $var out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -125,8 +125,8 @@ format_validation() { if [ -z "$oc1" ] || [ -z "$oc2" ] || [ -z "$oc3" ] || [ -z "$oc4" ] then echo "Error: $var out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -139,8 +139,8 @@ format_validation() { # Checking status if [ -z "$check_status" ]; then echo "Error: $var out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -157,8 +157,8 @@ format_validation() { [ "${#check_dt}" -lt 2 ] &&\ [ "$val" != 'vesta@localhost' ]; then echo "Error: email format is wrong" - log_event 'debug' "$E_EMAIL_INVALID $V_EVENT" - exit $E_EMAIL_INVALID + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -172,8 +172,8 @@ format_validation() { if [ "$return_val" -ne 0 ]; then echo "Error: intreface not exist" - log_event 'debug' "$E_INTERFACE_NOTEXIST" - exit $E_INTERFACE_NOTEXIST + log_event 'debug' "$E_NOTEXIST" + exit $E_NOTEXIST fi } @@ -188,8 +188,8 @@ format_validation() { # Checking result if [[ 0 -ne "$special_chars" ]]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -205,8 +205,8 @@ format_validation() { # Checking result if [[ 0 -ne "$special_chars" ]] || [ -z "$needed_chars" ]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -221,8 +221,8 @@ format_validation() { # Checking result if [[ 0 -ne "$special_chars" ]] || [ 17 -le ${#val} ]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -233,8 +233,8 @@ format_validation() { # Checking result if [ 17 -le ${#val} ]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -260,8 +260,8 @@ format_validation() { if [[ "$known" != 'yes' ]]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -272,8 +272,8 @@ format_validation() { # Checking result if [ 200 -le ${#val} ]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -286,8 +286,8 @@ format_validation() { check_rtype="$(echo "A AAAA NS CNAME" | grep -i -w "$rtype")" if [ ! -z "$check_spaces" ] && [ ! -z "$check_rtype" ]; then echo "Error: $var is out of range" - log_event 'debug' "$E_OUTOFRANGE $V_EVENT" - exit $E_OUTOFRANGE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi # Checking ip @@ -362,48 +362,48 @@ is_system_enabled() { web_function() { if [ -z "$WEB_SYSTEM" ] || [ "$WEB_SYSTEM" = "no" ]; then echo "Error: web hosting support disabled" - log_event 'debug' "$E_WEB_DISABLED $V_EVENT" - exit $E_WEB_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" + exit $E_DISABLED fi } proxy_function() { if [ "$PROXY_SYSTEM" != 'nginx' ]; then # only nginx echo "Error: proxy hosting support disabled" # support for - log_event 'debug' "$E_PROXY_DISABLED $V_EVENT" # now - exit $E_PROXY_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" # now + exit $E_DISABLED fi } dns_function() { if [ -z "$DNS_SYSTEM" ] || [ "$DNS_SYSTEM" = "no" ]; then echo "Error: dns support disabled" - log_event 'debug' "$E_DNS_DISABLED $V_EVENT" - exit $E_DNS_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" + exit $E_DISABLED fi } cron_function() { if [ -z "$CRON_SYSTEM" ] || [ "$CRON_SYSTEM" = "no" ]; then echo "Error: crond support disabled" - log_event 'debug' "$E_CRON_DISABLED $V_EVENT" - exit $E_CRON_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" + exit $E_DISABLED fi } db_function() { if [ -z "$DB_SYSTEM" ] || [ "$DB_SYSTEM" = "no" ]; then echo "Error: db support disabled" - log_event 'debug' "$E_DB_DISABLED $V_EVENT" - exit $E_DB_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" + exit $E_DISABLED fi } backup_function() { if [ -z "$BACKUP_SYSTEM" ] || [ "$BACKUP_SYSTEM" = "no" ]; then echo "Error: backup support disabled" - log_event 'debug' "$E_BACKUP_DISABLED $V_EVENT" - exit $E_BACKUP_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" + exit $E_DISABLED fi } @@ -424,14 +424,14 @@ is_user_valid() { check_user=$(grep -w "$search_user" /etc/passwd ) if [ -z "$check_user" ]; then echo "Error: user not found" - log_event 'debug' "$E_USER_NOTEXIST $V_EVENT" - exit $E_USER_NOTEXIST + log_event 'debug' "$E_NOTEXIST $V_EVENT" + exit $E_NOTEXIST fi if [ ! -d "$V_USERS/$search_user" ]; then echo "Error: unknown user" - log_event 'debug' "$E_USER_UNKNOWN $V_EVENT" - exit $E_USER_UNKNOWN + log_event 'debug' "$E_USER_NOTEXIST $V_EVENT" + exit $E_USER_NOTEXIST fi } @@ -440,8 +440,8 @@ is_user_suspended() { check_suspend=$(grep "SUSPENDED='yes'" $V_USERS/$user/user.conf) if [ ! -z "$check_suspend" ]; then echo "Error: User is suspended" - log_event 'debug' "$E_USER_SUSPENDED $V_EVENT" - exit $E_USER_SUSPENDED + log_event 'debug' "$E_SUSPENDED $V_EVENT" + exit $E_SUSPENDED fi } @@ -457,8 +457,8 @@ is_package_full() { val=$(grep '^WEB_DOMAINS=' $V_USERS/$user/user.conf|cut -f 2 -d \' ) if [ "$domain_number" -ge "$val" ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi } @@ -472,8 +472,8 @@ is_package_full() { val=$(grep 'WEB_ALIASES=' $V_USERS/$user/user.conf | cut -f 2 -d \' ) if [ "$alias_nmb" -ge "$val" ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi } @@ -482,8 +482,8 @@ is_package_full() { val=$(grep '^WEB_SSL=' $V_USERS/$user/user.conf | cut -f 2 -d \' ) if [ "$val" -eq '0' ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi # Checking domains @@ -491,8 +491,8 @@ is_package_full() { # Comparing current val with conf if [ "$domain_nmb" -ge "$val" ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi } @@ -504,8 +504,8 @@ is_package_full() { val=$(grep '^DNS_DOMAINS=' $V_USERS/$user/user.conf | cut -f 2 -d \' ) if [ "$domain_number" -ge "$val" ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi } @@ -517,8 +517,8 @@ is_package_full() { val=$(grep '^DATABASES=' $V_USERS/$user/user.conf | cut -f 2 -d \' ) if [ "$db_number" -ge "$val" ]; then echo "Error: Upgrade package" - log_event 'debug' "$E_PKG_UPGRADE $v_log" - exit $E_PKG_UPGRADE + log_event 'debug' "$E_LIMIT $v_log" + exit $E_LIMIT fi } @@ -536,8 +536,8 @@ is_package_full() { mail_forwarder) mail_forwarder "$user" "$domain";; *) echo "Error: bad type" - log_event 'debug' "$E_BAD_TYPE $V_EVENT" - exit $E_BAD_TYPE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID ;; esac } @@ -555,8 +555,8 @@ is_template_valid() { if [ -z "$check_tpl" ] || [ ! -e $tpl ] || \ [ ! -e $descr ] || [ ! -e $ssl ]; then echo "Error: template not found" - log_event 'debug' "$E_TPL_NOTEXIST" - exit $E_TPL_NOTEXIST + log_event 'debug' "$E_NOTEXIST" + exit $E_NOTEXIST fi } @@ -567,8 +567,8 @@ is_template_valid() { if [ ! -e $tpl ] || [ ! -e $descr ] || [ ! -e $ssl ]; then echo "Error: template not found" - log_event 'debug' "$E_TPL_NOTEXIST" - exit $E_TPL_NOTEXIST + log_event 'debug' "$E_NOTEXIST" + exit $E_NOTEXIST fi } @@ -578,8 +578,8 @@ is_template_valid() { if [ ! -e $tpl ] || [ ! -e $descr ]; then echo "Error: template not found" - log_event 'debug' "$E_TPL_NOTEXIST" - exit $E_TPL_NOTEXIST + log_event 'debug' "$E_NOTEXIST" + exit $E_NOTEXIST fi } @@ -630,8 +630,8 @@ restart_schedule() { is_package_valid() { if [ ! -e "$V_PKG/$package.pkg" ]; then echo "Error: package is not exist" - log_event 'debug' "$E_PKG_NOTEXIST $v_log" - exit $E_PKG_NOTEXIST + log_event 'debug' "$E_NOTEXIST $v_log" + exit $E_NOTEXIST fi } @@ -680,8 +680,8 @@ increase_user_value() { # Checking result if [ -z "$current_value" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Plus one @@ -709,8 +709,8 @@ is_type_valid() { # Checking result if [ -z "$check_type" ]; then echo "Error: unknown type" - log_event 'debug' "$E_BAD_TYPE $V_EVENT" - exit $E_BAD_TYPE + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -728,8 +728,8 @@ decrease_user_value() { # Checking result if [ -z "$current_value" ]; then echo "Error: Parsing error" - log_event 'debug' "$E_PARSE_ERROR $V_EVENT" - exit $E_PARSE_ERROR + log_event 'debug' "$E_PARSING $V_EVENT" + exit $E_PARSING fi # Checking zero val @@ -875,8 +875,8 @@ is_backup_enabled() { BACKUPS=$(grep "BACKUPS='" $V_USERS/$user/user.conf |cut -f 2 -d \') if [ -z "$BACKUPS" ] || [[ "$BACKUPS" -le '0' ]]; then echo "Error: User backups are disabled" - log_event 'debug' "$E_BACKUP_DISABLED $V_EVENT" - exit $E_BACKUP_DISABLED + log_event 'debug' "$E_DISABLED $V_EVENT" + exit $E_DISABLED fi } diff --git a/src/v_check_sys_user_password.c b/src/v_check_sys_user_password.c index 1597b61d..0dcaa7ed 100755 --- a/src/v_check_sys_user_password.c +++ b/src/v_check_sys_user_password.c @@ -28,7 +28,7 @@ int main (int argc, char** argv) { if (3 > argc) { printf("Error: bad args\n",argv[0]); printf("Usage: %s user password [ip]\n",argv[0]); - exit(3); + exit(1); }; // checking ip @@ -47,7 +47,7 @@ int main (int argc, char** argv) { FILE* pFile = fopen ("/usr/local/vesta/log/auth.log","a+"); if (NULL == pFile) { printf("Error: can not open file %s \n", argv[0]); - exit(7); + exit(12); } // parsing user argument @@ -74,12 +74,12 @@ int main (int argc, char** argv) { strcat(str, " failed to login \n"); fputs (str,pFile); // writing fclose (pFile); // closing - exit(24); // exiting + exit(9); // exiting }; } } else { printf("Error: no such user\n",argv[1]); - exit(21); + exit(3); }; return EXIT_SUCCESS; From 4f14d4177901401933422b39abd6dd8d8f0c2fd7 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Sun, 18 Dec 2011 22:46:54 +0200 Subject: [PATCH 15/16] recompiled with new return code convention --- bin/v_check_sys_user_password | Bin 7413 -> 7413 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/bin/v_check_sys_user_password b/bin/v_check_sys_user_password index 7cfdd040371588a1d32ecdaa799d25032f1a7189..9cc67a69838a14e5ac79a9e14d0a296c3a795c1d 100755 GIT binary patch delta 33 pcmexr`PFiR7ds>4WN-Foj69o-IMy>Va!!84X~xLBS(59H5CFqg3R?gG delta 33 pcmexr`PFiR7ds>KWN-FojO?3@IMy>VN=$ylX~rnJS(59H5CFtU3V8qk From 7bf46685a07f67b7bbc6ff491f7e806d193da37f Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Mon, 19 Dec 2011 10:20:58 +0200 Subject: [PATCH 16/16] improved logging function --- func/shared.func | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/func/shared.func b/func/shared.func index f25e5f93..168fadc5 100644 --- a/func/shared.func +++ b/func/shared.func @@ -6,9 +6,8 @@ log_event() { # Checking logging system if [ "$LOG_SYSTEM" = 'yes' ]; then - # Checking logging level - log=$(echo "$LOG_LEVEL" | cut -f 2 -d \' | grep -w "$level" ) - if [ ! -z "$log" ]; then + log=$(echo "$LOG_LEVEL" | grep -w "$level" ) + if [ -n "$log" ]; then echo "$event" >> $V_LOG/$level.log fi fi @@ -27,7 +26,6 @@ log_history() { # Argument list checker check_args() { - sys_args="$1" user_args="$2" usage="$3" @@ -368,9 +366,9 @@ is_system_enabled() { } proxy_function() { - if [ "$PROXY_SYSTEM" != 'nginx' ]; then # only nginx - echo "Error: proxy hosting support disabled" # support for - log_event 'debug' "$E_DISABLED $V_EVENT" # now + if [ "$PROXY_SYSTEM" != 'nginx' ]; then + echo "Error: proxy hosting support disabled" + log_event 'debug' "$E_DISABLED $V_EVENT" exit $E_DISABLED fi }