В этой теме я расскажу как можно установить дополнительные компоненты в 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
В 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;
Готово!