Установка дополнительных компонентов в Vestacp

В этой теме я расскажу как можно установить дополнительные компоненты в VestaCP, так же предоставлю готовые примеры.
Для начала нужно установить эту панель! Читаем как это сделать: Установка VestaCP на CentOS

Описание шаблонов которые используются в VestaCP.

Apache
default – без дополнительных настроек , хорошо работает для большинства сайтов.

<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>

    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    Include %home%/%user%/conf/web/%web_system%.%domain%.conf*

</VirtualHost>

basedir – борется против phpshells с помощью openbasedir директивы.

<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        php_admin_value open_basedir %docroot%
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>

    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    Include %home%/%user%/conf/web/%web_system%.%domain%.conf*

</VirtualHost>

hosting – отдельные PHP лимиты для каждого домена ( php_admin_value memory/safemode/etc).

<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        php_admin_value upload_tmp_dir %home%/%user%/tmp
        php_admin_value upload_max_filesize 10M
        php_admin_value max_execution_time 20
        php_admin_value post_max_size  8M
        php_admin_value memory_limit 32M
        php_admin_flag mysql.allow_persistent  off
        php_admin_flag safe_mode off
        php_admin_value session.save_path %home%/%user%/tmp
        php_admin_value sendmail_path '/usr/sbin/sendmail -t -i -f %email%'
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    php_admin_value open_basedir %home%/%user%/web:%home%/%user%/tmp:/bin:/usr/bin:/usr/local/bin:/var/www/html:/tmp:/usr/share:/etc/phpMyAdmin:/etc/phpmyadmin:/etc/roundcubemail:/etc/roundcube:/var/lib/roundcube
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    Include %home%/%user%/conf/web/%web_system%.%domain%.conf*

</VirtualHost>

phpcgi – шаблон запустить PHP как CGI. может быть полезно для запуска php4 или PHP5.2.

<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    SuexecUserGroup %user% %group%
    CustomLog /var/log/httpd/domains/%domain%.bytes bytes
    CustomLog /var/log/httpd/domains/%domain%.log combined
    ErrorLog /var/log/httpd/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        Action phpcgi-script /cgi-bin/php
        <Files *.php>
            SetHandler phpcgi-script
        </Files>
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    Include %home%/%user%/conf/web/httpd.%domain%.conf*

</VirtualHost>

phpfcgid – в PHP как FCGI ( автоматически устанавливается на сервере с > 1 Гб оперативной памяти ).

<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    SuexecUserGroup %user% %group%
    CustomLog /var/log/httpd/domains/%domain%.bytes bytes
    CustomLog /var/log/httpd/domains/%domain%.log combined
    ErrorLog /var/log/httpd/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        <Files *.php>
          SetHandler fcgid-script
        </Files>
        FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    Include %home%/%user%/conf/web/httpd.%domain%.conf*

</VirtualHost>

wsgi – шаблон для запуска проектов на питоне ( можно установить вручную ).

<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>

    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>
    <IfModule mod_wsgi.c>
        WSGIDaemonProcess apx-idea user=%user% group=%user% processes=1 threads=5 display-name=%{GROUP} python-path=%home%/%user%/web/%domain%/private/django/%domain%/env/lib/python2.6/site-packages
        WSGIProcessGroup apx-idea
        WSGIApplicationGroup %{GLOBAL}
    </IfModule>

    <Directory %docroot%>
        AllowOverride FileInfo
        Options ExecCGI Indexes
        MultiviewsMatch Handlers
        Options +FollowSymLinks
        Order allow,deny
        Allow from all
    </Directory>

    Include %home%/%user%/conf/web/%web_system%.%domain%.conf*

</VirtualHost>

Apache шаблон на самом деле состоит из трех файлов . Файл с расширением TPL используется для построения обычный виртуальный хост . Файл с расширением STPL используется для построения SSL виртуальный хост . Файл с расширением sh не является обязательным. Он может быть использован в качестве триггера для запуска дополнительных команд оболочки по созданию домена. Более подробную информацию см. шаблон phpfcgid.sh.

#!/bin/bash
# Adding php wrapper
user="$1"
domain="$2"
ip="$3"
home_dir="$4"
docroot="$5"

