5 лучших Linux Server ОС для серверного использования
Операционная система Linux широко распространение по сему миру. В то время как некоторые дистрибутивы Linux подходят для опытных пользователей, другие более просты и идеально подходят для перехода с Windows. Дистрибутивы Linux часто получают выгоду от сильных ресурсов сообщества.
Если вы хотите работать в качестве системного администратора, вам может быть интересна статья про 11 команд на Linux для работы в качестве системного администратора .
Несмотря на то, что дистрибутивы Linux предлагают отличные настольные среды, Linux также может отлично подойти для настройки серверов. Linux обычно предлагает расширенные разрешения, повышенную гибкость и стабильность.
1. Ubuntu Server
Ubuntu, пожалуй, самая известная операционная система Linux. Ubuntu и его варианты предлагают отличный пользовательский опыт. Ubuntu Server доступен в двух версиях: LTS и роллинг-релиз . Выпуск LTS Ubuntu Server может похвастаться пятилетним циклом поддержки. Хотя цикл поддержки не составляет пять лет, вариант без LTS включает девять месяцев обновлений безопасности и обслуживания.
Хотя Ubuntu и Ubuntu Server очень похожи, Ubuntu Server предлагает различные удобства в использования для серверной части. В частности, Ubuntu Server предоставляет OpenStack Mitaka, Nginx и LXD. Такие включения предназначены для системных администраторов. Используя Ubuntu Server, вы можете раскрутить веб-серверы, развернуть контейнеры и многое другое. Кроме того, он готов для запуска в качестве сервера из коробки.
Кому следует использовать Ubuntu Server : если вы новичок в Linux или серверных операционных системах, Ubuntu — отличный выбор. Ubuntu остается одним из самых популярных дистрибутивов Linux отчасти благодаря его удобству для пользователя. Соответственно, Ubuntu Server — фантастическая операционная система Linux-сервера начального уровня. Он великолепен как медиа-сервер, игровой сервер или почтовый сервер.
2. openSUSE
Linux openSUSE дебютировал в 1993 году. В 2015 году открытый вариант openSUSE перешел на SUSE Linux Enterprise (SLE). Существует два производных openSUSE: Leap и Tumbleweed . Leap имеет более длительные циклы выпуска, тогда как Tumbleweed — это роллинг-релиз. Tumbleweed лучше подходит для опытных пользователей благодаря своим современным пакетам, таким как ядро Linux и SAMBA. Leap лучше для стабильности.
Стандартные инструменты позиционируют openSUSE как фантастическую серверную операционную систему Linux. openSUSE включает openQA для автоматического тестирования, развертывание образа Kiwi для Linux на нескольких платформах, конфигурацию YaST для Linux и комплексный менеджер пакетов Open Build Service. Отказавшись от предыдущего девятимесячного цикла выпуска и сосредоточившись на стабильности, такой как SLE, openSUSE стал жизнеспособной серверной средой Linux.
Кому следует использовать openSUSE : openSUSE больше подходит для опытных пользователей, таких как системные администраторы. Он отлично подходит как веб-сервер или домашний сервер. Системные администраторы получают выгоду от таких инструментов, как Kiwi, YaST, OBS и openQA. Универсальность openSUSE делает его одной из лучших серверных операционных систем Linux. В дополнение к мощным серверным возможностям, openSUSE поддерживает прекрасную рабочую среду.
3. CentOS
CentOS обеспечивает стабильную среду для сервера. Это производная от Red Hat Enterprise Linux (RHEL) с открытым исходным кодом. Таким образом, CentOS обеспечивает работу с сервером корпоративного класса. Спонсируемая Red Hat операционная система использует точный исходный код, который можно найти в RHEL. CentOS использует менеджер пакетов RPM. В 2010 году данные опроса показали, что около 30 процентов всех серверов Linux работают на CentOS .
Примечательно, что CentOS хорошо работает на мэйнфреймах . Для пользователей, предпочитающих графический интерфейс, доступны KDE и GNOME. CentOS можно использовать как простую рабочую среду.
Кому следует использовать : CentOS обеспечивает функциональность и стабильность Red Hat Enterprise Linux. Поэтому он идеально подходит для продвинутой серверной операционной системы Linux. Используйте CentOS, если вы ищете бесплатную альтернативу RHEL. Однако CentOS довольно удобен для новичков, потому что он сохраняет менеджер пакетов. В целом, CentOS лучше всего подходит в качестве бесплатной альтернативы Red Hat Enterprise Linux.
4. ClearOS
ClearOS специально разработан для серверов, шлюзов и сетевых систем. Данная ОС имеет функции улучшения безопасности. Есть брандмауэр по умолчанию, инструменты управления пропускной способностью, почтовый сервер и обнаружение вторжений.
Несмотря на то, что есть и платные версии ClearOS, Community Edition остается бесплатным. Кроме того, обновления ClearOS полностью бесплатны.
Кому следует это использовать : ClearOS — это выделенный работающий сервер Linux. Его обширный магазин приложений позиционирует ClearOS как дистрибутив для гуру по Linux.
5. Debian
Debian является одной из лучших операционных систем для Linux-серверов. Поскольку Debian был запущен в 1993 году, а его первый стабильный выпуск был в 1996 году, он невероятно безопасен. Многие дистрибутивы Linux, включая Ubuntu, основаны на Debian. Зачем использовать Debian как основу другой операционной системы? Стабильность.
Соответственно, Debian часто используется для серверов из-за его проверенной временем устойчивости. В Debian есть менеджер пакетов, инструменты APT и различные интерфейсы, такие как GDebi. Debian может похвастаться впечатляющей совместимостью приложений, безопасностью и стабильностью.
Кому следует это использовать : Debian предлагает фантастическую серверную среду. Если вы ищете простой сервер, такой как почтовый, веб, игровой или медиасервер, Debian достаточно прост в настройке.
Заключение
Несмотря на то, что вы можете найти множество серверных операционных систем Linux, каждая из них лучше всего подходит для разных групп пользователей. Более того, несерверный релиз LTS прекрасно работает как серверная операционная система Linux. Debian — отличный пример. Хотя Debian не является конкретно серверным дистрибутивом, он может похвастаться характеристиками серверного дистрибутива. А именно стабильность и безопасность. Все же конечный выбор остается за вами.
Если статья была для вас полезной, просим поставить лайк и подписаться на наш канал . Также посетите наш сайт и наш YouTube канал , чтобы увидеть больше подобного контента.
Welcome
В результате файл “/var/www/sites/site1/index.html” будет содержать одну html-строку:
Welcome
3. Конфигурация Apache-сервера
Конфигурационные файлы сайтов находятся в каталоге “/etc/apache2/sites-available/”. Создадим конфигурационный файл для нового виртуального хоста взяв за основу конфигурацию по умолчанию из файла “000-default.conf”
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Откроем файл “site1.conf” и изменим параметр “DocumentRoot”. В качестве значения нужно указать путь к новому сайту, в нашем случае это “/var/www/sites/site1”
На данном этапе нам не требуется настройка одновременной работы нескольких сайтов, поэтому отключим сайт по умолчанию и включим новый сайт. Для применения изменений перезагружаем конфигурацию сервера.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Снова переходим по ссылке “http://[ip_адрес_сервера]” и убеждаемся, что вместо стандартной страницы приветствия отображается наша новая страница.
Настройка HTTP-сервера завершена, переходим к следующему этапу.
Настройка FTP-сервера
1. Установка
Устанавливаем ftp-сервер и дополнительный пакет “db-util”, который потребуется для настройки виртуальных пользователей.
apt install vsftpd db-util
2. Создание локальной учетной записи
Сервер vsftpd позволяет очень гибко настраивать права доступа. Для решения наших задач ftp-пользователям необходимо обеспечить следующие возможности:
- полный доступ к содержимому директории “/var/www/sites/”;
- невозможность выхода за пределы директории “/var/www/”;
- подключение с использованием виртуальной учетной записи;
Создадим локальную учетную запись “virtual” без возможности входа в систему, с домашней директорией “/var/www/”. Эта учетная запись будет использоваться для подключения виртуальных ftp-пользователей.
useradd -d /var/www virtual
По умолчанию, владельцем директории “/var/www” является “root”. Для того, того, чтобы ftp-пользователи могли изменять содержимое сайтов, изменим владельца каталога “/var/www/sites/”, включая вложенные папки на “virtual”.
chown -R virtual:root /var/www/sites
В результате изменения прав, пользователь “virtual” сможет просматривать содержимое каталога “/var/www/” и записывать во вложенный каталог “/var/www/sites/”
3. Конфигурация
Основная конфигурация хранится в файле “/etc/vsftpd.conf”, приводим его к следующему виду:
#Включаем виртуальных пользователей
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#Настраиваем права
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#задаем параметры запуска
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. Создание базы данных
База данных необходима для хранения виртуальных учетных записей.
Предварительно создадим в домашнем каталоге простой текстовый файл “users.txt” и запишем логины и пароли виртуальных пользователей в чередующиеся строки. Например нам нужен виртуальный пользователь с логином “ftp” и паролем “Qwe123”, тогда содержимое файла будет таким:
Создаем базу данных
db_load -T -t hash -f
Меняем стандартное содержимое PAM файла “/etc/pam.d/vsftpd” на следующие строки.
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
Обратите внимание, что в различных дистрибутивах расположение библиотеки “pam_userdb.so” может отличаться, при необходимости путь к файлу нужно скорректировать.
Для применения изменений перезагружаем vsftpd сервер.
systemctl restart vsftpd
Настройка FTP-сервера завершена.
Данные для подключения:
- ftp://[ip_адрес_сервера]
- Логин: ftp
- Пароль: Qwe123
Настройка PHP-сервера
1. Установка
На текущий момент последней стабильной версией PHP является php 7.4.5, которая отсутствует в официальных репозиториях Ubuntu. Подключим сторонний репозиторий и установим последнюю версию PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Проверка
Для того, чтобы PHP код мог быть исполнен, файл веб страницы должен иметь расширение “.php”. Переименовываем тестовою страницу
cd /var/www/sites/site1/
mv index.html index.php
Добавляем в файл “/var/www/sites/site1/index.php” строку php-кода. В результате содержимое файла будет таким:
Welcome
Сохраняем изменения и проверяем результат в браузере.
Если вы видите результат работы функции “phpinfo()”, значит интерпретатор PHP работает корректно. Приступаем к следующему этапу.
Настройка MySQL (MariaDB)
1. Установка
Устанавливаем MariaDB и PHP-модуль для работы с MySQL, после завершения установки перезагружаем Apache
apt install mariadb-server php-mysql
systemctl restart apache2
Для проверки обновим тестовую страницу и в таблице с конфигурацией PHP и перейдем к разделу PDO. Наличие секции “PDO_mysql” говорит о корректной установке драйвера для работой с базой данных Mysql.
Для дальнейшей работы необходимо выполнить первоначальную настройку безопасности MariaDB, во время которой для пользователя “root” устанавливается пароль, запрещается удаленный вход и удаляются гостевые учетные записи.
На первом шаге необходимо ввести пароль пользователя «root» для входа в СУБД или нажать Enter, если пароль не задан. Так как после установки учетная запись «root» не имеет пароля, нажимаем “Enter”.
Обратите внимание, что в MariaDB существуют собственные учетные записи, которые не имеют отношения к учетным записям операционной системы. Речь идет о пользователе «root» в MariaDB.
Далее конфигуратор предложит задать пароль для пользователя root, нажимаем “y” для подтверждения и вводим новый пароль, в нашем случае “Qwe123”
На все последующие запросы просто нажимаем “y” до окончания настройки.
Данные для входа в MariaDB:
Настройка phpMyAdmin
1. Установка
Устанавливаем обязательное PHP-расширение mbstring.
apt install php-mbstring
В официальном репозитории размещена устаревшая версия phpMyAdmin, поэтому выполним установку в ручном режиме.
Заходим на официальный сайт проекта “https://www.phpmyadmin.net/” и скачиваем архив актуальной версии.
Копируем архив на сервер в каталог “/var/www/sites/” используя любой ftp-клиент.
Распаковываем архив, и для удобства, переименовываем извлеченную папку в “phpMyAdmin”. Для распаковки zip-архива предварительно установим утилиту “unzip”. После распаковки архив можно удалить.
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
Создаем папку “/var/www/sites/phpMyAdmin/tmp” для хранения временных файлов с полными доступом для всех. Если этого не сделать phpMyAdmin сообщит об отсутствии доступа в временной папке.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Создание псевдонима
Так как phpMyAdmin не является отдельным виртуальным хостом и находится за пределами корневой директории сайта, настроим псевдоним для возможности доступа.
Открываем файл “/etc/apache2/mods-available/alias.conf” и вставляем строку
Alias /pma “/var/www/sites/phpMyAdmin»
Перезагружаем конфигурацию Apache для применения изменений.
systemctl reload apache2
Псевдоним настроен. Сейчас мы можем входить в phpMyAdmin по ссылке “http://[ip_адрес_сервера]/pma”
3. Подготовка базы данных
Так как при первоначальной настройке MariaDB мы запретили использование учетной записи root для удаленного подключения, необходимо создать новую учетную запись с полными правами, которая будет использоваться для входа в phpMyAdmin.
Кроме того, для работы дополнительных функций phpMyAdmin необходима служебная база данных и учетная запись для доступа к ней.
Создадим учетные записи
GRANT ALL PRIVILEGES ON *.* TO ‘pma’@’localhost’ IDENTIFIED BY ‘Qwe123’ WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO ‘pmaservice’@’localhost’ IDENTIFIED BY ‘Qwe123’ WITH grant option;
Обратите внимание, что имя базы данных во втором запросе заключено в обратные апострофы: “… ON `phpmyadmin`.* TO ‘pma’@’localhost’ IDENTIFIED BY …”,
В результате в MariaDB будет создано две учетные записи:
- Логин: pma, пароль: Qwe123
Учетная запись имеет полные права и будет использоваться для входа в phpMyAdmin - Логин: pmaservice, пароль:Qwe123
Служебная учетная запись необходимая для работы дополнительных функций.
На следующем шаге эти учетные данные должны быть указаны в конфигурационном файле “config.inc.php”
Далее необходимо импортировать базу данных из файла “phpMyAdmin/sql/create_tables.sql”. Выполним импорт средствами phpMyAdmin.
Открываем браузер и переходим по ссылке “http://[ip_адрес _сервера]/pma”
Вводим логин “pma”, пароль “Qwe123”
Переходим на вкладку “Импорт”, нажимаем кнопку “Выберите файл” и выбираем файл ”sql/create_tables.sql” в корневой директории phpMyAdmin. Предполагается что на локальном компьютере существует папка с файлами “phpMyAdmin”, если необходимо, распакуйте архив.
Для завершения импорта нажимаем кнопку “Вперед”.
4. Конфигурация
Копируем файл конфигурации из шаблона
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Открываем конфигурационный файл “/var/www/sites/phpMyAdmin/config.inc.php” и вносим следующие изменения:
- Задаем произвольное значение длиной 32 символа для параметра “$cfg[‘blowfish_secret’]”. Можно воспользоваться любым генератором паролей.
- Снимаем комментарии со всех строк раздела “phpMyAdmin configuration storage settings” и указываем для параметров “controluser” и “controlpass” логин и пароль служебной учетной записи MariaDB, созданной на предыдущем шаге. В нашем случае логин — pmaservice, пароль — Qwe123
Сохраняем изменения. Настройка завершена.
Данные для входа в phpMyadmin:
- http://[ip_адрес_сервера]/pma/
- Логин: pma
- Пароль: Qwe123
Установка и настройка WordPress на сервер Linux
1. Размещение файлов дистрибутива WP
Заходим на официальный сайт “https://ru.wordpress.org/” и скачиваем архив на локальный компьютер.
Загружаем архив на сервер в каталог “/var/www/sites/” и распаковываем, файлы будут извлечены в папку “wordpress”.
Копируем содержимое папки “/var/www/sites/wordpress/” в корневую директорию сайта “/var/www/sites/site1/”
Так как копирование файлов выполнялось из консоли с root-правами еще раз изменяем владельца каталога “/var/www/sites/”, включая содержимое на virtual. Это нужно для восстановления полного доступа при подключении через ftp-клиент.
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. Создание базы данных для WordPress
Входим в PHPMyAdmin и нажимаем “Создать БД”. Указываем произвольное имя базы данных, в нашем случае “wordpress_db” и нажимаем кнопку “Создать”.
Выделяем в левой части окна созданную БД и нажимаем кнопку “Привилегии”
Далее нажимаем “Добавить учетную запись пользователя”.
В открывшемся окне вводим логин и пароль (wpservice / Qwe123), помечаем опцию “Предоставить все привилегии в базе данных wordpress_db” и нажимаем кнопку “Вперед”
На следующей странице нажимаем “Отметить все” для установки всех привилегий уровня базы данных и нажимаем “Вперед”.
3. Конфигурация WP на сервере под Linux
Переходим в корневую директорию сайта и копируем из шаблона конфигурационный файл.
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Открываем файл “wp-config.php” и вводим параметры подключения к базе данных, созданной на предыдущем шаге и сохраняем изменения.
4. Установка CMS WordPress
Открываем браузер и переходим по ссылке “http://[ip_адрес_сервера]/wp-admin/install.php”
Заполняем предложенные поля и нажимаем “Установить WordPress” Имя пользователя и пароль указываем произвольные, в нашем случае логин — wpadmin, пароль — Qwe123
Эти учетные данные будут использоваться для входа в WordPress.
После завершения установки переходим по ссылке “http://[ip_адрес_сервера]/wp-login.php”, вводим учетные данные, указанные на предыдущем шаге и входим в WordPress
На главной странице сайта будет отображаться один из шаблонов WordPress
Данные для входа в WordPress: