Архив рубрики: Vesta

Скрипт проверки свободного места с оповещением по e-mail

Скрипт проверяет остаток места по указанному лимиту и отсылает на почту предупреждение

1
2
3
4
5
6
7
8
9
10
#выводим остаток места тома
space=`df -h | grep /dev/vda | awk ' {print $4} ' | sed 's/G//'`
#лимит в Gb
limit=1
#проверяем остаток к лимиту
if (( $(bc <<< "$space <= $limit") == 1 ))
#шлем e-mail если меньше
then
echo "Warning! Disk Space is full. Avalible space $space Gb" | mail -s "Disk notification" you@email.ru
fi
#выводим остаток места тома
space=`df -h | grep /dev/vda | awk ' {print $4} ' | sed 's/G//'`
#лимит в Gb
limit=1
#проверяем остаток к лимиту
if (( $(bc <<< "$space <= $limit") == 1 ))
#шлем e-mail если меньше
then
echo "Warning! Disk Space is full. Avalible space $space Gb" | mail -s "Disk notification" you@email.ru
fi

Запускаем в cron по необходимости. /dev/vda и you@email.ru меняем на свои.

Квоты на CentOS и Vesta

Для включения квот

1
 sudo /usr/local/vesta/bin/v-add-sys-quota
 sudo /usr/local/vesta/bin/v-add-sys-quota

Для автоматического обновления квот скрипт для запуска в cron:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/bin/bash
# info: update user statistics
# options: USER
#
# Function logs user parameters into statistics database.
 
 
#----------------------------------------------------------#
#                    Variable&Function                     #
#----------------------------------------------------------#
 
# Argument defenition
user=$1
 
# Importing system enviroment  as we run this script
#       mostly by cron wich not read it by itself
source /etc/profile
 
# Includes
source $VESTA/func/main.sh
source $VESTA/func/domain.sh
source $VESTA/conf/vesta.conf
 
 
#----------------------------------------------------------#
#                       Action                             #
#----------------------------------------------------------#
 
# Creating user_list
if [ -z "$user" ]; then
    user_list=$(ls $VESTA/data/users)
else
    user_list="$user"
fi
 
# Updating sys quotas
for user in $user_list; do
    QUOTA_UPDATE=$VESTA/bin/v-update-user-quota
    sudo ${QUOTA_UPDATE} $user
done
 
exit
#!/bin/bash
# info: update user statistics
# options: USER
#
# Function logs user parameters into statistics database.


#----------------------------------------------------------#
#                    Variable&Function                     #
#----------------------------------------------------------#

# Argument defenition
user=$1

# Importing system enviroment  as we run this script
#       mostly by cron wich not read it by itself
source /etc/profile

# Includes
source $VESTA/func/main.sh
source $VESTA/func/domain.sh
source $VESTA/conf/vesta.conf


#----------------------------------------------------------#
#                       Action                             #
#----------------------------------------------------------#

# Creating user_list
if [ -z "$user" ]; then
    user_list=$(ls $VESTA/data/users)
else
    user_list="$user"
fi

# Updating sys quotas
for user in $user_list; do
    QUOTA_UPDATE=$VESTA/bin/v-update-user-quota
    sudo ${QUOTA_UPDATE} $user
done

exit

Centos монтирование webdav на примере 4shared

Сначала надо установить пакет libproxy:

для x64

1
 yum install libproxy.x86_64
 yum install libproxy.x86_64

для i686

1
 yum install libproxy.i686
 yum install libproxy.i686

Далее скачаем rpm davfs2 и связанные пакеты:

для  x64:

1
2
3
wget http://pkgs.repoforge.org/davfs2/davfs2-1.4.6-1.el6.rf.x86_64.rpm
wget ftp://dropbox.cloudlinux.com/pub/psbm/6.4/os/x86_64/RPMS/neon-0.29.3-2.el6.x86_64.rpm
wget http://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/6.2/x86_64/os/Packages/pakchois-0.4-3.2.el6.x86_64.rpm
wget http://pkgs.repoforge.org/davfs2/davfs2-1.4.6-1.el6.rf.x86_64.rpm
wget ftp://dropbox.cloudlinux.com/pub/psbm/6.4/os/x86_64/RPMS/neon-0.29.3-2.el6.x86_64.rpm
wget http://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/6.2/x86_64/os/Packages/pakchois-0.4-3.2.el6.x86_64.rpm

для i686

