Как установить webmin на centos 8

Структура специализации

Но решив стать сисадмином, рекомендуется сразу определиться, в каком направлении хочется развиваться. Можно сосредоточиться на различных сетях, таких как Wide Area Network (WAN), Local Area Network (LAN), а также на нескольких типах серверов (почтовые, файловые и т. д.).

Нет жестких требований к системным администраторам, но в целом специалист должен:

  1. Уметь устанавливать и поддерживать все версии ОС Windows/Linux/Mac.
  2. Уметь устанавливать и поддерживать серверное ПО.
  3. Знать распространенные программы (Microsoft Office, 1С и т.д.).
  4. Знать принципы работы сетевых протоколов, принципы построения компьютерных сетей.
  5. Знать аппаратную часть компьютеров и уметь диагностировать и устранять неполадки.
  6. Знать английский язык на уровне чтения технической документации.
  7. Уметь работать с удаленными пользователями.

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

  1. Стажер.
  2. Младший системный архитектор или администратор БД.
  3. Сисадмин.
  4. Старший сисадмин.
  5. Руководитель IT-отдела.
  6. IT-директор.

Ротация логов веб сервера apache

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

У нас уже будет файл конфигурации logrotate для httpd, который был создан во время установки — /etc/logrotate.d/httpd. Приведем его к следующему виду:

/var/log/httpd/*log {
    missingok
    notifempty
    sharedscripts
    delaycompress
    postrotate
        /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
    endscript
}

/web/sites/pma.serveradmin.ru/log/*log {
    size=10M
    rotate 10
    missingok
    notifempty
    compress
    sharedscripts
    postrotate
        /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
    endscript
}

/web/sites/z.serveradmin.ru/log/*log {
    size=10M
    rotate 10
    missingok
    notifempty
    compress
    sharedscripts
    postrotate
        /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
    endscript
}

1. Как установить Webmin на CentOS 8

Шаг 1 Для начала перейдем к CentOS 8 и выполним следующую команду:

 yum -y установить @perl 

Шаг 2 Это отвечает за установку языка Perl вместе с необходимыми зависимостями:

Webmin

Поэтому для установки самой последней версии мы выполним следующее:

 wget http://www.webmin.com/download/webmin-current.tar.gz 

Шаг 4 примечание

Если у вас нет команды wget, мы можем установить ее, выполнив:

 yum -y установить wget 

Доступен процесс загрузки последней версии:

Шаг 5 Переходим к распаковке файла tar.gz:

 tar xvf webmin-current.tar.gz 

Шаг 6 Теперь мы удаляем скачанный файл:

 rm -f webmin-current.tar.gz 

Шаг 7 Теперь давайте переместим созданную папку Webmin:

 mv webmin * / usr / local / webmin 

Шаг 8 Мы получаем доступ к рабочему каталогу / usr / local / webmin / и запускаем скрипт установки Webmin:

 cd / usr / local / webmin / (доступ к каталогу) ./setup.sh (выполнение скрипта) 

Шаг 9 Там мы можем нажать Enter, чтобы настроить следующее:

Каталог файлов

Файл журнала

Perl

Шаг 10 После настройки Perl мы видим порт веб-доступа по умолчанию:

примечание

Если мы хотим изменить этот порт, мы должны ввести его и нажать Enter.

Шаг 11 Затем мы вводим имя пользователя (по умолчанию admin) и назначаем пароль:

Шаг 12 Там мы уступаем процесс конфигурации Webmin в CentOS 8 и после завершения мы увидим метод доступа:

Шаг 13 Теперь мы собираемся предоставить разрешение этому порту в системном брандмауэре:

 firewall-cmd --add-port = 10000 / tcp - постоянный firewall-cmd –reload 

StaffCop

Одной из лучших программ для контроля сетевых подключений является данная утилита

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

С помощью удобных инструментов возможно осуществление полноценного контроля.

Преимущества программы:

  • контроль за передачей данных (односторонней и двухсторонней);
  • отслеживание электронной почты каждого работника организации;
  • доступ к списку сайтов, посещение которых запрещено в рабочее время;
  • доступ в интернет в определенное время дня и суток.

Prerequisites

To complete this tutorial, you will need:

  • One CentOS 7 server set up by following the CentOS 7 initial server setup guide, including a sudo non-root user.
  • A password set for the root user on your system. You’ll need to use the root user and password to log in to Webmin the first time. Use to set this password.
  • Apache installed by following How To Install Linux, Apache, MySQL, PHP (LAMP) stack on CentOS 7. We’ll use Apache to perform Let’s Encrypt’s domain verification.
  • A Fully-Qualified Domain Name (FQDN), with a DNS A record pointing to the IP address of your server. To configure this, follow the tutorial How To Set Up a Host Name with DigitalOcean.

Install Webmin on CentOS 8/RHEL 8 From Webmin Repository

Webmin has been around since 1997. At the time of this writing, the latest stable version available is 1.970, which was released on January 6, 2021. Webmin isn’t in CentOS/RHEL software repository. It’s recommended to install Webmin from its official repository so that you can always get the latest version.

To add Webmin repository, create a repository file with a command-line text editor such as Nano.

sudo dnf install nano

sudo nano /etc/yum.repos.d/webmin.repo

Add the following lines in the file.

name=Webmin Distribution Neutral
#baseurl=https://download.webmin.com/download/yum
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
enabled=1

Save and close the file. To save the file in Nano text editor, press , then press to confirm. To close the file, press . Next, we need to run the following command to download and import Webmin PGP signing key so that the package manager can verify the integrity of packages downloaded from Webmin repository.

wget http://www.webmin.com/jcameron-key.asc

Then import it with:

sudo rpm --import jcameron-key.asc

Now we can update repository and install Webmin.

sudo dnf update -y

sudo dnf install webmin -y

Once installed, the Wemin built-in web server will automatically start as can be seen by running the systemctl command below:

systemctl status webmin

Output:

Hint: If the above command doesn’t quit immediately, you can press the Q key to gain back control of the terminal.

If it’s not running, you can start it with:

sudo systemctl start webmin

If you see the “” error, then you need to restart your server.

sudo shutdown -r now

Webmin server listens on port 10000, so you need to open TCP port 10000 in the firewall.

sudo firewall-cmd --permanent --add-port=10000/tcp

sudo systemctl reload firewalld

Now you can access the web-based control panel via

https://your-server-ip:10000

Because it’s running in HTTPS mode and using a self-signed TLS certificate, so you will be told by the browser that the connection is not secure.

But you know this is your own server, so simply click the tab in Firefox and add exception. If you are using Google Chrome, you can click -> .

Now you will be presented with Webmin login screen. You need to use account to login.

If you don’t like the default color on the navigation menu, you can change it to a different color by clicking the icon on the bottom of the navigation menu,

then select navigation menu options and set the color palette. For example, I selected Midnight blue.

Save the change.

Шаг 5 — Настройка разрешений SELinux для виртуальных хостов (рекомендуется)

SELinux — это модуль безопасности ядра Linux, который обеспечивает повышенную безопасность для систем Linux. CentOS 8 оснащается модулем SELinux, настроенным работу с конфигурацией Apache по умолчанию. Поскольку вы изменили стандартную конфигурацию, настроив пользовательскую директорию журналов в файле конфигурации виртуальных хостов, вы получите ошибку при попытке запуска службы Apache. Для устранения данной проблемы вам нужно обновить политики SELinux, чтобы разрешить Apache записывать данные в нужные файлы.

Существуют различные способы настройки политики с учетом потребностей вашей среды, поскольку SELinux позволяет настраивать необходимый вам уровень безопасности. На этом шаге мы обсудим два метода внесения изменений в политики Apache: универсально и в конкретной директории. Изменение политики в директориях является более безопасным, поэтому мы рекомендуем использовать этот подход.

Универсальное изменение политик Apache

Универсальная настройка политики Apache позволит SELinux одинаковым образом использовать все процессы Apache, используя для этого булеву переменную

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

Запустите следующую команду для установки универсальной политики Apache:

Команда меняет значения булевых значений SELinux. Флаг будет обновлять значение времени начальной загрузки, а обновленное значение сохраняется между перезагрузками. — это булево значение, которое позволит SELinux рассматривать все процессы Apache как один тип, поэтому вы активировали его со значением .

Изменение политик Apache для директории

Индивидуальная настройка разрешений SELinux для директории позволит вам получить более полноценный контроль за политиками Apache, но также может потребовать дополнительных действий. Поскольку этот параметр не подразумевает наличия универсально настроенных политик, вам нужно будет вручную задать тип контекста для любых новых директорий.

Вначале проверьте тип контекста, который SELinux указал для директории :

Эта команда формирует список и выводит контекст SELinux из директории. Вы получите примерно следующий результат:

В настоящее время используется контекст , который указывает SELinux, что процесс Apache может читать только файлы, созданные в этой директории. В ходе данного обучающего руководства вы измените тип контекста директории на . Этот тип позволит Apache генерировать и добавлять данные в файлы журнала веб-приложения:

Затем воспользуйтесь командой для применения этих изменений и их сохранения между перезагрузками:

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

Вы можете вывести список контекста еще раз, чтобы посмотреть изменения:

Результат отражает обновленный тип контекста:

Теперь, когда директория использует тип , вы готовы протестировать вашу конфигурацию виртуального хоста.

3. Как установить Webmin на CentOS 8 с помощью RPM

Шаг 1 Первый шаг — добавить репозиторий Webmin, выполнив следующее:

 nano /etc/yum.repos.d/webmin.repo 
  name = Нейтральное распределение Webmin baseurl = https: //download.webmin.com/download/yum enabled = 1 

Шаг 2 Мы сохраняем изменения, используя клавиши Ctrl + O, и закрываем редактор, используя клавиши Ctrl + X. Теперь мы импортируем ключ репозитория GPG:

 rpm - импорт http://www.webmin.com/jcameron-key.asc 

 cp / etc / redhat-release /etc/redhat-release.bak echo "CentOS Linux выпуск 7.5.1804 (Core)" | sudo tee / etc / redhat-release 

Шаг 4 Версия 7.5 была определена вместо CentOS версии 8. Теперь мы устанавливаем Webmin, запустив:

 yum -y установить webmin 

Шаг 5 Мы видим, что пакеты Webmin загружены:

Шаг 6 После этого они приступают к их установке:

Шаг 7 После завершения установки мы увидим следующее:

Шаг 8 Теперь мы собираемся переместить файл версии CentOS в его исходное местоположение:

 mv /etc/redhat-release.bak / etc / redhat-release 

Шаг 9 Проверяем версию:

 cat / etc / redhat-release 

Шаг 10 Чтобы узнать подробности RPM-пакета Webmin, мы выполним:

 rpm -qi webmin 

Шаг 11 Мы обращаемся к Webmin, используя синтаксис:

 http: // localhost: 10000 / 

Шаг 12 Нажимаем на Advanced и видим следующее:

Шаг 13 Мы нажимаем «Добавить исключение» и в появившемся окне нажимаем «Подтвердить исключение безопасности»:

Шаг 14 Теперь мы можем войти с нашими полномочиями:

Шаг 15 Итак, мы установили Webmin на CentOS 8, используя RPM:

Webmin

Таким образом, Solvetic объяснил вам простой способ, как установить Webmin на CentOS 8 как обычно, так и с RPM.

Установка веб-сервера

Управление сервером Zabbix будет осуществляться посредством веб-интерфейса. Для этого необходимо установить и настроить веб-сервер, СУБД и PHP.

СУБД

В данному инструкции мы будем использовать сервер баз данных mariadb.

Для установки вводим:

dnf install mariadb-server

Разрешаем автозапуск сервера баз данных и запускаем mariadb:

systemctl enable mariadb —now

Задаем пароль для суперпользователя СУБД:

mysqladmin -u root password

* после ввода команды система потребует ввести пароль два раза.

Веб-сервер

Для наших целей будем использовать веб-сервер NGINX. Для его установки вводим команду:

dnf install nginx

Запускаем nginx и разрешаем его автозапуск:

systemctl enable nginx —now

PHP и PHP-FPM

Интерфейс zabbix разработан на PHP — наш веб-сервер должен обрабатывать скрипы, написанные на нем. На момент написания инструкции веб-интерфейс Zabbix Server работал под php версии 5.4. Если установить на CentOS PHP 7, при установке zabbix-web возникнут проблемы.

Устанавливаем php и необходимые компоненты:

dnf install php php-fpm php-mysqli

Для настройки php, открываем файл:

vi /etc/php.ini

Редактируем следующие параметры:

date.timezone = «Europe/Moscow»
max_execution_time = 300
post_max_size = 16M
max_input_time = 300

* где:

  • date.timezone — задаем временную зону для PHP.
  • max_execution_time — максимальное время работы скрипта. В данном примере, если он не успеет отработать за 300 секунд, PHP принудительно завершит его работу.
  • post_max_size — максимальный размер загружаемых данных на сервер средствами PHP.
  • max_input_time — время в секундах, за которое PHP должен разобрать входные данные GET и POST.

Запустим php-fpm:

systemctl enable php-fpm —now

NGINX + PHP

Для того, чтобы NGINX обрабатывал PHP, открываем конфигурационный файл:

vi /etc/nginx/nginx.conf

В разделах http — server добавляем настройку для обработки запросов php (location ~ \.php$):

http {
    …
    server {
        listen       80 default_server;
        …
        location ~ \.php$ {
            set $root_path /usr/share/nginx/html;
            fastcgi_pass unix:/run/php-fpm/www.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;
            include fastcgi_params;
            fastcgi_param DOCUMENT_ROOT $root_path;
        }
    }
    …
}

* где /usr/share/nginx/html — корневой путь хранения скриптов.

Проверяем настройки nginx:

nginx -t

И перезагружаем его:

systemctl restart nginx

В домашнем каталоге NGINX создаем index.php со следующим содержимым:

vi /usr/share/nginx/html/index.php

<?php phpinfo(); ?>

Веб-сервер готов для работы с Zabbix Web.

Установка Memcached

Первым этапом мы установим и настроим сервис memcached. Вторым — модуль php-memcached.

Сервис memcached

Выполняем установку пакетов:

dnf install memcached libmemcached

Создаем или открываем на редактирование конфигурационный файл для запуска сервиса:

vi /etc/sysconfig/memcached

Приводим его к виду: 

PORT=»11211″
USER=»memcached»
MAXCONN=»1024″
CACHESIZE=»512″
OPTIONS=»-l 127.0.0.1 -U 0″

* где PORT указываем на каком порту будет слушать сервис кэширования; USER — пользователь, под которым должен запускаться сервис; MAXCONN — максимальное число одновременных подключений; CACHESIZE — размер под кэш в мегабайтах; OPTIONS — параметры запуска (в данном примере наш сервис будет принимать запросы только с адреса локальной петли).

После разрешаем автозапуск и запускаем сервис кэширования:

systemctl enable memcached —now

Модуль для php

Переходим на страницу загрузки memcached сайта pecl.php.net и копируем ссылку на стабильную версию memcached:

Обратите внимание, что у каждой версии пакета есть свои требования к версии PHP. Внимательно изучаем, подойдет ли версия php-memcached для нашего сервера

Скачиваем архив, ссылку на который мы скопировали:

wget http://pecl.php.net/get/memcached-3.1.5.tgz

Устанавливаем пакеты, необходимые для сборки php-pecl-memcached:

dnf install php-devel zlib-devel make

dnf —enablerepo=PowerTools install libmemcached-devel

Распаковываем скачанный архив:

tar -xvzf memcached-*.tgz

Переходим в распакованный каталог:

cd memcached-*/

Запускаем компиляцию php-расширения:

phpize

Конфигурируем исходник:

./configure

Собираем расширение:

make

Копируем созданный модуль в каталог php-модулей:

cp modules/memcached.so /usr/lib64/php/modules/

Создаем конфигурационной файл для подключения расширения:

vi /etc/php.d/20-memcached.ini

extension=memcached.so

После установки модуля перезапускаем php-fpm:

systemctl restart php-fpm

… или вводим команду:

php -m | grep memcached

Мы должны получить:

memcached

Установка Webmin на CentOS

Самый простой и рекомендуемый способ установки Webmin на компьютеры CentOS — включить репозиторий Webmin и установить пакет Webmin через командную строку.

Выполните следующие шаги для установки Webmin в CentOS:

  1. Откройте выбранный вами редактор и создайте следующий файл репозитория:

    Вставьте следующее содержимое в файл:

    /etc/yum.repos.d/webmin.repo

    Сохраните файл и закройте редактор.

    Затем импортируйте ключ Webmin GPG, используя следующую команду:

    Установите последнюю версию Webmin, набрав:

    Все зависимости будут разрешены автоматически. После завершения установки отобразится следующий вывод:

    Сервис Webmin запустится автоматически.

Это оно! На данный момент вы успешно установили Webmin на вашем сервере CentOS 7.

Новое в Linux CentOS 8?

Пакетный менеджер DNF

Обладает более высокой скоростью работы и поддерживает Python 3, что важно в свете перехода дистрибутивов на данную версию Python по умолчанию. Потреблением оперативной памяти тоже ниже по сравнению с YUM

В терминале можно использовать команды пакетного менеджера YUM, они будут перенаправлены на DNF.
Разделение на два репозитория BaseOS и AppStream:содержимое репозитория BaseOS предназначено для предоставления базового набора функциональных возможностей ОС, которые обеспечивают основу для всех установок. Этот контент доступен в формате RPM, и на него распространяются условия поддержки, аналогичные тем, что были в предыдущих выпусках CentOS;
содержимое репозитория AppStream включает дополнительные приложения, средства разработки и другое ПО. Содержимое в AppStream доступно в одном из двух форматов — формат RPM и расширение формата RPM, называемое модулями.

Ядро Linux 4.18. Обновлены версии Ruby 2.5, PHP 7.2, Perl 5.26, Node.js 10, Java 8 и 11, Clang/LLVM Toolset 6.0, .NET Core 2.1, Git 2.17, Mercurial 4.8, Subversion 1.10. В состав включена система сборки CMake (3.11).
Вместо iptables, ip6tables, arptables и ebtables теперь по умолчанию используется пакетный фильтр nftables.
Добавлена новая утилита Composer, предоставляющая инструменты для создания кастомизированных загрузочных системных образов, пригодных для развёртывания в окружениях различных облачных платформ.
Удалена поддержка файловой системы Btrfs. В состав больше не входят модуль ядра btrfs.ko, утилиты btrfs-progs и пакет snapper.
Объявлены устаревшими и теперь не поставляются по умолчанию классические скрипты для настройки сети (network-scripts). Для обеспечения обратной совместимости вместо скриптов ifup и ifdown добавлены обвязки над NetworkManager, работающие через утилиту nmcli.

Для скачивания образа boot CentOS 8 можно использовать следующую ссылку https://mirror.yandex.ru/centos/8/isos/x86_64/.

Установка php в CentOS 8

Установка php в Centos 8 сильно упростилась по сравнению с предыдущей версией, потому что в базовом репозитории хранится актуальная версия php 7.2, которой можно пользоваться. Пока нет необходимости подключать сторонние репозитории, так как версия 7.2 вполне свежа и актуальна. Если у вас нет необходимости использовать что-то новее, то можно остановиться на этой версии.

Устанавливаем php в CentOS 8, а так же некоторые популярные модули, которые могут пригодиться для того же phpmyadmin.

# dnf install php php-cli php-mysqlnd php-json php-gd php-ldap php-odbc php-pdo php-opcache php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap php-zip

Выполним перезапуск apache:

# systemctl restart httpd

Создадим файл в директории виртуального хоста и проверим работу php:

# mcedit /web/sites/z.serveradmin.ru/www/index.php
<?php phpinfo(); ?>
# chown apache. /web/sites/z.serveradmin.ru/www/index.php

Заходим по адресу http://z.serveradmin.ru/index.php

Вы должны увидеть вывод информации о php. Если что-то не так, возникли какие-то ошибки, смотрите лог ошибок виртуального хоста, php ошибки будут тоже там. Если вам необходима более свежая версия php, то читайте статью по обновлению php 7.2 до 7.4.

Где лежит php.ini

После установки часто возникает вопрос, а где хранятся настройки php? Традиционно они находятся в едином файле настроек. В CentOS php.ini лежит в /etc, прямо в корне. Там можно редактировать глобальные настройки для всех виртуальных хостов. Персональные настройки каждого сайта можно сделать отдельно в файле конфигурации виртуального хоста, который мы сделали раньше. Давайте добавим туда несколько полезных настроек:

# mcedit /etc/httpd/conf.d/z.serveradmin.ru.conf

Добавляем в самый конец, перед </VirtualHost>

php_admin_value date.timezone 'Europe/Moscow'
php_admin_value max_execution_time 60
php_admin_value upload_max_filesize 30M

Для применения настроек нужно сделать restart apache. Если у вас полностью дефолтная установка, как у меня, то скорее всего вы увидите ошибку.

Суть  ошибки в том, что у нас не загружен модуль mod_php. Проверим, где он подключается. Это файл /etc/httpd/conf.modules.d/15-php.conf.

<IfModule !mod_php5.c>
  <IfModule prefork.c>
    LoadModule php7_module modules/libphp7.so
  </IfModule>
</IfModule>

Тут стоит проверка на запуск модуля. Он загружается только, если у нас загружен модуль prefork. Давайте попробуем его загрузить принудительно. Для этого комментируем все строки, кроме основной.

LoadModule php7_module modules/libphp7.so

Проверяем конфигурацию apache.

# apachectl -t

Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe.

Получили новую ошибку. Смысл в том, что изначально apache сконфигурирован на работу модуля mpm_event, он подключается в конфиге /etc/httpd/conf.modules.d/00-mpm.conf.

LoadModule mpm_event_module modules/mod_mpm_event.so

Стандартный модуль mod_php скомпилирован с поддержкой модуля mpm_prefork. С другими он работать не будет. Таким образом, чтобы у нас нормально заработал php, нам надо вместо модуля mpm_event подключить модуль mpm_prefork. Для этого в конфиге 00-mpm.conf закомментируем подключение mpm_event_module и раскомментируем prefork.

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

После этого проверяйте конфигурацию и перезапускайте apache. Все должно заработать. Теперь в выводе phpinfo можно увидеть изменение настроек.

Я подробно разобрал эти ошибки, чтобы у вас было понимание, как все устроено и куда смотреть в случае проблем. Более подробно о работе и выборе mpm модулей читайте в официальной документации apache — http://httpd.apache.org/docs/2.4/mpm.html.

Web сервер на CentOS 8

Итак, наш веб сервер centos будет состоять из трех основных компонентов — http сервера apache, интерпретатора языка программирования php и сервера баз данных mysql. Познакомимся немного с каждым из них:

  1. Apache — http сервер или просто веб сервер апач. Является кросплатформенным ПО, поддерживающим практически все популярные операционные системы, в том числе и Windows. Ценится прежде всего за свою надежность и гибкость конфигурации, которую можно существенно расширить благодаря подключаемым модулям, которых существует великое множество. Из недостатков отмечают большую требовательность к ресурсам, по сравнению с другими серверами. Держать такую же нагрузку, как, к примеру, nginx, apache не сможет при схожих параметрах железа.
  2. PHP — язык программирования общего назначения, который чаще всего применяется в веб разработке. На сегодняшний день это самый популярный язык в этой области применения. Поддерживается практически всеми хостинг-провайдерами.
  3. Mysql — система управления базами данных. Завоевала свою популярность в среде малых и средних приложений, которых очень много в вебе. Так что, как и php, на сегодняшний день является самой популярной бд, использующейся на веб сайтах. Поддерживается большинством хостингов. В CentOS вместо mysql устанавливается mariadb — ответвление mysql. Они полностью совместимы, возможен в любой момент переход с одной субд на другую и обратно. Я встречал информацию, что mariadb пошустрее работает mysql и люди потихоньку перебираются на нее. На практике мне не довелось это наблюдать, так как никогда не работал с нагруженными базами данных. А в обычных условиях разница не заметна.

Подопытным сервером будет выступать виртуальная машина от ihor, характеристики следующие:

Процессор 2 ядра
Память 3 Gb
Диск 30 Gb SSD

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

Изменения 8-й версии

Пройдемся по основным нововведениям CentOS 8, которые показались интересными лично мне. Функционально это полная копия RHEL 8, поэтому все его изменения на 100% актуальны для центос. Вот список наиболее интересных изменений:

  1. Разделение основного репозитория на 2 — BaseOS и AppStream. Первый будет работать как и раньше, а второй — appstream, сделали для того, чтобы была возможность устанавливать разные версии пакетов на сервер. Этот репозиторий поддерживает новый модульный формат rpm пакетов.
  2. Переход на пакетный менеджер DNF, который поддерживает модульный формат пакетов. Прощай YUM. Теперь это просто алиас для запуска dnf.
  3. Традиционно обновился весь софт и ядро (4.18) Linux. Теперь мы какое-то время будем иметь свежий софт. Прощай php5.4 из базового репозитория :) Я не буду по тебе скучать. Здравствуй php 7.2 и Python 3.6 из коробки.
  4. Замена iptables на nftables. Тут для меня самые серьезные изменения. Iptables я активно использую и настраиваю почти на всех серверах. С nftables не знаком вообще. Надо срочно переучиваться и осваивать новый функционал. Будут статьи на эту тему. Пожалуй этому нововведению я совсем не рад. Лично меня iptables устраивали целиком и полностью в первую очередь тем, что они используются почти везде. Можно брать готовый набор правил и спокойно переносить между серверами с разными ОС. Именно поэтому я всегда пользуюсь голыми iptables, а не надстройками над ними в виде firewalld или ufw. Мне достаточно знать только iptables, чтобы настроить firewall на любом linux сервере.
  5. Убрана поддержка Btrfs. Лично я ей никогда не пользовался, но я знаю, что это популярная штука и удаление ее поддержки значительное событие.
  6. До кучи обновился openssl и tls до последних версий 1.1.1 и 1.3. Некоторое время назад приходилось отдельно собирать пакеты для использования свежих версий. Теперь это на некоторое время ушло в прошлое, пока текущий релиз CentOS 8 не устареет. Года 2-3 будем жить спокойно.
  7. Network scripts для настройки сети объявлены устаревшими и по дефолту не поддерживаются. Можно поставить отдельно пакет для их работы. Для настройки сети надо использовать исключительно NetworkManager, который лично я предпочитаю отключать сразу после установки сервера. Не знаю, чем network-scripts не угодили. Простой и удобный инструмент.

Более подробно с изменениями 8-й версии можете познакомиться на opennet или почитать полный список в оригинале на сайте redhat. Я полистал последний. Там в overview есть ссылки на подробное описание по каждому компоненту системы.

Step 2 — Adding a Valid Certificate with Let’s Encrypt

Webmin is already configured to use HTTPS, but it uses a self-signed, untrusted certificate. Let’s replace it with a valid certificate from Let’s Encrypt.

Navigate to in your web browser, replacing with the domain name you pointed at your server.

Note: When logging in for the first time, you will see an “Invalid SSL” error. This is because the server has generated a self-signed certificate. Allow the exception to continue so you can replace the self-signed certificate with one from Let’s Encrypt.

You’ll be presented with a login screen. Sign in with the username root and your current password for the root user.

Once you log in, the first screen you will see is the Webmin dashboard. Before you can apply a valid certificate, you have to set the server’s hostname. Look for the System hostname field and lick on the link to the right, as shown in the following figure:

This will take you to the Hostname and DNS Client page. Locate the Hostname field, and enter your Fully-Qualified Domain Name into the field. Then press the Save button at the bottom of the page to apply the setting.

After you’ve set your hostname, click on Webmin on the left navigation bar, and then click on Webmin Configuration.

Then, select SSL Encryption from the list of icons, and then select the Let’s Encrypt tab. You’ll see a screen like the following figure:

Using this screen, you’ll tell Webmin how to obtain and renew your certificate. Let’s Encrypt certificates expire after 3 months, but we can instruct Webmin to automatically attempt to renew the Let’s Encrypt certificate every month. Let’s Encrypt looks for a verification file on our server, so we’ll configure Webmin to place the verification file inside the folder , which is the folder that the Apache web server you configured in the prerequisites uses. Follow these steps to set up your certificate:

  1. Fill in Hostnames for certificate with your FQDN.
  2. For Website root directory for validation file, select the Other Directory button and enter .
  3. For Months between automatic renewal section, deselect the Only renew manually option by typing into the input box, and selecting the radio button to the left of the input box.
  4. Click the Request Certificate button. After a few seconds, you will see a confirmation screen.

To use the new certificate, simply reload the page. Your browser should now indicate that the certificate is valid.

Шаг 2 — Проверка веб-сервера

Apache не запускается автоматически на CentOS после завершения установки. Вам нужно будет запустить процесс Apache вручную:

Убедитесь, что служба запущена с помощью следующей команды:

Если служба запущена, вы получите значение (активна) в статусе:

Как видно из результата, служба успешно запущена. Однако лучше всего протестировать ее запуск посредством запроса страницы из Apache.

Откройте страницу Apache по умолчанию, чтобы подтвердить работу программного обеспечения через ваш IP-адрес: Если вы не знаете IP-адрес вашего сервера, есть несколько способов узнать его с помощью командной строки.

Введите для возврата к командной строке, а затем введите следующее:

Эта команда отобразит все сетевые адреса хоста, и вы получите несколько IP-адресов, разделенных пробелами. Вы можете попробовать каждый из них в браузере, чтобы убедиться в их работоспособности.

Также в качестве альтернативы вы можете использовать для запроса IP-адреса из , который предоставит вам ваш публичный IPv4-адрес, видимый в другом расположении в Интернете:

Когда вы узнаете IP-адрес вашего сервера, введите его в адресную строку браузера:

Вы увидите стандартную веб-страницу Apache в CentOS 8:

Эта страница показывает, что Apache работает корректно. Также на ней содержится информация о важных файлах Apache и расположении директорий.

Method #2 Installing Webmin on CentOS using RPM Package

In this method, we will install Webmin on the CentOS system using the RPM package available at Webmin’s official website.

1. Install Dependencies

First, install some dependencies using the below command:

$ sudo yum -y install openssl perl perl-Net-SSLeay perl-IO-Tty perl-Encode-Detect

Step 2: Download Webmin RPM

To download the Webmin RPM package, you can visit the Webmin Downloads site and download the RPM package for the CentOS system. Or you can use the below command to download it:

$ wget http://prdownloads.sourceforge.net/webadmin/webmin-1.981-1.noarch.rpm

Step 3: Install Webmin

Now in order to install Webmin RPM, use the command below:

$ sudo rpm -U webmin-1.981-1.noarch.rpm

Now the installation of Webmin will be started. After the installation is completed, you will see a message in the output telling you that the installation of Webmin is completed and how you can log in to its web interface.

After the installation is completed using any of the methods above, move on to the next step to configure yoru firewall.

Топ-10 программ для контроля за сетевыми подключениями

Данные о компании могут передаваться по локальной сети. В связи с этим актуальность приобретают программы, предотвращающие утечку информации. Специальное программное обеспечение обеспечивает полную информационную защиту компании от распространения конфиденциальной информации.

ПО для мониторинга позволяет выявить сведения на подключенных к сети компьютерах и сервере.

После осуществления лицом попытки передать сведения с локальной сети за пределы коммерческой фирмы устранить следы правонарушения невозможно. Утилиты обладают следующими функциями:

  • контроль сетевых портов;
  • просмотр историй при использовании опции поиска.

Действия пользователя, работающего за компьютером, регистрирует специальное программное обеспечение — кейлоггер. Программа фиксирует нажатие клавиш сотрудником, а все данные вносятся в отчет. Перечень посещенных сайтов нельзя стереть или удалить из памяти. Утилита осуществляет мониторинг сетевых папок в режиме онлайн.

Файрволы защищают персональные компьютеры от удаленного подключения. Многие программы предполагают индивидуальную настройку с целью защиты коммерческой информации, архивов и платежных реквизитов.

How to access Webmin in CentOS 8

Step 1

 http: // IP_address: 10000 http: // Name _Equipment: 10000 

Step 2

Step 3

Step 4

Center panel
In the central panel we have the following:

At the bottom we can see the recent logins, as well as the use of hard disk.

Webmin
In the «Webmin» section we find some aspects of utility configuration such as:

System
In the «System» section it will be possible:

Servers
In the «Servers» section we can access configurations such as:

In this case we must first install each of the applications for Webmin to access them:

Others
In the «Other» section we can see a series of utilities such as:

Net
In «Red», as the name says it all, we can configure:

Hardware
In «Hardware» we can configure:

Cluster
In the «Cluster» section it is possible to configure everything related to clusters as:

Un-used modules â€
In the “Un-used modules†line we can see all the modules that are no longer active from Webmin:

Reset modules
The «Reset modules» option is responsible for resetting Webmin modules in CentOS 8.

At the bottom we find some icons where we can perform tasks such as:

Access the terminal.

Change the theme of the interface.

Access favorites.

Log out, etc.

You have learned to install Webmin through the wget command, but now TechnoWikis will explain another equally effective method.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: