Введение
Меня попросили найти более ли менее производительный сервер в Европе и подготовить его для хостинга своих проектов. Если не знаешь готовых вариантов, то бывает не просто сходу найти подходящий хостинг. Одним из требований была круглосуточная русская тех поддержка, так как предполагалось, что сервером будут управлять люди, не сильно разбирающиеся в этом вопросе, поэтому и нужна была в том числе панель управления.
Мой выбор пал на keyweb.ru, конкретно взял вот эту линейку — MVS L14 (тарифы с включенным полным администрированием, поэтому такая цена, там есть и без администрирования, будет гораздо дешевле) и тариф с 2 ядрами, 8 гигами и 150 SSD. Такой сервер позволит хостить десятки не сильно нагруженных сайтов. Из плюсов, которые подходили конкретному заказчику были:
- Как уже упоминалась, круглосуточная русская поддержка с прямыми российскими номерами.
- Расположение серверов в Европе.
- Возможность использовать сервера как с администрированием, так и без. То есть если заказчик решит, что ему не хочется самому искать системного администратора для настройки сервера, в данном случае меня, он может перейти на полную техническую поддержку по администрированию сервера от хостера.
Уже после написания статьи о VestaCP узнал, что у хостера есть своя бесплатная панель управления KeyHelp. Стало любопытно на нее посмотреть, поэтому напишу обзорную статью и по ней. Сразу видно, что она более функциональная, но лично меня VestaCP подкупила своей простотой и наличием почти всего необходимого. Но об этом по порядку дальше.
Сетевые настройки на сервере CentOS
Первый раз с сетевыми настройками сервера CentOS 7 или 8 мы сталкиваемся, когда производим установку. На экране первоначальной настройки есть отдельный пункт, касающийся настройки сетевых интерфейсов:
Зайдя в него мы видим список подключенных сетевых карт. Каждую из них можно включить соответствующим ползунком (пункт 1 на картинке). При активировании интерфейса он автоматически получает настройки по dhcp. Результат работы dhcp можно посмотреть тут же. Если вас не устраивают эти настройки, их можно отредактировать, нажав configure (пункт 3 на картинке). Здесь же можно задать hostname (пункт 2 на картинке):
Открыв окно дополнительный настроек Ehernet, вы сможете изменить имя сетевого интерфейса, указать настройки IP (пункт 1 на картинке), выбрать ручные настройки (пункт 2 на картинке), назначить ip адрес (пункт 3 на картинке), установить dns сервер (пункт 4 на картинке) и сохранить сетевые настройки (пункт 5 на картинке):
После выполнения остальных настроек начнется установка. После установки у вас будет сервер с указанными вами сетевыми настройками.
Теперь рассмотрим другую ситуацию. Сервер, а соответственно и конфигурацию сети, производили не вы, а теперь вам надо ее посмотреть либо изменить. В вашем распоряжении консоль сервера, в ней и будем работать. Если у вас установка производилась с дистрибутива minimal, то при попытке посмотреть сетевые настройки с помощью команды ifconfig в консоли вы увидите следующее:
или в русской версии:
Для работы с ifconfig и прочими сетевыми утилитами необходимо установить пакет net-tools. Сделаем это:
Теперь можно увидеть настройки сети:
Если у вас нет желания устанавливать дополнительный пакет, то можно воспользоваться более простой командой ip с параметрами:
Мы увидели конфигурацию сети, теперь давайте ее отредактируем. Допустим, нам нужно сменить ip адрес. Для этого идем в директорию /etc/sysconfig/network-scripts и открываем на редактирование файл ifcfg-eth0 или ifcfg-ens18. Название файла будет зависеть от имени сетевого интерфейса. В Centos 8 по-умолчанию убрали поддержку настройки сети через конфигурационные скрипты, поэтому установите отдельно пакет network-scripts.
По настройкам из этого файла мы получаем ip адрес по dhcp. Чтобы вручную прописать статический ip, приводим файл к следующему содержанию:
Мы изменили параметры:
BOOTPROTO | с dhcp на none |
DNS1 | указали dns сервер |
IPADDR0 | настроили статический ip адрес |
PREFIX0 | указали маску подсети |
GATEWAY0 | настроили шлюз по-умолчанию |
Чтобы изменения вступили в силу, необходимо перечитать сетевые настройки:
Проверяем, применилась ли новая конфигурация сети:
Все в порядке, новые настройки сетевого интерфейса установлены.
Cockpit: Веб-интерфейс управления сервером CentOS 8
Возможность видеть наглядно все основные параметры системы и иметь возможность ими управлять пожалуй самая приятна новость которая меня порадовала в выпуске CentOS 8.
При авторизации по ssh вы увидите следующее сообщение:
Activate the web console with: systemctl enable --now cockpit.socket
Достаточно выполнить команду в консоли systemctl enable —now cockpit.socket и при следующей авторизации вы увидите следующее сообщение:
Web console: https://localhost:9090/ or https://192.168.0.252:9090/
Порт 9090 должен быть открыт. Работающий по умолчанию сервис cockpit в FirewallD открывает этот порт.
При вводе в браузере https://192.168.0.252:9090 увидите приглашение ввести данные авторизации.
После входа вы увидите главную страницу с выводом графиков нагрузки основных параметров сервера.
Далеко не все конечно можно видеть и настраивать в этой панели но определенное удобство есть явно. Пользоваться панелью просто, понятно и не вызывает никаких сюрпризов, так что описывать по большому счету нечего. Попробуйте и вы сами всё поймете.
Единственное что я делаю это то что не держу её включенной. Убираю из автозагрузки в самой панели управления или командой:
systemctl disable cockpit.socket
В случае необходимости мне не сложно включить при необходимости и отключить после использования следующими командами:
systemctl start cockpit.socket systemctl stop cockpit.socket
Запретить обновление пакетов
Иногда вы можете захотеть ограничить обновление пакета до более новой версии. Версия плагин Yum плагин позволяет вам блокировать пакеты для определенной версии.
Плагин не установлен по умолчанию, поэтому сначала вам нужно установить его:
Во время установки в вашей системе будут созданы два файла конфигурации, которые будут храниться в каталоге . Файл конфигурации и файл содержащий заблокированные пакеты. По умолчанию в этом файле нет пакетов.
Чтобы заблокировать версию пакета, вы можете либо вручную добавить имя пакета в файл, либо использовать команду после которой следует имя пакета. Например, чтобы предотвратить обновление всех пакетов PHP (все пакеты, начинающиеся с «php-»), вы должны выполнить:
Это заблокирует пакеты PHP к текущей версии.
Настройка исключений для пакетов в CentOS 7
На этом этапе мы можем не применять автоматические обновления на некоторых пакетах, включая ядро CentOS 7.
Для этих исключений мы снова правим файл конфигурации:
cd /etc/yum/ nano yum-cron.conf
В финальной части файла мы найдем базовый раздел, и мы должны добавить следующую строку, например, чтобы исключить ядро с MySQL:
exclude = mysql* kernel*
В этом конкретном примере все пакеты с именами, начинающимися с «mysql» или «kernel», будут отключены для автоматического обновления.
Мы сохраняем изменения и перезапускаем службу, выполняя:
systemctl restart yum-cron
Yum-cron описание параметров
В этом конфигурационном файле yum-cron можно указать четыре основных параметра:
- CHECK_ONLY (yes | no): этот параметр позволяет нам указать, будет ли он проверяться только при загрузке, но не для выполнения дополнительных действий (без их установки или загрузки).
- DOWNLOAD_ONLY (yes | no): Применяется в случае, если не проверять наличие обновлений (CHECK_ONLY = NO), но этот параметр позволяет нам загружать и устанавливать или загружать только обновления, доступные для CentOS 7.
- MAILTO (электронная почта): позволяет отправлять почту уведомления с результатом действий, выполняемых каждый раз, когда выполняется yum-cron.
- DAYS_OF_WEEK («0123456»): этот параметр используется для указания, в какие дни недели будет проводиться проверка обновлений.
Проверка журналов Yum-cron в CentOs 7
Параметр yum-cron использует cronjob для автоматических обновлений безопасности, и все записи этого cron будут доступны в каталоге /var/log.
Чтобы увидеть эти записи, мы выполним следующее:
cd /var/log/ cat cron | grep yum-daily
Если мы хотим посмотреть на установленные пакеты, мы запустим следующее:
cat yum.log | grep Updated
С помощью этой опции yum-cron мы можем быть уверены, что обновления будут готовы к загрузке и установке, как только будет доступны.
Управление потоками (модулями)
Модульные репозитории позволяют установить пакеты разных версий. По сути, это группы RPM-пакетов, которые должны быть установлены вместе и представляют из себя логическую единицу для установки программного продукта нужной версии. Включить можно только одну версию модуля для репозитория.
1. Вывести список доступных модулей:
dnf module list
* обозначения:
- — значения по умолчанию.
- — включенные модули.
- — отключены.
- — установленные.
В нашей системе может не быть включенных модулей. В этом случае пакеты будут устанавливаться из стандартных репозиторией.
Мы также можем посмотреть отдельные по состоянию группы модулей:
dnf module list —enabled
* включенные.
dnf module list —disabled
* отключенные.
dnf module list —installed
* установленные.
2. Вывести список возможных модулей для конкретного пакета:
dnf module list nodejs
* в данном примере для nodejs.
3. Разрешить или запретить конкретный модуль:
dnf module enable nodejs:12
dnf module disable nodejs:14
* первая команда разрешит модуль nodejs версии 12, вторая, соответственно, запрещает использование модуля nodejs версии 14.
4. Переключение модуля.
Если мы хотим изменить активный модуль, необходимо сначала отключить текущий командой dnf module reset, например:
dnf module reset php:7.3
* если попробовать включить модуль без отключения активного мы увидим ошибку:Error: It is not possible to switch enabled streams of a module.
It is recommended to remove all installed content from the module, and reset the module using ‘dnf module reset <module_name>’ command. After you reset the module, you can install the other stream.
После включаем новый поток:
dnf module enable php:7.4
CentOS 7 minimal
Если вы используете диск centos minimal iso, то увидите следующий экран:
Здесь вам предлагают указать параметры установки. Восклицательным знаком помечен раздел, без настройки которого продолжение невозможно. Для настройки доступны следующие параметры установки:
- Выбор часового пояса centos.
- Выбор раскладки клавиатуры.
- Поддержка каких языков будет осуществляться на сервере.
- Откуда будет происходить установка. Так как у нас дистрибутив centos minimal, установка будет с локального iso.
- Выбор пакетов для установки. В образе minimal доступен только минимальный набор софта.
- Разбивка жесткого диска. Подробнее коснемся этого пункта, когда будем разбирать установку на raid.
- Настройка сетевых интерфейсов.
Для продолжения установки необходимо выполнить как минимум разбивку жесткого диска. Без этого продолжение установки невозможно. Но мы пройдемся по всем параметрам и установим необходимые для нас значения.
Итак, нажимаем на DATE & TIME и настраиваем параметры времени:
- Указываем регион.
- Выбираем город.
- Включаем при необходимости службу времени для синхронизации часов centos с внешними серверами.
Это возможно сделать только если вы уже настроили сетевые параметры. Если нет, то вернитесь к этой настройке позже. - Выбираем список внешних серверов для синхронизации времени:
- Указываем формат, в котором будет отображаться текущее время.
- При необходимости изменяем дату сервера.
После завершения настроек жмем сверху синюю кнопку Done.
Идем в следующую настройку — KEYBOARD LAYOUT:
- Добавляем необходимые раскладки. Я добавил Russian.
- Нажимаем Options и выбираем, как будет происходить переключение раскладок.
- Тестируем раскладки и переключение. Если все в порядке, идем дальше.
Нажимаем LANGUAGE SUPPORT:
Выбираем дополнительные языки, которые будет поддерживать система. Чаще всего мне это не нужно, но для примера добавим поддержку русского языка. Это может пригодиться, например, при создании файлового архива с русскими названиями в файлах. С поддержкой русского языка можно работать в консоли с русскими названиями папок и файлов. Если у вас, к примеру, сервер настраивается для работы в качестве шлюза, поддержка дополнительных языков скорее всего не пригодится. После выбора снова жмем Done.
Теперь выполним сетевые настройки. Идем в раздел NETWORK & HOSTNAME. Подробно о я указывал в одной из своих статей, поэтому останавливаться на этом вопросе не буду. Включаем ползунок в положение ON и получаем автоматически настройки по dhcp:
- Включение ползунка в положение ON активирует интерфейс, он получает настройки по dhcp.
- Если вы хотите изменить эти настройки, нажимаете Configure.
- Указываете hostname. Если забудете, то после установки этот параметр можно изменить.
Завершаем настройку нажатием на Done. Теперь можно вернуться в настройки часов и активировать Network Time.
Теперь перейдем в раздел INSTALLATION SOURCE. При установке centos minimal менять этот параметр нет необходимости. Там по-умолчанию установлен локальный источник, нам это подходит. Можно ничего не трогать:
В разделе SOFTWARE SELECTION при minimal установке тоже нечего выбрать, уже указан единственно возможный вариант:
Нам осталось рассмотреть последнюю обязательную настройку, без которой установка centos не начнется — INSTALLATION DESTINATION. Зайдя в нее вы увидите список подключенных к серверу дисков. В моем случае это один жесткий диск.
Если ваш диск определился правильно, выбираете его и нажимаете Done. Выскакивает окошко с предупреждением, что для установки системе понадобится примерно 1 Гб места на жестком диске, а на вашем жестком диске нет необходимого свободного места. Это происходит потому, что раньше на этом диске была установлена другая система и она занимала весь жесткий диск. Нам нужно удалить всю старую информацию для установки новой системы. Делаем это, нажимая Reclaim space:
Выбираем диск и удаляем все существующие разделы на нем — жмем сначала Delete all, а потом Reclaim space:
После этого установщик выберет весь диск в качестве диска для установки. После этого можно начать непосредственно установку centos, нажав кнопку Begin Installation.
Дальше рассмотрим вариант, когда вы выполняете установку с образа netinstall.
Настройка ssl сертификата Lets Encrypt в apache
Теперь настроим работу web сервера apache с ssl сертификатом. Хотя если быть точным, то tls сертификатом. Устанавливаем пакет certbot для получения бесплатного ssl сертификата от let’s encrypt. Для этого нам сначала надо подключить репозиторий epel.
# dnf install epel-release # dnf install certbot
После установки пакетов certbot, если его запустить, напишет ошибку, что не может сам настроить apache.
Настроим все сами. Для начала создадим самоподписанный дефолтный сертификат, чтобы apache не ругался на отсутствие файла и смог запуститься.
# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/localhost.key -out /etc/ssl/certs/localhost.crt
Все параметры оставляйте дефолтные, не принципиально. Мы этот сертификат использовать не будет. Перезапустите apache.
# apachectl restart
Теперь выпустим сертификат для нашего домена. Имейте ввиду, чтобы получить сертификат у вас должно быть действующее доменное имя, ссылающееся на web сервер, который настраиваете. Let’s Encrypt будет по доменному имени обращаться к серверу, на котором настраиваете сертификат, чтобы проверить домен. В тестовой лаборатории с вымышленным доменным именем получить настоящий ssl сертификат не получится.
# certbot certonly
В качестве способа аутентификации выбирайте
1: Apache Web Server plugin (apache)
Дальше заполняйте в соответствии с вашими названиями. После получения сертификата, укажем его в конфигурации виртуального хоста. В моем случае в файле z.serveradmin.ru.conf. Добавляем туда параметры ssl.
<VirtualHost *:80 *:443> ServerName z.serveradmin.ru ServerAlias www.z.serveradmin.ru DocumentRoot /web/sites/z.serveradmin.ru/www ErrorLog /web/sites/z.serveradmin.ru/log/error.log CustomLog /web/sites/z.serveradmin.ru/log/access.log common SSLEngine on SSLCertificateFile /etc/letsencrypt/live/z.serveradmin.ru/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/z.serveradmin.ru/privkey.pem <Directory /web/sites/z.serveradmin.ru/www> Options FollowSymLinks AllowOverride All Require all granted </Directory> php_admin_value date.timezone 'Europe/Moscow' php_admin_value max_execution_time 60 php_admin_value upload_max_filesize 30M </VirtualHost>
Перезапускайте apache и проверяйте работу сайта по https, зайдя по соответствующему протоколу.
По аналогии делаете с остальными виртуальными хостами, для которых используете бесплатные сертификаты let’s encrypt. Осталось дело за малым — настроить автоматический выпуск новых ssl сертификатов, взамен просроченным. Для этого добавляем в /etc/crontab следующую строку:
# Cert Renewal 30 4 * * * root /usr/bin/certbot renew --post-hook "/usr/sbin/apachectl restart" >> /var/log/le-renew.log
Переадресация с http на https в apache
В настроенном ранее примере https отлично работает, но неудобно, что нет автоматической переадресации с http на https. Чтобы использовать безопасную версию сайта, необходимо вручную в браузере набирать https. Хотя все современные браузеры уже сами умеют проверять версии сайта и если есть защищенная, то они автоматически сами ее выбирают.
Тем не менее, лучше все же добавить редирект с http на https. Его можно сделать двумя различными способами:
- Через файл .htaccess
- С помощью настройки виртуального хоста.
Мне нравится больше второй вариант, поэтому приводим конфиг виртуального хоста к следующему виду.
<VirtualHost *:80> ServerName z.serveradmin.ru ServerAlias www.z.serveradmin.ru Redirect permanent / https://z.serveradmin.ru </VirtualHost> <VirtualHost *:443> ServerName z.serveradmin.ru ServerAlias www.z.serveradmin.ru DocumentRoot /web/sites/z.serveradmin.ru/www ErrorLog /web/sites/z.serveradmin.ru/log/error.log CustomLog /web/sites/z.serveradmin.ru/log/access.log common SSLEngine on SSLCertificateFile /etc/letsencrypt/live/z.serveradmin.ru/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/z.serveradmin.ru/privkey.pem <Directory /web/sites/z.serveradmin.ru/www> Options FollowSymLinks AllowOverride All Require all granted </Directory> php_admin_value date.timezone 'Europe/Moscow' php_admin_value max_execution_time 60 php_admin_value upload_max_filesize 30M </VirtualHost>
Перечитывайте конфиг httpd и проверяйте. Должно работать автоматическое перенаправление на https версию.
Обновление опубликованной через web базы 1с
Подключившись к опубликованной базе через web, нет возможности обновить ее. Если у вас база на сервере 1С, то это не проблема. Просто подключаетесь толстым клиентом и делаете все, что нужно. Если у вас файловая база, настроенная по предложенному в статье способу, вам нужно будет каким-то образом подключаться к ней через толстого клиента. Проще всего это сделать напрямую, через Samba.
Подойдет любой способ ее настройки. У меня есть статья — быстрая и простая настройка samba. Можете взять подходящий вам способ аутентификации и все сделать. Далее подключаетесь к файловой базе как обычно по сети толстым клиентом и обновляете ее.
Стандартное расположение файлов и логов
В завершение дам еще немного полезной информации по расположению некоторых файлов и каталогов, которые могут пригодится в работе с панелью vestacp.
/usr/local/vesta | Директория, где хранится все, что касается весты (конфиги, шаблоны, скрипты и т.д.) |
/var/log/vesta | Логи самой панели vesta. |
/home/user1/web/site.ru/public_html | Директория где непосредственно лежит сайт site.ru пользователя user1 |
/home/backup | Тут хранятся все бэкапы |
/var/log/nginx/domains | Логи всех сайтов, если вы используете nginx |
/etc/php-fpm.d | Как общие, так и персональные настройки по доменам от php-fpm |
/home/user1/conf/web | Настройки nginx и сертификаты всех сайтов пользователя user1 |
/etc/php.ini | Файл настроек php |
Описание шаблонов весты можно почитать на официальном сайте, в документации — .
Нужно ли выполнять балансировку раздела с BTRFS?¶
Файловая система использует двухуровневую структуру хранения данных: пространство поделено на фрагменты, которые содержат блоки данных. При определенных условиях эксплуатации в ФС может возникать большое количество мало заполненных фрагментов. Это приводит к ситуации, когда свободное место вроде есть, а записать очередной файл на диск не получается.
Операция балансировки выполняет перенос блоков между фрагментами, а освободившиеся при этом удаляются. Официальная рекомендует выполнять балансировку регулярно, однако разработчики Fedora против такого подхода.
Если на разделе мало свободного места (меньше 20%), часто осуществляется интенсивная запись данных (например от СУБД), и происходят ошибки записи, то скорее всего балансировка поможет.
Оценим выгоду от следующей командой:
sudo btrfs fi usage
Если значение в поле Device allocated значительно превышает Used, то процедура окажется полезной, в противном случае выполнять её не имеет никакого смысла.
CentOS 7 netinstall
Установка Centos 7 с образа netinstall отличается от прочих только одним моментом. Во время подготовки к установке по сети в разделе INSTALLATION SOURCE вам вместо локального источника необходимо указать путь к образу, расположенному где-то в сети. Очевидно, что перед этим необходимо выполнить настройку сети и убедиться, что у компьютера есть доступ в интернет.
В качестве источника для установки я буду использовать упомянутое ранее . CentOS netinstall url — https://mirror.yandex.ru/centos/7/os/x86_64/
На скриншоте указан старый url. После череды обновлений он стал неактуален. Правильная ссылка выше в тексте.
Указываем путь и жмем Done. После проверки доступности источника, в разделе SOFTWARE SELECTION можно выбрать необходимый для установки набор софта:
Дальше можно начинать установку, указав все остальные параметры, которые мы рассмотрели выше.
Полезные плагины yum
Для чего нужны плагины в yum? Как и везде, упрощают нашу работу.
Некоторые популярные плагины и их описание:
yum-plugin-fastestmirror – плагин служащий для измерения скорости зеркал и предоставления самого быстрого для установки пакетов.
yum-plugin-security — плагин которые предоставляет список обновлений относящихся только к безопасности системы.
yum-plugin-keys — позволяет работать с ключами keys, keys-info, keys-data, keys-remove
Директория где хранятся все плагины /etc/yum/
yum-plugin-versionlock – позволяет блокировать обновление указанных пакетов
Чтобы вывести список доступных плагинов yum, выполните:
======================================================================= N/S matched: yum-plugin ======================================================================= PackageKit-yum-plugin.x86_64 : Tell PackageKit to check for updates when yum exits fusioninventory-agent-yum-plugin.noarch : Ask FusionInventory agent to send an inventory when yum exits kabi-yum-plugins.noarch : The CentOS Linux kernel ABI yum plugin yum-plugin-aliases.noarch : Yum plugin to enable aliases filters yum-plugin-auto-update-debug-info.noarch : Yum plugin to enable automatic updates to installed debuginfo packages yum-plugin-changelog.noarch : Yum plugin for viewing package changelogs before/after updating yum-plugin-copr.noarch : Yum plugin to add copr command yum-plugin-fastestmirror.noarch : Yum plugin which chooses fastest repository from a mirrorlist yum-plugin-filter-data.noarch : Yum plugin to list filter based on package data yum-plugin-fs-snapshot.noarch : Yum plugin to automatically snapshot your filesystems during updates yum-plugin-keys.noarch : Yum plugin to deal with signing keys yum-plugin-list-data.noarch : Yum plugin to list aggregate package data yum-plugin-local.noarch : Yum plugin to automatically manage a local repo. of downloaded packages yum-plugin-merge-conf.noarch : Yum plugin to merge configuration changes when installing packages yum-plugin-ovl.noarch : Yum plugin to work around overlayfs issues yum-plugin-post-transaction-actions.noarch : Yum plugin to run arbitrary commands when certain pkgs are acted on yum-plugin-pre-transaction-actions.noarch : Yum plugin to run arbitrary commands when certain pkgs are acted on yum-plugin-priorities.noarch : plugin to give priorities to packages from different repos yum-plugin-protectbase.noarch : Yum plugin to protect packages from certain repositories. yum-plugin-ps.noarch : Yum plugin to look at processes, with respect to packages yum-plugin-remove-with-leaves.noarch : Yum plugin to remove dependencies which are no longer used because of a removal yum-plugin-rpm-warm-cache.noarch : Yum plugin to access the rpmdb files early to warm up access to the db yum-plugin-show-leaves.noarch : Yum plugin which shows newly installed leaf packages yum-plugin-tmprepo.noarch : Yum plugin to add temporary repositories yum-plugin-tsflags.noarch : Yum plugin to add tsflags by a commandline option yum-plugin-upgrade-helper.noarch : Yum plugin to help upgrades to the next distribution version yum-plugin-verify.noarch : Yum plugin to add verify command, and options yum-plugin-versionlock.noarch : Yum plugin to lock specified packages from being updated
Вы можете установить выбранный плагин командой yum install, как и любой другой пакет:
Чтобы заблокировать обновление пакета через плагин, выполните:
Вывести список заблокировнных пакетов:
Убрать пакет из заблокированных:
Если вам в какой-то момент времени не нужно использовать определенный плагин, вы его можете отключить, добавив префикс при вызове yum:
Или же отключить вообще все плагины, установленные в системе: