О настройке Linux-сервера на примере Ubuntu
Содержание:
Сервер Linux — это компьютер под управлением ОС «Линукс», выполняющий различные функции: размещение веб-сайтов, управление базами данных и обработка сетевых служб. Он оснащен необходимыми аппаратными компонентами и работает на собственном ядре Linux, предоставляя услуги или приложения по сети. Linux является операционной системой с открытым исходным кодом, которую возможно настроить для различных целей. Серверы Linux могут работать на физических устройствах или быть виртуальными, отличаются высокой масштабируемостью и легко адаптируются к рабочим нагрузкам.
Преимущества и выгоды Linux-сервера
Система «Линукс» заслужила популярность благодаря преимуществам и выгодам, размещенным в таблице ниже.
Преимущества | Описание |
---|---|
Экономическая эффективность | Открытый исходный код позволяет использовать и распространять систему бесплатно, без приобретения лицензии. |
Стабильность и надежность | Система способна работать при сильных нагрузках и поддерживать высокий уровень безотказной работы, что делает ее подходящей для критически важных приложений и служб. Linux-серверы реже сталкиваются с перебоями и простоями, обеспечивая более стабильную и надежную работу. |
Гибкость и настраиваемость | «Линукс» предлагает широкий выбор дистрибутивов: Ubuntu Server, CentOS, Debian и Red Hat Enterprise Linux (RHEL), позволяющих пользователям адаптировать систему под свои потребности. |
Безопасность | Надежные механизмы защиты, улучшаемые благодаря открытому исходному коду, минимизируют уязвимости и риски кибератак. Серверы Linux включают встроенные функции безопасности: управление доступом, брандмауэры, шифрование и регулярные обновления. |
Масштабируемость | Этот фактор позволяет справляться с ростом рабочих нагрузок и требований к ресурсам. Linux-серверы легко адаптируются как для небольших стартапов, так и для крупных корпоративных инфраструктур, используя технологии вроде Docker и Kubernetes для повышения эффективности. |
Производительность и эффективность | Высокие показатели достигаются благодаря облегченной архитектуре, позволяющей серверам эффективно работать на различном оборудовании. Linux демонстрирует отличные показатели скорости, использования ресурсов и отзывчивости, что делает их оптимальными для требовательных задач. |
Поддержка | Включает активное участие разработчиков, администраторов и энтузиастов, обеспечивающее быстрое решение проблем и доступ к обширным ресурсам. Это помогает пользователям решать задачи, развивать навыки и оставаться в курсе технологических новинок. |
Где используют Linux Server
Linux-серверы находят применение в разнообразных областях и приложениях:
- Web-хостинг. Linux-серверы поддерживают популярные веб-серверные программы (Apache, Nginx и LiteSpeed), что подходит для размещения веб-сайтов, блогов, интернет-магазинов и систем управления контентом (CMS), включая WordPress, Drupal и Joomla.
- Управление базами данных. Серверы «Линукс» хранят и управляют базами данных с помощью программного обеспечения MySQL, MariaDB, PostgreSQL, MongoDB и Redis. Стабильность, производительность и функции безопасности делают их предпочтительными для серверов баз данных в корпоративных средах.
- Хостинг приложений: На Linux-серверах размещается широкий спектр приложений и сервисов, включая бизнес-приложения, инструменты для совместной работы, платформы обмена сообщениями и офисные пакеты. Среди примеров — системы ERP, CRM, серверы электронной почты, службы обмена файлами и офисный пакет LibreOffice.
- Облачные вычисления. Linux поддерживает множество облачных платформ, включая общедоступные, частные и гибридные решения (Microsoft Azure, Google Cloud Platform, AWS).
- DevOps и CI/CD. Серверы Linux автоматизируют процессы сборки, тестирования и развертывания с помощью инструментов Jenkins, GitLab CI/CD, Travis CI и Ansible. Контейнеры Linux (Docker) и платформы оркестрации (Kubernetes) еще больше упрощают рабочие процессы DevOps.
- Сеть и безопасность. Linux-серверы используются в качестве сетевых устройств, маршрутизаторов, брандмауэров и шлюзов безопасности. NAS-устройства на базе Linux также популярны для хранения и обмена файлами.
- Виртуализация и контейнеризация. Технологии виртуализации на «Линукс» позволяют организациям создавать виртуальные машины с использованием платформ KVM, Xen и VMware. Контейнеры, работающие на Docker, Podman и LXC/LXD, обеспечивают легкие и масштабируемые среды развертывания приложений.
- Анализ данных и big data. Серверы «Линукс» в реальном времени эффективно анализируют и обрабатывают большие данные.
- Образовательные среды и среды разработки. ОС «Линукс» широко применяют в образовательных учреждениях, лабораториях разработки и учебных средах в качестве платформы для изучения навыков администрирования Linux, программирования, написания скриптов и управления сервером. Инструменты Vagrant и Docker упрощают настройку сред разработки.
- Встроенные системы. «Линукс» обеспечивает работу интеллектуальных устройств, систем промышленной автоматизации и встроенных приложений в таких секторах, как: умные города, здравоохранение, автомобилестроение, домашняя автоматизация и т. д.
Linux идеально подходит для малых бизнесов и стартапов благодаря своей экономической эффективности, стабильности и способности к масштабированию. Он предлагает разнообразные дистрибутивы и программные решения, адаптированные под разные нужды, что делает его доступным и настраиваемым для компаний любых размеров.
Установка Ubuntu для сервера «Линукс»
Ubuntu – известный дистрибутив Linux, используемый на серверных и облачных платформах и контейнерах. Ранее развивался на базе Debian, но теперь функционирует автономно с использованием инновационных методов и инструментов. Отличия между server- и desktop-версией минимальные. Для обеих применяется общая пакетная база, но разные инсталляторы. Desktop-версия устанавливается в графическом режиме и включает GUI, серверная – с помощью текстового установщика Subiquity, заменившего прежний инсталлятор debian-installer.
Начало установки
Стиль установщика — фирменный оранжевый. Пользователь выбирает язык, который применяется к языковым и региональным настройкам системы. Инсталлятор так и будет работать на английском языке. Раскладка клавиатуры — тоже английская (русская добавится в автоматическом режиме, и для переключения между клавиатурами используется обычная комбинация alt + shift). Далее пользователь указывает версию: либо просто Ubuntu Server, либо в вариации minimized. Если нужна интерактивная настройка и ручное управление, выбирается первый вариант, в противном случае достаточно возможностей второго.
Настройка сети
В большинстве случаев при настройке сети динамический адрес присваивается в автоматическом режиме через DHCP (пользователь лишь подтверждает либо изменяет параметры). Статический айпи настраивают посредством сетевого интерфейса обычным образом с одним отличием — сначала указывается подсеть в формате 192.168.233.0/24, где за сочетанием /24 скрыта маска сети 255.255.255.0, потом вводятся остальные параметры.
Разметка дискового пространства
Это — ключевой этап установки, ведь выбранная структура будет использоваться длительное время, а ее не всегда легко изменить без переустановки системы. Обычно все файлы находятся в одном разделе. Ubuntu не создает раздел подкачки, используя вместо него файл в корне ФС.
Автоматическая разметка является оптимальным вариантом, если нет особых предпочтений. Есть два решения: использование всего диска с настройками LVM или дополнительное шифрование тома LVM. Варианты аналогичны применяемым в debian-installer, но упорядочены более логично.
Первый вариант автоматически создает EFI раздел объемом 953 МБ и раздел ext4 на остальном дисковом пространстве. Второй вариант с LVM дополнительно создает раздел /boot размером 1,77 ГБ вне LVM разметки. Затем создается группа томов ubuntu-vg с логическим томом ubuntu-lv, но его размер меньше объема группы томов. Чтобы избежать дефицита свободного места, необходимо размер тома ubuntu-lv изменить на максимальный, указанный рядом с полем Size.
Настройка программного RAID
Сначала необходимо указать, что первый диск будет использоваться в качестве загрузочного, выбрав в меню Use As Boot Device. Для систем UEFI раздел ESP создается в автоматическом режиме. Эти же действия необходимо повторить и для другого диска, выбрав в меню Add As Another Boot Device, в результате чего загрузчик установится на оба диска. Затем в свободном пространстве создаются один или несколько разделов определенного размера. Поле Format нужно обязательно отметить как Leave unformatted. Если размер не указать, раздел будет иметь максимально возможный объем. Действия одинаковы для обоих дисков.
ВАЖНО! Одно md-устройство — один раздел!
Далее нужно перейти в Create software RAID (md), указать уровень RAID «зеркало» и выбрать разделы для использования. На md-устройстве программного RAID, появившемся среди доступных дисков, создается новый раздел с определяемой пользователем файловой системой и точкой монтирования (для системного раздела — /). Системы с UEFI необходимо настраивать далее, но это под силу профессионалам.
Завершение установки
После разметки дисков создается профиль пользователя, где требуется ввести имя компьютера, логин и пароль. Далее необходимо установить SSH-сервер и импортировать открытый ключ из Launchpad либо GitHub, чтобы деактивировать аутентификацию по паролю через SSH. Затем выбирается предустановленное программное обеспечение либо назначаются нужные роли для целевого сервера, скачиваются и инсталлируются обновления безопасности, компьютер перезагружается и готов к настройке Ubuntu.
Настройка Ubuntu для Linux-сервера
После инсталляции система Ubuntu требует дополнительной настройки для выполнения функций сервера. Ниже описаны необходимые действия.
Обновление системы
Настройка начинается с обновления системы сразу после установки. Вводятся команды:
sudo apt update
sudo apt list --upgradable
sudo apt upgrade
По завершении обновления систему нужно перезагрузить командой sudo reboot.
Настройка SSH
Как серверная система, Ubuntu Server требует удаленного доступа. Когда завершится обновление и произойдет перезагрузка, необходимо настроить сетевой протокол SSH, чтобы далее работать с этим компонентом. Сначала для предотвращения попыток взлома вносятся изменения в настройки порта SSH на сервере: открывается файл /etc/ssh/sshd_config и в строке Port 22 проставляются другие цифры, например, 2525. Служба SSH запускается и добавляется в автозагрузку командами:
sudo systemctl start sshd
sudo systemctl enable sshd
Для удобства входа настраивается авторизация по ключу, который создается командой ssh-keygen
и сохраняется, например, в ~/.ssh/id_rsa_ubuntu. Можно задать пароль к ключу. Последний передается на сервер командой
ssh-copy-id -i ~/.ssh/id_rsa_ubuntu.pub имя_пользователя@хост.
Теперь возможно входить на сервер без ввода пароля, используя команду ssh имя_пользователя@хост
. Дальше Linux-сервер можно настраивать через SSH.
Вход в систему
Вход в систему осуществляется или интерактивно, или через SSH. Второй вариант удобнее — консоль открывается на рабочем столе, и команды или результаты их исполнения можно скопировать. Root (аккаунт с правами суперпользователя) в Ubuntu отключен. Если пользователю необходимо на длительное время повысить права, нужно ввести команду sudo -s
, что откроет новую командную оболочку. Здесь появятся права суперпользователя, изменятся домашний каталог и переменные окружения. Пароль для root-аккаунта устанавливается после ввода команды sudo passwd root
. Но это следует делать только в случае крайней необходимости, ведь Ubuntu и так защищен очень надежно.
Настройка времени
Инсталлятор Subiquity не разрешает изменение часового пояса, поэтому после установки сервер работает по Гринвичу. Текущее время проверяется командой timedatectl
. Для корректной настройки применяется команда dpkg-reconfigure tzdata
, которая дает пользователю возможность в интерактивном режиме выбрать нужный часовой пояс. Внесенные изменения вступают в силу немедленно. Если дополнительно настроить NTP сервер, то время будет синхронизироваться с интернетом автоматически. Пакет NTP устанавливается командой sudo apt install ntp
, добавляется в автозагрузку — sudo systemctl enable ntp
.
Настройка сетевого экрана
Сервер будет постоянно доступен множеству пользователей, поэтому необходимо защитить его посредством брандмауэра. В «Убунту» применяется надстройка ufw над iptables. По умолчанию фаервол блокирует все неразрешенные подключения. Чтобы его запустить, нужно сначала выдать разрешение службе SSH командой
sudo ufw allow OpenSSH.
При замене стандартного порта SSH необходимо указать его:
sudo ufw allow 2525/tcp
.
Затем необходимо включить ufw и подтвердить действие
sudo ufw enable.
Брандмауэр будет запущен и добавлен в автозагрузку. Чтобы проверить его статус, нужно набрать:
sudo ufw status.
Заключение
Серверы Linux представляют собой экономичную, стабильную и адаптируемую платформу для размещения критически важных приложений и служб в корпоративных условиях. Надежные функции безопасности, масштабируемость и возможности оптимизации производительности делают серверы «Линукс» приоритетным выбором для множества задач: от веб-хостинга до облачных вычислений. Linux-серверы являются бюджетным вариантом для предприятий любого размера. Если у вас возникли сложности в установке и настройке, специалисты компании «АйТиСпектр» оперативно придут на помощь и помогут в решении многих вопросов, включая ИТ-поддержку.