diff --git a/bin/v_add_sys_ip b/bin/v_add_sys_ip index 0e1d1d625..d846a61ce 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_add_sys_user b/bin/v_add_sys_user index 9da65420d..b92ab8c59 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_EXISTS $V_EVENT" + exit $E_EXISTS + fi +} + #----------------------------------------------------------# # Verifications # diff --git a/bin/v_add_sys_user_reports b/bin/v_add_sys_user_reports index 0d4f25e92..105989e52 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 1f6b44f0a..713ea7153 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_backup_sys_user b/bin/v_backup_sys_user index ad17abba7..495024c7a 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_owner b/bin/v_change_sys_ip_owner index 4ab3b37d2..d3761a0bf 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 diff --git a/bin/v_change_sys_ip_status b/bin/v_change_sys_ip_status index 220768a8e..21795dd0f 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 79b538168..1b0c7f717 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_LIMIT $v_log" + exit $E_LIMIT + 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 187d97db0..d7ee2cea4 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_check_sys_user_password b/bin/v_check_sys_user_password index 7cfdd0403..9cc67a698 100755 Binary files a/bin/v_check_sys_user_password and b/bin/v_check_sys_user_password differ diff --git a/bin/v_del_sys_ip b/bin/v_del_sys_ip index 856b953ac..419a8970f 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 diff --git a/bin/v_del_sys_user_ips b/bin/v_del_sys_user_ips new file mode 100755 index 000000000..a70fab422 --- /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 diff --git a/bin/v_del_sys_user_reports b/bin/v_del_sys_user_reports index 01bbf3957..647d99d6c 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/bin/v_del_web_domain_alias b/bin/v_del_web_domain_alias index 6766d8f04..a8ddaa592 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_list_db_base b/bin/v_list_db_base index 9102ea464..79e15a626 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 f1e50fb6c..9e8aee1e4 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 a087b1960..94293bece 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 4bb18ff09..2cec9c652 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 486e01d4d..525fc1979 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 610460ab9..6cfa1bc63 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 b73b4e85a..f98831d23 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 583bcdc11..18917afa5 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 891aae0a5..c4428effc 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 2d70af149..2941a3839 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 3a75f448d..5b4978087 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 e749a27ea..44d63a492 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/bin/v_suspend_sys_user b/bin/v_suspend_sys_user new file mode 100755 index 000000000..66264979f --- /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" '$SUSPENDED' '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 000000000..c4fd86cda --- /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" '$SUSPENDED' 'no' + +# Logging +log_event 'system' "$V_EVENT" + +exit diff --git a/bin/v_upd_sys_rrd b/bin/v_upd_sys_rrd index fd9d45886..73b2e8271 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 d6873ca94..5f4d612e4 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 ;; +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" \ @@ -81,7 +89,7 @@ rrdtool graph $V_RRD/ftp/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 a8a5714e3..4c2a2ba5a 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 ;; +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" \ @@ -89,7 +94,7 @@ rrdtool graph $V_RRD/web/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 be19ddd21..ea4f29c55 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 ;; +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" \ @@ -87,7 +94,7 @@ rrdtool graph $V_RRD/la/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 12356b910..d929aaf27 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 ;; +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" \ @@ -87,7 +94,7 @@ rrdtool graph $V_RRD/mem/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 144410789..d8b0fa884 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 ;; +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 @@ -70,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 @@ -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" \ @@ -120,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 7ca46a300..8831976c0 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 ;; +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" \ @@ -93,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 1833a5e0f..c45b0c764 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 ;; +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" \ @@ -79,7 +86,7 @@ rrdtool graph $V_RRD/web/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 abab6e379..78099190d 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 ;; +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 @@ -72,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 @@ -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" \ @@ -126,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 6c61ba944..96494558a 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 ;; +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" \ @@ -80,7 +87,7 @@ rrdtool graph $V_RRD/ssh/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 0d70fe1dd..6b2da7b93 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 1cb0e7fc0..32a1529e4 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 fe7c2c362..80ac30ffc 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 b8c606297..9050b6801 100644 --- a/conf/vars.conf +++ b/conf/vars.conf @@ -1,145 +1,54 @@ -############################################################# -# # -# This file contains vesta global variable defenitions # -# # -############################################################# - # 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="$VESTA/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_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_GZIP=5 +V_BACKUP_DISK_LIMIT=95 +V_BACKUP_LA_LIMIT=5 +V_SUSPEND_URL=vestacp.com/error/suspend/ 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 -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=33 -E_IP_OWNED=34 -E_IP_NOTOWNED=35 -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_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_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_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/data/templates/skel/document_errors/403.html b/data/templates/skel/document_errors/403.html index 68bd5f2f0..8547c1069 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 6fc5eccce..91d8331fe 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 1fee51579..b5ae9a503 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 f757746f7..1a191891a 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 f757746f7..1a191891a 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
+ diff --git a/func/cron.func b/func/cron.func index 6c4fc230e..e3626381b 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 bef3ccc4f..08a073837 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 afd3209a0..a696d4b90 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 b4ba4d741..811b415c9 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 e42a75c4f..168fadc5a 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 @@ -25,20 +24,8 @@ 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() { - sys_args="$1" user_args="$2" usage="$3" @@ -46,8 +33,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 } @@ -62,9 +49,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 } @@ -76,8 +63,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 } @@ -88,8 +75,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 } @@ -99,27 +86,27 @@ 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" - 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 } @@ -136,8 +123,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 } @@ -150,8 +137,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 } @@ -168,8 +155,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 } @@ -183,8 +170,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 } @@ -194,13 +181,13 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:| |,|<|>|?|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:| |,|<|>|?|/|\|\"|'|;|%| ]" ) # 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 } @@ -210,14 +197,14 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|<|>|?|_|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|<|>|?|_|/|\|\"|'|;|%| ]" ) needed_chars=$(echo "$val" | cut -s -f 2 -d '.') # 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 } @@ -227,13 +214,13 @@ format_validation() { # Defining exlude mask special_chars=$(echo "$val" | \ - grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|.|<|>|?|/|\|\"|'|;|%]" ) + grep -c "[!|@|#|$|^|&|*|(|)|+|=|{|}|:|,|.|<|>|?|/|\|\"|'|;|%| ]" ) # 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 } @@ -244,8 +231,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 } @@ -271,8 +258,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 } @@ -283,8 +270,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 } @@ -297,8 +284,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 @@ -373,48 +360,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 + if [ "$PROXY_SYSTEM" != 'nginx' ]; then + echo "Error: proxy hosting support disabled" + log_event 'debug' "$E_DISABLED $V_EVENT" + 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 } @@ -432,17 +419,17 @@ 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" - 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 } @@ -451,8 +438,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 } @@ -468,8 +455,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 } @@ -483,8 +470,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 } @@ -493,8 +480,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 @@ -502,8 +489,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 } @@ -515,8 +502,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 } @@ -528,8 +515,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 } @@ -547,50 +534,12 @@ 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 } -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" @@ -604,8 +553,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 } @@ -616,8 +565,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 } @@ -627,8 +576,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 } @@ -676,45 +625,11 @@ 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" - log_event 'debug' "$E_PKG_NOTEXIST $v_log" - exit $E_PKG_NOTEXIST - 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 + log_event 'debug' "$E_NOTEXIST $v_log" + exit $E_NOTEXIST fi } @@ -763,8 +678,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 @@ -792,78 +707,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 - 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 + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID fi } @@ -881,8 +726,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 @@ -907,9 +752,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 +803,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" @@ -1028,29 +869,12 @@ 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 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 1597b61d8..0dcaa7ede 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;