1
2
3
wget http://pkgs.repoforge.org/davfs2/davfs2-1.4.6-1.el6.rf.i686.rpm
wget ftp.scientificlinux.org/linux/scientific/6.4/x86_64/os/Packages/neon-0.29.3-2.el6.i686.rpm
wget http://mirror.centos.org/centos/6/os/i386/Packages/pakchois-0.4-3.2.el6.i686.rpm
wget http://pkgs.repoforge.org/davfs2/davfs2-1.4.6-1.el6.rf.i686.rpm
wget ftp.scientificlinux.org/linux/scientific/6.4/x86_64/os/Packages/neon-0.29.3-2.el6.i686.rpm
wget http://mirror.centos.org/centos/6/os/i386/Packages/pakchois-0.4-3.2.el6.i686.rpm

Install:

для x64

1
 rpm -i davfs2-1.4.6-1.el6.rf.x86_64.rpm neon-0.29.3-2.el6.x86_64.rpm pakchois-0.4-3.2.el6.x86_64.rpm
 rpm -i davfs2-1.4.6-1.el6.rf.x86_64.rpm neon-0.29.3-2.el6.x86_64.rpm pakchois-0.4-3.2.el6.x86_64.rpm

для i686

1
rpm -i davfs2-1.4.6-1.el6.rf.i686.rpm neon-0.29.3-2.el6.i686.rpm pakchois-0.4-3.2.el6.i686.rpmwget http://pkgs.repoforge.org/davfs2/davfs2-1.4.6-1.el6.rf.i686.rpm
rpm -i davfs2-1.4.6-1.el6.rf.i686.rpm neon-0.29.3-2.el6.i686.rpm pakchois-0.4-3.2.el6.i686.rpmwget http://pkgs.repoforge.org/davfs2/davfs2-1.4.6-1.el6.rf.i686.rpm

Создаем точку монтирования:

1
mkdir /mnt/4shared
mkdir /mnt/4shared

Монтируем диск

1
2
3
4
5
6
7
mount -t davfs https://webdav.4shared.com /mnt/4shared/
Please enter the username to authenticate with server
https://webdav.4shared.com  or hit enter for none.
Username: username@mail.com
Please enter the password to authenticate user username  with server
https://webdav.4shared.com  or hit enter for none.
Password:
mount -t davfs https://webdav.4shared.com /mnt/4shared/
Please enter the username to authenticate with server
https://webdav.4shared.com  or hit enter for none.
Username: username@mail.com
Please enter the password to authenticate user username  with server
https://webdav.4shared.com  or hit enter for none.
Password:

!при этом в качестве логина используем адрес почты при регистрации, а не просто логин!

Сохраняем пароль

чтобы не набирать его каждый раз, в файле 

1
vi /etc/davfs2/secrets
vi /etc/davfs2/secrets

просываем пароль в виде «точка монтирования пользователь пароль» 

1
/mnt/4shared username pass
/mnt/4shared username pass

 

Error: Problem communicating with Copy cloud.

За лето товарищи поменяли агент, и начала выскакивать ошибка, при попытки залить на облако что либо.

Удаляем старый клиент

1
2
cd /tmp
rm Copy.tgz
cd /tmp
rm Copy.tgz

Скачиваем свежий и распаковываем

1
2
 wget https://copy.com/install/linux/Copy.tgz
tar -xvf Copy.tgz
 wget https://copy.com/install/linux/Copy.tgz
tar -xvf Copy.tgz

Изменение порта ssh CentOS

1
vi /etc/ssh/sshd_config
vi /etc/ssh/sshd_config

Найти строку Port 22, если закоментирована, убрать комент и поменять на нужный порт

Не забыть поменять порт в фаерволе

Перезапускаем ssh

1
/etc/init.d/sshd restart
/etc/init.d/sshd restart

Проверка

1
netstat -anp | grep ssh
netstat -anp | grep ssh

Установка hddtemp Centos 6

1
2
3
4
5
cd /tmp
wget http://epel.mirror.net.in/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh epel-release-6-8.noarch.rpm
yum update
yum install hddtemp
cd /tmp
wget http://epel.mirror.net.in/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh epel-release-6-8.noarch.rpm
yum update
yum install hddtemp

Backup на облако copy.com

Облако copy.com дает бесплатные 15gb, плюс еще пять по рефайл ссылке.

Скачиваем клиент

1
2
cd /tmp
wget https://copy.com/install/linux/Copy.tgz
cd /tmp
wget https://copy.com/install/linux/Copy.tgz

распаковываем

1
tar -xvf Copy.tgz
tar -xvf Copy.tgz

теперь клиет у нас лежит

1
2
/tmp/copy/x86 #для x86
/tmp/copy/x86_64 #для x64
/tmp/copy/x86 #для x86
/tmp/copy/x86_64 #для x64

Заливаем файл

1
/tmp/copy/x86/CopyCmd Cloud -password=пароль -username=Имя пользователя put /локальный путь /путь на облаке
/tmp/copy/x86/CopyCmd Cloud -password=пароль -username=Имя пользователя put /локальный путь /путь на облаке

Удаляем файл

1
/tmp/copy/x86/CopyCmd Cloud -password=пароль -username=Имя пользователя rm /путь
/tmp/copy/x86/CopyCmd Cloud -password=пароль -username=Имя пользователя rm /путь

Для более подробного использования

1
/tmp/copy/x86/CopyCmd -help
/tmp/copy/x86/CopyCmd -help

 

 

fail2ban centos установка Vesta

Установка

1
yum install fail2ban
yum install fail2ban

Настройки:

1
/etc/fail2ban/jail.conf
/etc/fail2ban/jail.conf
1
2
3
bantime  = 21600 #время бана в секундах
ignoreip = 127.0.0.0 #разрешенные адреса через пробел
maxretry = 3 #максимальное число попыток авторизации
bantime  = 21600 #время бана в секундах
ignoreip = 127.0.0.0 #разрешенные адреса через пробел
maxretry = 3 #максимальное число попыток авторизации

По умолчанию включено правило только для ssh, дальше можно включить нужные правиля параметром

1
enabled = true
enabled = true

Запускаем демона

1
service fail2ban start
service fail2ban start

Добавляем в автозагрузку

1
chkconfig fail2ban on
chkconfig fail2ban on

Vesta faq пути

Шаблоны страниц по умолчанию vesta

1
/usr/local/vesta/data/templates/web/skel/public_html/index.html
/usr/local/vesta/data/templates/web/skel/public_html/index.html

SSL сертификаты панели

1
2
/usr/local/vesta/ssl/certificate.crt
/usr/local/vesta/ssl/certificate.key
/usr/local/vesta/ssl/certificate.crt
/usr/local/vesta/ssl/certificate.key

Exim статистика

1
eximstats /var/log/exim/main.log 
eximstats /var/log/exim/main.log 

Vesta пакеты

1
/usr/local/vesta/data/packages
/usr/local/vesta/data/packages

Vesta php 5.3

Для того чтобы установить php 5.3, нужно для начала удалить существующий

1
2
3
4
5
6
7
8
9
10
service httpd stop
yum -y remove php*
yum -y install php php-bcmath php-cli php-common php-gd php-imap php-mbstring php-mcrypt php-mysql php-pdo php-soap php-tidy php-xml php-xmlrpc php-pecl-apc phpMyAdmin roundcubemail
mv -f /etc/php.ini.rpmsave /etc/php.ini
mv -f /etc/roundcubemail/db.inc.php.rpmsave /etc/roundcubemail/db.inc.php
mv -f /etc/roundcubemail/main.inc.php.rpmsave /etc/roundcubemail/main.inc.php
mv -f /etc/phpMyAdmin/config.inc.php.rpmsave /etc/phpMyAdmin/config.inc.php
mv -f /etc/httpd/conf.d/roundcubemail.conf.rpmsave /etc/httpd/conf.d/roundcubemail.conf
mv -f /etc/httpd/conf.d/phpMyAdmin.conf.rpmsave /etc/httpd/conf.d/phpMyAdmin.conf
service httpd start
service httpd stop
yum -y remove php*
yum -y install php php-bcmath php-cli php-common php-gd php-imap php-mbstring php-mcrypt php-mysql php-pdo php-soap php-tidy php-xml php-xmlrpc php-pecl-apc phpMyAdmin roundcubemail
mv -f /etc/php.ini.rpmsave /etc/php.ini
mv -f /etc/roundcubemail/db.inc.php.rpmsave /etc/roundcubemail/db.inc.php
mv -f /etc/roundcubemail/main.inc.php.rpmsave /etc/roundcubemail/main.inc.php
mv -f /etc/phpMyAdmin/config.inc.php.rpmsave /etc/phpMyAdmin/config.inc.php
mv -f /etc/httpd/conf.d/roundcubemail.conf.rpmsave /etc/httpd/conf.d/roundcubemail.conf
mv -f /etc/httpd/conf.d/phpMyAdmin.conf.rpmsave /etc/httpd/conf.d/phpMyAdmin.conf
service httpd start