Linux - начинающим. Установка и первоначальная настройка Ubuntu 22.04 LTS для сервера

  • Автор:

install-ubuntu-2204-lts-server-000.png

Ubuntu - один из самых популярных Linux дистрибутивов, широко применяющийся как в настольных системах, так и на серверах, а также в облаках и контейнерах. И, следует сказать, популярность эта вполне заслужена, долгое время Ubuntu шла в качестве более свежей и продвинутой версии Debian, но с некоторых пор идет своим путем, предлагая новые подходы и инструменты, но в тоже время сохраняя совместимость с родительским дистрибутивом. В данной статье мы пошагово рассмотрим установку и первоначальную настройку серверного дистрибутива Ubuntu 22.04 LTS.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Сразу отметим, никакого принципиального различия между серверной и настольной версиями Ubuntu давно уже нет, обе системы используют общую пакетную базу, но установщики у них разные. Настольная версия безальтернативно устанавливается в графическом режиме и ставит графическую оболочку, в то время как серверная имеет свой уникальный инсталлятор текстового режима Subiquity, который заменил использовавшийся ранее debian-installer.

Впервые Subiquity был представлен в выпуске 18.04 LTS, но только в качестве альтернативы, так как еще не поддерживал многие возможности, например, нельзя было создать программный RAID. К выпуску 20.04 LTS основные детские болезни были исправлены и Subiquity стал единственным инсталлятором серверного выпуска.

Начало установки

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

install-ubuntu-2204-lts-server-001.pngЕсли присутствует сеть, то установщик проверит наличие обновления программы установки и предложит ее обновить, причем произойдет это раньше, чем вам будет предложено настроить сетевой адаптер. Мы советуем согласиться с предложением и обновиться.

install-ubuntu-2204-lts-server-002.pngА вот раскладку клавиатуры по умолчанию мы советуем оставить английской, при этом русская будет добавлена автоматически и переключаться на нее вы сможете при помощи стандартного сочетания Alt + Shift.

install-ubuntu-2204-lts-server-003.pngСледующим шагом нас спросят, а что именно мы хотим установить. Доступны два варианта: Ubuntu Server и Ubuntu Server (minimized), второй вариант предусматривает использование в контейнерах и виртуальных машинах, не подразумевающих интерактивный вход и ручное управление. Это значит, что в такой системе отсутствуют утилиты ручного управления и если вы все-таки захотите администрировать ее руками, то вам придется развернуть ее до уровня Ubuntu Server. Поэтому установка minimized-версии для интерактивной настройки является бессмысленной.

install-ubuntu-2204-lts-server-004.png

Следующим шагом идет настройка сети, по умолчанию предлагается получить адрес автоматически при помощи DHCP, во многих случаях можно оставить эту настройку, зарезервировав адрес на DHCP-сервере, особенно если обращение к серверу подразумевается по FQDN.

install-ubuntu-2204-lts-server-006.pngЕсли же нам нужен статический IP-адрес, то мы можем настроить его прямо сейчас, для этого переходим к нужному сетевому интерфейсу и выбираем в настройках Edit IPv4, при этом можно обратить внимание на достаточно широкие возможности настройки сети, тут и объединение адаптеров через Bonding и VLAN-теги, но это уже выходит за рамки данной статьи.

install-ubuntu-2204-lts-server-007.pngНастройка сети также немного отличается от привычной, так как в первом поле мы должны указать подсеть (Subnet) в формате 192.168.233.0/24, где префикс /24 соответствует маске сети 255.255.255.0, остальные настройки не должны вызвать особых затруднений.

install-ubuntu-2204-lts-server-008.png

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

Разметка дискового пространства

Без преувеличения, разметка диска - самый важный этап установки системы, потому как с принятыми на данном этапе решениями вам придется жить все оставшееся время и не все из них можно будет впоследствии исправить без переустановки. Сегодня основной является схема "все файлы в одном разделе" и если вы не знаете как именно разметить диск, то следуйте ей. Также Ubuntu не использует раздел подкачки, создавая для этого файл в корне файловой системы, никакой существенной разницы с разделом подкачки у такого подхода нет, но в целом это удобнее. Выбор файловой системы также сводится к одному простому правилу, если вы не знаете какая именно файловая система вам нужна и для чего - выбирайте стандартную ext4.

Автоматическая разметка

Если у вас нет каких-то особых соображений, то использование автоматической разметки будет самым оптимальным вариантом, посмотрим, что предлагает нам Ubuntu в тех или иных сценариях. А вариантов не особо много: использовать весь диск и настроить диск как группу LVM, также можно отдельно включить шифрование LVM тома. В целом набор возможностей повторяют таковые в debian-installer, но выстроены более грамотно, в порядки иерархии применения. Пока что снимем флаг Set up this disk as an LVM group и посмотрим на самый простой вариант разметки.

install-ubuntu-2204-lts-server-009.pngВ этом случае будет автоматически размечен ESP раздел размером 953 МБ (для систем с UEFI) и ext4 на весь оставшийся размер диска.

install-ubuntu-2204-lts-server-010.pngНикаких сюрпризов и неожиданностей здесь нет, все просто и ожидаемо.

Автоматическая разметка с LVM

Вариант, предлагаемый по умолчанию и, казалось бы, никаких сложностей возникнуть не должно, но давайте внимательно изучим предлагаемую разметку. Прежде всего у нас кроме ESP раздела появился отдельный /boot размером 1,77 ГБ, так как загрузочный раздел должен располагаться за пределами LVM разметки. На оставшемся месте создана группа томов ubuntu-vg, внутри которой создается логический том ubutnu-lv, только вот его размер не соответствует размеру группы томов, в которой остается свободное место.

install-ubuntu-2204-lts-server-011.pngЕсли не обратить на это внимание и оставить все как есть, то при эксплуатации вы можете столкнуться с неприятной ситуацией, когда место неожиданно закончится. Поэтом сразу исправим разметку, для этого перейдите к логическому тому и в меню выберите Edit.

install-ubuntu-2204-lts-server-012.pngПосле чего укажите желаемый размер тома, максимальное значение указано рядом с полем Size, здесь же можно изменить тип файловой системы.

install-ubuntu-2204-lts-server-013.pngМы не знаем, является ли багом данное поведение, так как оно было зафиксировано еще в выпуске 20.04 и в обсуждении бага выражалось мнение, что мол так и задумано, так как LVM якобы не имеет смысла, если мы заполним группу томов полностью одним логическим томом. С некоторыми аргументами данной позиции можно согласиться, скажем с тем, что в таком случае нам будут недоступны моментальные снимки, но в целом такое поведение будет неожиданным, особенно для начинающего или невнимательного пользователя.

Тот, кому нужны снимки вряд-ли будет размечать диск автоматически, а тот, кто выбирает автомат рассчитывает на понятное поведение установщика. Если у нас указано использовать весь диск (Use an entire disk), то и размечать нужно все пространство полностью, а LVM впоследствии поможет нам более гибко управлять дисковым пространством. А текущий сценарий кроме недоумений и вопросов ничего предложить не может.

Настройка программного RAID

Настройка программного RAID в новом установщике Ubuntu достаточно серьезно отличается от настройки в debian-installer и может вызвать затруднения даже у опытного пользователя. Начнем с того, что пометим первый диск как загрузочный, для этого в меню диска следует выбрать Use As Boot Device.

install-ubuntu-2204-lts-server-014.png

Для UEFI систем будет автоматически создан ESP-раздел, создать такой раздел руками в Subiquity невозможно, затем проделываем ту же операцию со вторым диском, выбрав в его меню Add As Another Boot Device. После чего там будет создан второй ESP-раздел. Также это обеспечит установку загрузчика сразу на оба диска.

install-ubuntu-2204-lts-server-015.pngЗатем переходим к свободному пространству (free space) на дисках и создаем там раздел (или разделы) нужного размера, важное условие - в поле Format обязательно ставим Leave unformatted. Если в поле Size ничего не указывать, то будет создан раздел максимального размера. Аналогичные действия выполняем и для другого диска. Помним, что одно md-устройство - это один раздел.

install-ubuntu-2204-lts-server-016.pngПосле того как вы создали на обоих дисках одинаковые неформатированные разделы переходим в пункт Create software RAID (md), где указываем желаемый уровень RAID - в нашем случае зеркало - и выбираем используемые для него разделы.

install-ubuntu-2204-lts-server-017.pngПосле этого среди доступных дисковых устройств у нас появится md-устройство программного RAID, на свободном месте которого создаем новый раздел, где указываем файловую систему и точку монтирования (для системного раздела - /).

install-ubuntu-2204-lts-server-018.pngДля систем с UEFI данные действия только часть настройки, которую нужно продолжить после установки системы, более подробно об этом читайте в нашей статье:

Настраиваем программный RAID на UEFI-системах в Debian и Ubuntu

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

Завершение установки

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

install-ubuntu-2204-lts-server-020.pngСледующим шагом будет предложено установить SSH-сервер, не будем отказываться от этого предложения, также здесь есть возможность импортировать свой открытый ключ из GitHub или Launchpad. После импорта ключа появится возможность отключить аутентификацию по паролю через SSH иначе эта опция неактивна.

install-ubuntu-2204-lts-server-021.pngЗатем можно будет выбрать предустановленное ПО, но так как мы делаем минимальную установку, то пропускаем этот этап. Хотя, если вы поднимаете целевой сервер, то можете сразу выбрать необходимые вам роли.

install-ubuntu-2204-lts-server-022.pngЗа этим последует процесс установки, завершающей частью которого является скачивание и установка обновлений безопасности, при желании вы можете пропустить этот этап.

install-ubuntu-2204-lts-server-023.pngНа этом процесс установки завершен, вам останется только перезагрузить компьютер.

Вход в систему, повышение прав

После перезагрузки вы можете войти в систему как интерактивно, так и через SSH. Второй способ удобнее, так как консоль будет открыта на вашем рабочем столе, и вы можете просто копировать в нее нужные команды или, наоборот, результат их работы.

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

sudo -s 

Ключ -s открывает новую командную оболочку как бы при интерактивном входе суперпользователя в систему, при этом изменится домашний каталог и переменные окружения, которые будут соответствовать пользователю root.

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

sudo passwd root

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

Настройка часового пояса

Инсталлятор Subiquity не предусматривает настройку часового пояса и после установки ваш сервер будет жить по времени Гринвичского меридиана, чтобы убедиться в этом выполните команду:

timedatectl

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

dpkg-reconfigure tzdata

Затем в интерактивном режиме выберите свой часовой пояс.

install-ubuntu-2204-lts-server-024.pngВсе изменения будут применены сразу.

Настройка сети

В Ubuntu для настройки сети используется утилита высокого уровня абстракции netplan. Работа с ней сперва может показаться непривычной, но netplan содержит многие приятные возможности, которые выводят работу с сетью на новый уровень. Более подробно о работе с netplan вы можете прочитать в нашей статье:

Настройка сети в Linux при помощи Netplan

Все сетевые настройки хранятся в файле /etc/netplan/00-installer-config.yaml, если вы выбрали динамическую настройку сети, то там будет примерно следующее содержимое:

network: 
version: 2
ethernets:
ens33:
dhcp4: true

Обратите внимание, что для файла настроек применяется формат YAML который использует для форматирования отступы в 2 или 4 пробела.

install-ubuntu-2204-lts-server-025.pngДля установки статического IP-адреса внесите в файл приведенные ниже настройки:

network:
version: 2
ethernets:
ens33:
dhcp4: false
addresses: [192.168.233.148/24]
gateway4: 192.168.233.2
nameservers:
addresses: [192.168.233.2,192.168.233.3]

Особых комментариев здесь не требуется, для записи IP-адреса используется запись вида адрес/префикс, что позволяет отдельно не указывать маску, а DNS сервера (nameservers) можно перечислить через запятую.

А вот дальше становится интереснее, чтобы проверить конфигурацию выполните:

netplan try

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

Если же все нормально, то просто примените настройки командой:

netplan apply

Одной только этой возможности уже достаточно, чтобы начать любить netplan, если вы не сделали этого ранее.

Настройка брандмауэра iptables

В отличие от Debian 11 в Ubuntu 22.04 LTS по-прежнему присутствует iptables, точнее nftables в режиме совместимости. И это во многом оправдано, новый межсетевой экран неплох, но на его внедрение нужно время, тогда как для iptables существует множество готовых инструкций и решений. Ниже мы набросаем минимальную конфигурацию брандмауэра и настроим ее автоматическое восстановление.

В консоли последовательно выполните команды:

iptables -A INPUT -i ens33 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i ens33 -m conntrack --ctstate INVALID -j DROP
iptables -A INPUT -i ens33 -p icmp -j ACCEPT
iptables -A INPUT -i ens33 -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
iptables -A INPUT -i ens33 -j DROP

Данный набор правил разрешает уже установленные и связанные соединения, входящий ICMP и соединения по SSH, остальное блокируется. Но правила iptables не сохраняются при перезагрузке, чтобы исправить это установим пакет:

apt install iptables-persistent

В процессе установки нас спросят, хотим ли мы сохранить текущий набор правил, отвечаем утвердительно.

install-ubuntu-2204-lts-server-026.pngВ последствии правила удобнее править в файле /etc/iptables/rules.v4. При этом следует обязательно придерживаться следующих правил: первыми в цепочке идут два правила, выделенные желтым, последним обязательно должно быть правило, выделенное красным. Все остальные следует располагать между ними.

install-ubuntu-2204-lts-server-027.pngСохраняем файл и перечитываем правила:

iptables-restore < /etc/iptables/rules.v4

Мы советуем не пренебрегать настройкой брандмауэра даже если сервер полностью находится во внутреннем периметре.

Подключаем Ubuntu Advantage

Ubuntu Advantage (UA) - это сервисный пакет от компании Canonical для пользователей Ubuntu, включает коммерческую поддержку и ряд расширенных сервисов направленных на повышение управляемости и безопасности ваших систем. Для личного и некоммерческого использования предоставляется бесплатный пакет на 5 ПК.

Наиболее интересными сервисами в пакете являются:

  • Extended Security Maintenance (ESM) - предоставляет обновления безопасности для всех бинарных пакетов находящихся в основном репозитории Ubuntu в течении дополнительных 5 лет, таким образом продлевая общий срок поддержки систем до 10 лет.
  • Livepatch - в буквальном переводе "живой патч" - еще один крайне полезный сервис, дает возможность устанавливать обновления безопасности ядра Linux без перезагрузки системы.

И если ESM не факт, что нам понадобится, то вот Livepatch будет весьма ко двору. Мы не будем рассматривать все подробности подключения и использования данной программы, об этом можно прочитать в нашей статье:

Включаем расширенную поддержку ESM и Livepatch для Ubuntu

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

ua attach <subscription token>

где <subscription token> - полученный в рамках программы токен подписки.

В результате выполнения команды вы увидите подробный отчет с указанием подключенных сервисов, среди которых будут ESM и Livepatch.

install-ubuntu-2204-lts-server-028.pngТеперь вам не понадобится перезагружать свой сервер после каждого обновления ядра.

Заключение

В данной статье мы постарались коротко, но емко изложить все основные действия, которые помогут вам освоить новый инсталлятор Subiquity и установить с его помощью серверный вариант Ubuntu 22.04 LTS, а также выполнить его первоначальную настройку. Также в статье присутствуют ссылки на иные наши материалы, позволяющие существенно расширить отдельные темы, рекомендуем обязательно ознакомиться с ними.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Дополнительные материалы:


  1. Linux - начинающим. Часть 1. Первое знакомство
  2. Linux - начинающим. Часть 2. Установка Ubuntu Server
  3. Linux - начинающим. Часть 3. Установка Debian 7 для сервера
  4. Linux - начинающим. Часть 4. Работаем с файловой системой. Теория
  5. Linux - начинающим. Часть 4. Работаем с файловой системой. Практика
  6. Linux - начинающим. Часть 5. Управление пакетами в Debian и Ubuntu
  7. Linux - начинающим. Часть 6. Управление пользователями и группами. Теория
  8. Linux - начинающим. Часть 6. Управление пользователями и группами. Практика
  9. Linux - начинающим. Часть 7. Потоки, перенаправление потоков, конвейер
  10. Настройка языка и региональных стандартов в Ubuntu Server/Debian
  11. Используем APT Pinning для закрепления пакетов в Debian и Ubuntu
  12. Linux - начинающим. Что такое Load Average и какую информацию он несет
  13. Обновляем снятый с поддержки дистрибутив Ubuntu
  14. Linux - начинающим. Обновление Debian до следующего выпуска
  15. Осваиваем эффективную работу в Midnight Commander
  16. Linux - начинающим. Что такое пространства подкачки и как они работают
  17. Linux - начинающим. Screen - многозадачность в терминале и ни единого разрыва!
  18. Linux - начинающим. Как узнать температуру процессора и накопителей
  19. Linux - начинающим. Как получить информацию об оборудовании ПК
  20. Linux - начинающим. Установка и первоначальная настройка Debian 11 для сервера

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал



Loading Comments