wrapper_script="#!/bin/sh
PHPRC=/usr/local/lib
export PHPRC
export PHP_FCGI_MAX_REQUESTS=1000
export PHP_FCGI_CHILDREN=20
exec  /usr/bin/php-cgi
"
wrapper_file="$home_dir/$user/web/$domain/cgi-bin/fcgi-starter"

echo "$wrapper_script" > $wrapper_file
chown $user:$user $wrapper_file
chmod -f 751 $wrapper_file

exit 0

Nginx
default  – служит для статического контента, хорошо работает для большинства сайтов.

server {
    listen      %ip%:%proxy_port%;
    server_name %domain_idn% %alias_idn%;
    error_log  /var/log/httpd/domains/%domain%.error.log error;

    location / {
        proxy_pass      http://%ip%:%web_port%;
        location ~* ^.+\.(%proxy_extentions%)$ {
            root           %docroot%;
            access_log     /var/log/httpd/domains/%domain%.log combined;
            access_log     /var/log/httpd/domains/%domain%.bytes bytes;
            expires        max;
            try_files      $uri @fallback;
        }
    }

    location /error/ {
        alias   %home%/%user%/web/%domain%/document_errors/;
    }

    location @fallback {
        proxy_pass      http://%ip%:%web_port%;
    }

    location ~ /\.ht    {return 404;}
    location ~ /\.svn/  {return 404;}
    location ~ /\.git/  {return 404;}
    location ~ /\.hg/   {return 404;}
    location ~ /\.bzr/  {return 404;}

    include %home%/%user%/conf/web/nginx.%domain%.conf*;
}

hosting – disable_symlinks директива для защиты от атак символических ссылок.

server {
    listen      %ip%:%proxy_port%;
    server_name %domain_idn% %alias_idn%;
    error_log  /var/log/httpd/domains/%domain%.error.log error;

    location / {
        proxy_pass      http://%ip%:%web_port%;
        location ~* ^.+\.(%proxy_extentions%)$ {
            root           %docroot%;
            access_log     /var/log/httpd/domains/%domain%.log combined;
            access_log     /var/log/httpd/domains/%domain%.bytes bytes;
            expires        max;
            try_files      $uri @fallback;
        }
    }

    location /error/ {
        alias   %home%/%user%/web/%domain%/document_errors/;
    }

    location @fallback {
        proxy_pass      http://%ip%:%web_port%;
    }

    location ~ /\.ht    {return 404;}
    location ~ /\.svn/  {return 404;}
    location ~ /\.git/  {return 404;}
    location ~ /\.hg/   {return 404;}
    location ~ /\.bzr/  {return 404;}

    disable_symlinks if_not_owner from=%docroot%;

    include %home%/%user%/conf/web/nginx.%domain%.conf*;
}

сaching – динамические страницы кэшируются в течение 15 мин для обработки спонтанное движение
aka reddit-effect.

server {
    listen      %ip%:%proxy_port%;
    server_name %domain_idn% %alias_idn%;
    error_log  /var/log/%web_system%/domains/%domain%.error.log error;

    location / {
        proxy_pass      http://%ip%:%web_port%;

        proxy_cache cache;
        proxy_cache_valid 15m;
        proxy_cache_valid 404 1m;
        proxy_no_cache $no_cache;
        proxy_cache_bypass $no_cache;
        proxy_cache_bypass $cookie_session $http_x_update;

        location ~* ^.+\.(%proxy_extentions%)$ {
            proxy_cache    off;
            root           %docroot%;
            access_log     /var/log/%web_system%/domains/%domain%.log combined;
            access_log     /var/log/%web_system%/domains/%domain%.bytes bytes;
            expires        max;
            try_files      $uri @fallback;
        }
    }

    location /error/ {
        alias   %home%/%user%/web/%domain%/document_errors/;
    }

    location @fallback {
        proxy_pass      http://%ip%:%web_port%;
    }

    location ~ /\.ht    {return 404;}
    location ~ /\.svn/  {return 404;}
    location ~ /\.git/  {return 404;}
    location ~ /\.hg/   {return 404;}
    location ~ /\.bzr/  {return 404;}

    include %home%/%user%/conf/web/nginx.%domain%.conf*;
}

force-https – принудительное использование HTTPS / SSL (можно установить вручную).

server {
    listen      %ip%:%proxy_port%;
    server_name %domain_idn% %alias_idn%;
    location / {
        rewrite ^(.*) https://%domain_idn%$1 permanent;
    }
}

 

DNS
default  – записи DNS.

ID='1' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns1%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='2' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns2%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='3' RECORD='@' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='4' RECORD='mail' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='5' RECORD='www' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='6' RECORD='pop' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='7' RECORD='ftp' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='8' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='mail.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='9' RECORD='@' TYPE='TXT' PRIORITY='' VALUE='"v=spf1 a mx ip4:%ip% ?all"' SUSPENDED='no' TIME='%time%' DATE='%date%'

gmail – предопределение записей в почтовый хост на гугл App.

ID='1' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns1%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='2' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns2%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='3' RECORD='@' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='4' RECORD='ftp' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='5' RECORD='localhost' TYPE='A' PRIORITY='' VALUE='127.0.0.1' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='6' RECORD='mail' TYPE='CNAME' PRIORITY='' VALUE='ghs.google.com.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='7' RECORD='pop' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='8' RECORD='www' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='9' RECORD='@' TYPE='MX' PRIORITY='1' VALUE='ASPMX.L.GOOGLE.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='10' RECORD='@' TYPE='MX' PRIORITY='5' VALUE='ALT1.ASPMX.L.GOOGLE.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='11' RECORD='@' TYPE='MX' PRIORITY='5' VALUE='ALT2.ASPMX.L.GOOGLE.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='12' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='ASPMX2.GOOGLEMAIL.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='13' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='ASPMX3.GOOGLEMAIL.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='14' RECORD='@' TYPE='TXT' PRIORITY='' VALUE='"v=spf1 a mx ip4:%ip% ?all"' SUSPENDED='no' TIME='%time%' DATE='%date%'

child-ns – шаблон для нативных серверов имен.

ID='1' RECORD='@' TYPE='NS' PRIORITY='' VALUE='ns1.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='2' RECORD='@' TYPE='NS' PRIORITY='' VALUE='ns2.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='3' RECORD='@' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='4' RECORD='ns1' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='5' RECORD='ns2' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='6' RECORD='mail' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='7' RECORD='www' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='8' RECORD='pop' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='9' RECORD='ftp' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='10' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='mail.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%'
ID='11' RECORD='@' TYPE='TXT' PRIORITY='' VALUE='"v=spf1 a mx ip4:%ip% ?all"' SUSPENDED='no' TIME='%time%' DATE='%date%'

 

Шаблоны могут быть найдены в папке /usr/local/vesta/data/templates/. Не стесняйтесь изменять или копировать их для создания новых пользовательских шаблонов . После изменения существующего шаблона вам нужно восстановить пользовательскую конфигурацию. Это может быть сделано с помощью команды v-rebuild- пользователя или на веб-интерфейсе (выпадающего списка на странице «Пользователь»).

Config и log на RHEL/CentOS

Config и log на RHEL и CentOS

В Debian и Ubuntu сама конфигурация и log не будут отличаться, только сами пути.

Как установить ClamAV и SpamAssassin на RHEL или CentOS

* Это пособие создано для серверов с менее 3 Гб оперативной памяти. На «больших» серверах установка является полностью автоматической.

Установка ClamAV

# yum install clamd
# wget http://c.vestacp.com/0.9.8/rhel/clamd.conf -O /etc/clamd.conf
# wget http://c.vestacp.com/0.9.8/rhel/freshclam.conf -O /etc/freshclam.conf
# gpasswd -a clam exim
# gpasswd -a clam mail
# freshclam
# chkconfig clamd on
# service clamd start

Установка SpamAssassin

# yum install spamassassin
# chkconfig spamassassin on
# service spamassassin start

Конфигурация Exim

# sed -i "s/^#SPAMASSASSIN/SPAMASSASSIN/g" /etc/exim/exim.conf
# sed -i "s/^#CLAMD/CLAMD/g" /etc/exim/exim.conf
# service exim restart

