Создание хостинга для нескольких сайтов на Vesta CP

Установка производится на чистый сервер Ubuntu 18.04. В статье рассмотрены первые шаги, которые нужно сделать, чтобы сервер функционировал и не доставлял хлопот.

Устанавливаем gnupg и net-tools, если не установлено.

Если на сервере планируется добавлять кириллические домены — первое, что нужно сделать — поправить локали. Вообще-то это должно работать автоматом, но почему-то несколько серверов с Ubuntu на борту — никак у меня не хотели работать idn домены «из коробки», приходилось делать поправки. Команды:

locale-gen en_US.UTF-8 
locale-gen ru_RU.UTF-8
echo LANG=en_US.UTF-8 > /etc/default/locale
source /etc/default/locale
service vesta restart

После этого — все работает нормально. В том числе и перевыпуски сертификатов LE (но если не работает — тут более полный вариант).

Если производилась установка Nginx + Apache2, cледующим шагом — требуется правка конфига /etc/nginx/your-ip.conf:

server {
    listen       ip:80 default;
    server_name  _;
    #access_log  /var/log/nginx/ip.log main;
    location / {
        access_log /dev/null;
        error_log /dev/null;
        return 444;
 
        location /phpmyadmin/ {
        proxy_pass  http://ip:8080;
        }
 
    }
}
 
server {
    listen       ip:443;
    server_name  _;
    ssl         on;
    ssl_certificate      /home/admin/conf/web/ssl.domain.ru.pem;
    ssl_certificate_key  /home/admin/conf/web/ssl.domain.ru.key;
        access_log /dev/null;
        error_log /dev/null;
    return 444;
 
    location /phpmyadmin/ {
        proxy_pass  http://ip:8080;
    }
}

Это нужно для того, чтобы разные сайты с установленными и неустановленными ssl-сертификатами сосуществовали без конфликтов. Если не внести эту правку в конфиг — по https запросу домена, на котором не установлен ssl-сертификат — будет выдаваться другой сайт, на котором сертификат установлен. Чтобы этого не произошло и в индекс не попали нежелательные страницы — обязательно внесите правки.

Если сайты, которые будут размещаться — на wordpress — добавляем правила защиты от брута и взлома xmlrpc в fail2ban.

Устанавливаем и выполняем рекомендации mysqltuner (правка my.cnf):

apt install mysqltuner
mysqltuner

Устанавливаем Monit, настраиваем и добавляем правила для сервисов, которые требуют мониторинга.

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