На главную
- Инструкции для UNIX-систем
- Обзор
- Подключение к серверу по SSH
- Подключение к серверу по SFTP
- Авторизация по SSH-ключу
- Смена или сброс пароля root
- Смена пароля root для MySQL
- Добавление пользователей
- Управление правами доступа
- Защита SSH от подбора пароля. Fail2ban
- Создание дампа базы и восстановление данных
- Установка LAMP на Ubuntu
- Установка phpMyAdmin на Ubuntu с LAMP
- Установка SSL-сертификата на Nginx
- Установка модулей PHP (CentOS)
- Установка модулей PHP (Debian / Ubuntu)
- Настройка параметров PHP (CentOS)
- Настройка параметров PHP (Debian / Ubuntu)
- Настройка перенаправлений
- Настройка перенаправлений (Nginx)
- Настройка FTP в Ubuntu 20.04
- Оптимизация MySQL с помощью MySQLTuner
- Сканирование с помощью ClamAV
- Управление службами в systemd
- Логирование в systemd
- Аудит системных событий
- Добавление дополнительного IP
- Настройка статического IP
- Добавление и удаление диска
- Изменение размера диска
- Монтирование резервных копий
- Создание swap, изменение его размера
- Установка и удаление программ. Менеджеры пакетов
- Установка графической оболочки XFCE на Ubuntu
- Настройка iptables
- Настройка OpenVPN
- Установка произвольной ОС на сервер
- Удаленный доступ к MySQL
- Установка QEMU-агента
- Установка Zabbix-агента
- Установка и работа с PostgreSQL
- Установка почтового сервера iRedMail
- Настройка почтового сервера iRedMail
- Установка SSL на сервер с Keitaro
- Запуск Wordpress на сервере c Ubuntu
- Запуск бота в фоновом режиме
- Установка сертификатов Минцифры
- Подготовка образа для создания облачного сервера
- Создание и развертывание образа с помощью утилиты dd
- Установка Minecraft на CentOS 7
- Запуск сервера Minecraft
- Запуск сервера с CS 1.6 и EngineGP
- Запуск сервера RageMP
- Настройка сети Outline
- Изменение настроек DNS-серверов
- Диагностика и решение проблем
- Инструкции для Windows
- Панели управления
Подготовка образа для создания облачного сервера
Перед тем, как создать облачный сервер из образа, образ необходимо подготовить — это нужно для того, чтобы установка была выполнена корректно и полноценно работал функционал панели управления.
Ниже рассмотрим, какие проверки и настройки потребуется выполнить для успешного создания сервера.
В нашем репозитории на GitHub вы можете найти примеры конфигов сборочной системы Packer для автоматической сборки образов ВМ.
Основные настройки
Таблица разделов
Проверьте разбивку разделов на диске. Мы рекомендуем использовать для разбивки MBR или GPT; они обе поддерживаются большинством Linux-дистрибутивов командами fdisk
, gdisk
и аналогичными.
gdisk -l /dev/vda
Пример вывода:
GPT fdisk (gdisk) version 1.0.5
Partition table scan:
MBR: MBR only
BSD: not present
APM: not present
GPT: not present
Если используется иная разметка, потребуется создать образ заново, с корректной разметкой.
Разметка диска
Если на диске размечен всего один раздел (корневой) и он имеет файловую систему ext3 или ext4, то при установке сервера из образа будет выполнен ресайз файловой системы. ФС будет расширена до заданного в конфигурации сервера размера диска.
Например, если размер блочного устройства в образе 10 Гб, то при установке сервера с диском 15 Гб блочное устройство и ФС будут расширены до 15 Гб.
Ресайз файловой системы не будет выполнен, если задействован LVM (Logical Volume Manager).
Загрузчик ОС
Мы используем для запуска виртуальных машин SeaBIOS, поэтому в ОС должен быть установлен обычный загрузчик для BIOS. Если установлен UEFI-загрузчик, его необходимо удалить и установить загрузчик для BIOS.
Если вы используете GRUB2, cмотрите инструкции по установке и настройке здесь.
Настройка /etc/fstab
Для стабильного запуска системы в файле /etc/fstab
для корневого раздела указывайте монтирование по UUID, например:
UUID=f19002a1-6e7a-45ac-91cd-24b7cc0e4cd9 / ext4 defaults 0 1
Посмотреть UUID раздела можно, например, командой:
blkid
Пример вывода:
/dev/vda1: UUID="f19002a1-6e7a-45ac-91cd-24b7cc0e4cd9" TYPE="ext4" PARTUUID="f7a1fae1-01"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
Наличие основного пользователя
При создании сервера будет сгенерирован пароль для пользователя root (или Администратор в случае Windows). Убедитесь, что такой пользователь существует. Как правило, пользователь есть, если он не был специально удален.
Наличие qemu-guest-agent
Убедитесь, что установлен и запущен сервис qemu-guest-agent
— он необходим для выполнения определенных операций из панели, например, для создания бэкапов.
- Проверьте статус.
Systemd:
systemctl status qemu-guest-agent.service
OpenRC и init.d:
/etc/init.d/qemu-guest-agent status
или:
service qemu-guest-agent status
- Установите агент, если он отсутствует:
Debian/Ubuntu:
apt-get install qemu-guest-agent
CentOS / RHEL:
yum install qemu-guest-agent
Alpine Linux:
apk add qemu-guest-agent
- Добавьте в автозагрузку:
Systemd:
systemctl enable qemu-guest-agent.service
init.d:
chkconfig --add qemu-guest-agent
OpenRC:
rc-update add qemu-guest-agent
Для Windows сервис можно установить с помощью специального ISO-образа, который можно скачать здесь. Также с его помощью можно установить virtio-драйверы, необходимые для поддержки виртуализированных устройств.
Данных настроек достаточно для создания облачного сервера из образа. Остальные настройки рекомендуется выполнить для более удобной работы с сервером.
Дополнительные настройки
Установка Zabbix
Для сбора статистики с серверов мы используем агент Zabbix. Чтобы отображать статистику в панели, рекомендуем установить Zabbix с помощью скрипта командой:
wget -O - http://zabbix.repo.timeweb.ru/zabbix-install.sh | bash
Сетевые настройки
После запуска сервера необходимо обеспечить его доступность по сети. Для этого потребуется настроить DHCP-клиент для автоматического получения IP- и IPv6-адресов.
В большинстве систем клиент DHCP установлен по умолчанию, мы рекомендуем использовать утилиту dhclient с таким файлом конфигурации:
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
option dhcp6.next-hop code 242 = ip6-address;
send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers, dhcp6.next-hop;
timeout 300;
Доступ по SSH
Так как для доступа к серверу, как правило, используется протокол SSH, проверьте, что он установлен и запускается при загрузке сервера.
- Проверьте статус:
Systemd:
systemctl status ssh.service
OpenRC и init.d:
/etc/init.d/ssh status
или:
service ssh status
- Установите SSH, если он отсутствует:
Debian/Ubuntu:
apt-get install openssh-server
CentOS / RHEL:
yum -y install openssh-server openssh-clients
Alpine Linux:
apk add openssh
- Добавьте в автозагрузку:
Systemd:
systemctl enable ssh.service
Init.d:
chkconfig --add ssh
OpenRC:
rc-update add sshd
- Также убедитесь, что в используемом файрволе открыт доступ к порту SSH (по умолчанию — 22).
Отключение swap
Рекомендуем отключить файл подкачки.
- Проверьте информацию о включенном swap:
swapon --show
Пример вывода:
NAME TYPE SIZE USED PRIO
/swap.img file 685M 0B -2
- Отключите swap:
swapoff -a