Конфигурация Vesta

# sed -i "s/ANTIVIRUS.*/ANTIVIRUS_SYSTEM='clamav'/" /usr/local/vesta/conf/vesta.conf
# sed -i "s/ANTISPAM.*/ANTISPAM_SYSTEM='spamassassin'/" /usr/local/vesta/conf/vesta.conf

 

Как установить модуль Whmcs?

1. Найдите каталог установки Whmcs на вашем сервере.
2. Создать каталог Веста в подкаталоге modules/server.
3. Скачать модуль PHP.

Приведу пример:

# cd /home/captain/web/billing-site.ltd/public_html/modules/server
# mkdir vesta
# wget http://c.vestacp.com/0.9.8/rhel/whmcs-module.php -O vesta.php

Плагин WHMCS позволяет управлять серверами с Панель управления Веста. Вы можете автоматически создать, удалить или приостановить учетные записи пользователей. Пользователи имеют возможность менять пароли и управлять своими веб сервером / почтой / DNS доменами.

Как настроить резервное копирование FTP?

Введите логин и пароль на сервере от root-a и запустить следующую команду:

# v-add-backup-ftp-host your_remote_host.ftp-host.ltd backup-user your_passw0rd

Аргументы команды (конечно) должны быть заменены соответствующими учетные данные для входа

Как включить поддержку WSGI на RHEL или CentOS?

1. Установите модуль апача на WSGI

# yum install mod_wsgi

2. Скачать шаблон WSGI

# cd /usr/local/vesta/data/templates/web
# wget http://c.vestacp.com/0.9.8/rhel/wsgi/httpd.tar.gz
# tar -xzvf httpd.tar.gz
# rm -f httpd.tar.gz

3. Создать новый пакет или установить WSGI как шаблон апача в существующий пакет.
4. Добавить нового пользователя и посунуть ему пакет с шаблоном WSGI.
5. Добавить новый домен и проверить результат.

Как перевести интерфейс Vesta?

Локализационные файлы могут быть найдены в папке  /usr/local/vesta/web/inc/i18n/. Вы можете использовать файл en.php в качестве шаблона для создания нового файла. Просто измените $LANG[‘en’]  на $LANG[‘your’]  и у вас все настроено.

На других языках некоторые вещи делать слишком долго. Вы можете положиться на контекст, чтобы сократить/ сократить длинные фразы. Вместо явного перевести “Добавить учетную запись электронной почты”, используемый “Добавить учетную запись”. Удачи!

Как включить поддержку PHP-FCGI на RHEL или CentOS?

* Этот учебник создан для серверов с менее 1 Гб оперативной памяти avaialbe. На серверах «средних» установка является полностью автоматической.

1. Установите fcgid модуль апача:

# yum install mod_fcgid

2. Скачать fcgid шаблон

# cd /usr/local/vesta/data/templates/web
# wget http://c.vestacp.com/0.9.8/rhel/fcgid/httpd.tar.gz
# tar -xzvf httpd.tar.gz
# rm -f httpd.tar.gz

3. Создать новый пакет или набрать phpfcgid как шаблон апача в существующий пакет.
4. Добавить нового пользователя и указать ему пакет с phpfcgid шаблона.
5. Добавить новый домен и проверить результат.

Как заставить HTTPS / SSL на домене?

1. Установите пользовательский шаблон Nginx

# cd /usr/local/vesta/data/templates/web
# wget http://c.vestacp.com/0.9.8/rhel/force-https/nginx.tar.gz
# tar -xzvf nginx.tar.gz
# rm -f nginx.tar.gz

3. Создать новый пакет или установить force-https в качестве матрицы Nginx в существующий пакет.
4. Добавить нового пользователя и erfpfnm ему пакет с force-https шаблона.
5. Добавить новый домен с сертификатом SSL и проверьте результат.

Как настроить временные ссылки для новых доменов?

Если вы работаете в хостинговой компании , скорее всего, вы хотели бы предоставить своим клиентам временное ссылку для доступа к их сайтам до актуальных распространенных доменов. Это особенно полезно , когда клиент переносит сайт с другого компьютера и хотите проверить работает ли все как нужно.

Например, у вас есть 2 IP адреса на сервере , 192.168.244.13 и 192.168.244.14 . Допустим, что ваш сайт top_host.ltd . Тогда вам нужно настроить 2 групповые символа для каждого адреса IP. Перейдите в меню DNS. Нажмите на на ” Добавить запись ” на домене top_host.ltd и введите следующие значения:

Record: *.alpha
Type: A
IP: 192.168.244.13

Нажмите кнопку Добавить и добавить вторую запись:

Record: *.beta
Type: A
IP: 192.168.244.14

Часть DNS завершена. Давайте назначим этим доменам соответствующие IP-адреса . Перейдите в меню IP . Выберите 192.168.244.13 . Нажмите на кнопку Изменить и добавить alpha.top_host.ltd в текстовое поле” Assigned Домен”. Сохранить и повторите соответственно адрес  для 192.168.244.14 к области beta.top_host.ltd .

Теперь, когда ваш пользователь добавить новый домен он автоматически попадет на псевдоним top_host. Если он добавил bla_bla.com на 192.168.244.13 тогда он сможет увидеть его домен , открыв http://bla_bla-com.alpha.top_host.ltd. Как вы можете видеть точки в исходной области были заменены на тире.

Как настройки собственные DNS-сервера ( vanity/private/child nameservers )?

Если вы хотите управлять DNS зоны с помощью панели управления Веста , вам придется создать 2 DNS-записи, указать им IP -адрес сервера и использовать их в качестве серверов имен для домена . В этом примере мы будем использовать ns1.your_domain.com и ns2.your_domain.com.

регистратор доменов
Каждый регистратор доменов имеет другой метод создания частных серверов имен . Ниже вы найдете инструкции о том , как создать запись в диспетчере GoDaddy.
1 . Войдите в свой управляющий счет от GoDaddy.
2 . Рядом с доменами , нажмите запуск.
3 . Нажмите на your_domain.com.
4 . На вкладке настроек нажмите на кнопку управления рядом с именем хостов.
5 . Нажмите добавить имя хоста.
6 . Введите ns1.
7 . Введите IP -адрес вашего сервера.
8 . Нажмите кнопку Добавить.
9 . Повторите выше для ns2.
10 . Изменение серверы имен для your_domain.com в ns1.your_domain.com и ns2.your_domain.com

Панель управления Веста
После того, как частная регистрация сервера имен будет завершена, вы должны настроить Панель управления Веста .
1 . Добавить домен your_domain.com (поддержка знака отмечается на DNS проверяется ).
2 . Перейдите в меню DNS.
3 . Нажмите на Изменить в разделе your_domain.com.
4 . Измените шаблона для child-ns.
5 . Перейдите в меню Packages.
6 . Редактировать пакет под названием умолчанию.
7 . Установите ns1.your_domain.com и ns2.your_domain.com как серверов имен.

После того как вы сделали все шаги , теперь вы можете установить все ваши доменные имена и использовать ns1.your_domain.com и ns2.your_domain.com . Обратите внимание, что это может занять до 24 часов, после этого DNS-записи начнут работать .

Как настроить master-slave DNS кластер?

Если вы ищете варианты, чтобы избежать DNS простоя или способ управления DNS на всех серверах, вы могли бы рассмотреть в настройках DNS кластера.

1. Создать пользовательский DNS-кластер на сервере, который будет юзаться в качестве DNS slave
2 выполнить следующую команду на master:

# v-add-remote-dns-host slave.your_host.com 8083 admin your_passw0rd

Пароль и имя хоста должны быть заменены на соответствующие данные, конечно.

Таким образом, вы можете настроить master-> slave или master-master-master кластера. Там нет ограничений о том, как делать цепь  на серверах DNS.

Как включить AXFR (зона Transfer) в Bind?

Замените следующие строки в имени файла конфигурации:

allow-transfer {“none”;};

на

allow-transfer { X-X-X.Y-Y-Y.Z-Z-Z.111; X-X-X.Y-Y-Y.Z-Z-Z.222; };
also-notify { X-X-X.Y-Y-Y.Z-Z-Z.111; X-X-X.Y-Y-Y.Z-Z-Z.222; };

Расположение этого файла на RHEL и CentOS: /etc/named.conf

Как перейти пользователю на новый сервер?

1. Сделать резервную копию пользовательского сайта на старом сервере. В этом примере мы будем использовать администратора в качестве примера.

# v-backup-user admin

2. Скопировать тарбол на новый сервер и поместить его в каталог /home/backup directory
scp /home/backup/admin.2014-06-02.tar new-server:/home/backup/

3. Восстановить резервную копию на новом сервере

# v-restore-user admin admin.2014-06-02.tar

Если вы хотите восстановить данные под другим именем пользователя, просто переименуйте архив. Если имя пользователя не существует на сервере, учетная запись будет создана автоматически.

# mv /home/backup/admin.2014-06-02.tar /home/backup/new_user.2014-06-02.tar
# v-restore-user newuser newuser.2014-06-02.tar

Как добавить удаленный сервер баз данных MySQL?

1. Предполагается, у вас уже есть второй сервер и он работает.

2. На первом сервере выполнить следующую команду

# v-add-database-host mysql new-your-server.com root your_password

3. Чтобы убедиться все в порядке, проверьте список хостов базы данных

# v-list-database-hosts

Как настроить PostgreSQL на RHEL или CentOS?

1 . Установите PostgreSQL

# yum install postgresql postgresql-server postgresql-contrib phpPgAdmin

* Если у Вас Реми репозиторий уже установлен, то не забудьте разрешить его .

# yum install --enablerepo=remi postgresql postgresql-server postgresql-contrib phpPgAdmin

2 . Инициализация кластера базы данных

# service postgresql initdb

3 . Скачать конфигурацию HBA

# wget http://c.vestacp.com/0.9.8/rhel/pg_hba.conf -O /var/lib/pgsql/data/pg_hba.conf

4 . Запустите сервер

# service postgresql start

5 . Установите оракул пароль пользователя

# su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'pgp_your_passsw0rd'"
# exit

6 . Включите поддержку баз данных PgSQL в Весты.
Открыть /usr/local/vesta/conf/vesta.conf и добавить DB_SYSTEM to ‘mysql,pgsql’

7 . Регистрация pg  в панели управления

# v-add-database-host pgsql localhost postgres pgp_your_passsw0rd

8 . Скачать конфигурацию PhpPGAdmin

# wget http://c.vestacp.com/0.9.8/rhel/pga.conf -O /etc/phpPgAdmin/config.inc.php
# wget http://c.vestacp.com/0.9.8/rhel/httpd-pga.conf -O /etc/httpd/conf.d/phpPgAdmin.conf

9 . Перезагрузка веб-сервер

# service httpd restart

Как заменить Vsftpd с ProFTPD на RHEL или CentOS?

1. Отключите VSFTPD

# service vsftpd stop
# chkconfig vsftpd off

2. Установите пакет программного обеспечения

# yum install proftpd

3. Скачать конфигурацию

# wget http://c.vestacp.com/0.9.8/rhel/proftpd.conf -O /etc/proftpd.conf

4. Изменение Веста настройки

# sed -i "s/vsftpd/proftpd/" /usr/local/vesta/conf/vesta.conf

5. Включить ProFTPD

# chkconfig proftpd on<br /><br />
# service proftpd start

Как удалить Nginx на RHEL или CentOS?

1. Стоп Nginx

# service nginx stop

2. Удалить пакет

# yum remove nginx

3. Изменить конфигурацию Веста

# cd /usr/local/vesta/conf<br /><br />
# sed -i "/PROXY_*/d" vesta.conf<br /><br />
# sed -i "s/8080/80/" vesta.conf<br /><br />
# sed -i "s/8443/433/" vesta.conf

4. Изменение конфигурации HTTPd

# cd /etc/httpd/conf.d<br /><br />
# sed -i "s/8080/80/" *.conf<br /><br />
# sed -i "s/8443/443/" *.conf

5. Переделать виртуальный хост конфига
для пользователя в $(v-list-sys-users plain); сделать

# v-rebuild-web-domains $user;

Готово!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.