Начальная настройка Ubuntu Server 20 04 LTS после установки

Установка и настройка Ubuntu 20.04 Server

ubuntu 20.04 что нового?

Ubuntu — популярный дистрибутив Linux, который отличается стабильностью, и большим сообществом, благодаря чему стабильные релизы дистрибутивов выходят в срок и имеют продолжительный срок официальной поддержки. Окончание публичной поддержки Ubuntu 20.04 «Focal Fossa» датировано апрелем 2025 года, а приватной 2030 года.

Минимальный требования к ресурсам Ubuntu 20.04 Server Live: 1CPU, 1024Mb RAM и 3GB свободного дискового пространства. Особых отличий Ubuntu 20.04 Server Live от Ubuntu 20.04 Desktop нет, оба используют один и тот же репозиторий, ядро имеет ту же конфигурацию, но в исталяторе серверной версии «из коробки» не предусмотрено графическое окружение и программное обеспечение характерное для настольных версий.

Что нового в Ubuntu 20.04? Стоит отметить свежее ядро Linux Kernel 5.4, повышающее производительность и безопасность сервера и некоторые его особенности:

1. В версии 5.4 улучшен Lockdown. Это режим блокировки ядра, который ограничивает доступ пользователя root различными частями функционала ядра, что будет полезно администраторам, которые занимаются его тюнингом. Таким образом, вредоносное п.о, получившее права root, не сможет выполнить свой код и на уровне ядра.

2. Доступен высокопроизводительный драйвер virtio — virtio-fs. Файловая система virtio-fs ускоряет обмен данными между хостом и гостевой системой. Предусмотрен проброс каталогов между ними с более высокой производительностью и совместимостью, чем если бы было использовано, например, NFS.

3. Fs-verity позволяет верифицировать подлинность и целостность файлов по хэшам на уровне файловой системы.

4. Доступен модуль dm-clone, позволяющий клонировать существующее блочное устройство. Например, есть блочное устройство доступное в режиме чтения, модуль позволит создать локальную копию, при этом допустима запись во время процесса клонирования.

5. Реализована защита, запрещающая запись в активные файлы подкачки.

6. Включена поддержка exFAT от Microsoft.

7. Флаги MADV_COLD и MADV_PAGEOUT позволяют определить, какие данные в памяти не критичны для работы процесса. Они перемещают эти данные в SWAP освобождая память.

8. Алгоритма сжатия ядра Linux LZ4 и загрузочного образа initramfs позволяет сократить время загрузки операционной системы.

9. Десятки других изменений, который затронули работу с дисковой и файловой подсистемой, памятью, сетевой подсистемой, аппаратной архитектурой и оборудованием.

Кроме того, в Ubuntu 20.04 реализована полная поддержка Кubernetes 1.18 (MicroK8s и kubeadm), при установке доступны Prometheus, Docker, NextCloud и многое другое. Так же в Ubuntu 20.04 улучшена поддержка ZFS.

Установка Ubuntu 20.04 Server

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

Выбор языка

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

Обновление инсталятора

Выберите раскладку клавиатуры. Указывайте везде English:

Раскладка клавиатуры

Настройте сеть. По умолчанию, получение IP адреса настроено по DHCP. В нашем примере мы будем использовать статический IP адрес. Используя интуитивно понятную навигацию, заполните необходимые поля

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

Если доступ в интернет у вас осуществляется через proxy-сервер, укажите его:

Указание прокси-сервера

Далее, установщик предложим вам ближайшее зеркало (Mirror), исходя из вашего регионального расположения. Оставьте предложенное по умолчанию, или укажите свой:

Ближайшее зеркало

На этом этапе будет предложено разметить дисковое пространство. Выбрав «Use an entire disk» установщик сам разметит диски в автоматическом режиме. В зависимости от задач, вы можете выполнить разбивку разделов на собственное усмотрение, выбрав «Custom storage layout»:

Разметка диска

Следующий пример для наглядности, выносить даздел boot отдельно нет необходимости, вы можете все отдать под корень «/», что будет равнозначно «Use an entire disk». Вы можете сделать отдельным разделом boot или swap, выбрать формат файловой системы. Так же есть возможность создания LVM разделов. Меню интуитивно понятное:

Выделение раздела boot

Проверьте внимательно, все ли настроено как нужно и нажмите Done

Проверка настроек

Выберите «Continue» для подтверждения настроек:

Подтверждение настроек

Укажите имя сервера и пользовательские данные для доступа к серверу. Вы можете выбрать любого пользователя кроме «root» и «admin», которые зарезервированы системой. Так же придумайте сложный пароль, он должен быть не менее 10 символов, включать в себя строчные и заглавные символы латинского алфавита, а так же цифры и спецсимволы:

Установка пользовательских данных

Отметьте установку OpenSSH Server, для возможности удаленного подключения к нему, и нажмите «Done»:

OpenSSH Server

Перед вами появится длинный список того что можно установить «из коробки». Очень интересный этап, здесь доступна и интеграция с Kubernetes 1.18, etcd, интеграция с Google Cloud, Postgresql10, Prometheus и много чего другого. Выбирать компоненты для установки нужно осознанно, при условии, что вам это действительно необходимо для задач.

Установка ПО "из коробки"

Подтвердите «Done» и перед вами появится консоль установки в интерактивном режиме:

Консоль установки

По окончанию установки, внизу интерактивной консоли появится «Reboot». Извлеките носитель с установщиком и выполните перезагрузку сервера.

Перезагрузка сервера

Первоначальная перезагрузка займет более продолжительное время, чем это будет в дальнейшем. Будут инициализированы службы snapd, выполнится инициализация устройств cloud-init и прочее. Все зависит от того, каким образом устанавливается Ubuntu, на гипервизоре, или baremetall. По окончанию вы увидите окно аутентификации в систему. Так же, сервер будет доступен по ssh.

Вход в систему

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

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

Подключение к серверу по ssh

Первое, на что стоит обратить внимание, это то, что в Ubuntu пользователь root отключен от аутентификации. Это выполнено с точки зрения безопасности. Подключение к серверу происходит по имени пользователя, который указан при установке:

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

Если по каким-то причинам вы хотите разрешить доступ пользователя root при подключении по ssh, то смените для него пароль:

Затем в конфигурационном файле /etc/ssh/sshd_config раскоментируйте строку PermitRootLogin указав значение yes:

Однако, в целях безопасности сервера, доступ по логину root лучше не предоставлять.

Настройка сетевых интерфейсов

Начиная с Ubuntu 18.04 настройка сетевых интерфейсов происходит не в привычном каталоге /etc/network/interfaces как это реализовано в Debian-подобных дистрибутивах, а в каталоге /etc/netplan/. После установки ОС, в нем будет сгенерирован конфигурационный файл 00-installer-config.yaml

Если конфигурационный файл по какой-то причине пуст, сгенерируйте го:

Для примера, выполним с ним некоторые операции. Переименуем его в более удобный вид:

Конфигурационный файл имеет следующий вид:

Файл конфигураций

Он имеет формат yaml и чувствителен регистру. При конфигурации файлов данного формата табуляция недопустима. Только четная последовательность пробелов и структура наследования директив, иначе, вы получите синтаксическую ошибку.

В нашем примере, сетевой интерфейс имеет название eth0, но при инсталляции Ubuntu он имел название enp0s8. Переименовать в конфиге сетевой интерфейс недостаточно. Так же следует править загрузчик grub:

Читайте также:  Монтаж кондиционеров в Кропоткине

найдите и отредактируйте значение:

Удаление ненужных компонентов

В зависимости от того на чем вы устанавливали сервер, Ubuntu может без вашего ведома инициализировать некоторые компоненты которые с одной стороны полезны, с другой стороны нет, если использование их не планируется. В нашем примере мы устанавливали виртуальный сервер на гипервизор Proxmox, Ubuntu без нашего ведома инициализировала службу cloud-init. Cloud-init представляет собой сценарий активации и инициализации виртуальных машин, который широко применяется для OpenStack и других облачных технологий с помощью скриптов и манифестов. Можно провести параллели с Terraform. Это гибкая и полезная вещь. Однако, если специфика вашей работы не предусматривает автоматизированный деплой виртуальных машин в гипервизор или облако, удалить его можно следующим образом.

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

Давайте так же, командой lsblk отобразим наши дисковые устройства:

Отображение дисковых устройств

Начиная с версии 16.04, Ubuntu все настойчивей пытается продвинуть менеджер управления пакетами snap. Приведем краткое объяснение с официального сайта разработчиков:

«snap пакеты Ubuntu содержат саму программу, а также все ее зависимости. Это имеет несколько преимуществ перед обычными deb или rpm пакетами, обрабатывающими зависимости. А главное, из них — разработчик может быть уверен что нет никаких регрессий из-за изменений версий библиотек в системе»

Snap это удобная вещь, и мы рекомендуем с ним ознакомиться, документация Ubuntu довольно информативна как на русскоязычных, так и на англоязычных ресурсах.

Отобразим список установленных пакетов, которые установились при инсталляции:

Если нам что-то не нужно, удалим:

Добавить пакет можно следующим образом:

Обновить все пакеты:

Обновить определенный пакет:

Посмотреть список доступных пакетов:

Однако, стоит заметить, сейчас не так много snap пакетов. С полным перечнем вы можете ознакомится на сайте разработчиков https://snapcraft.io/ Вместо snap можете использовать пакетный менеджер apt. Если у вас snapd не установлен, установить его можно следующим образом:

Подключение swap раздела и настройка кеширования

Для начала убедитесь, что он не подключен:

Если список пуст, создайте файл подкачки, например 2Gb. Измените права, и активируйте его. Порядок команд следующий:

Что бы раздел swap после автозагрузки примонтировался автоматически, добавьте о нем информацию в /etc/fstab

Примечание: перед правкой fstab рекомендуется сделать его резервную копию. Если вы допустите какую либо ошибку, сервер может «уйти в себя» при перезагрузке.

Настроим swappiness. Параметр vm.swappiness по умолчанию имеет значение 60, и контролирует процент свободной памяти. Он контролирует значение, после которого начнется активный сброс данных в swap. Значение «60» означает следующее: 100-60=40%. Другими словами, при загрузке ОЗУ более чем 40%, данные начнут кешироваться в swap. Не существует оптимального значения, он обусловлен только конфигурацией вашего сервера. Если ОЗУ достаточно, это значение можно уменьшить следующими командами:

В конце файла /etc/sysctl.conf добавьте следующую строку:

Настройте кеширование. Измените параметр vfs_cache_pressure, отвечающий за скорость удаления индексов из кеша. По умолчанию это значение равно 100. Так как обращение к индексам довольное частое, это значение вы можете уменьшить:

В конце файла /etc/sysctl.conf добавьте следующую строку:

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

В конце файла /etc/sysctl.conf добавьте следующую строку, в зависимости от интерфейсов:

Заключение

В данном обзоре мы рассмотрели первоначальную настройку и оптимизацию Ubuntu 20.04. Так же рекомендуем ознакомиться со статьей «Как обеспечить безопасность Linux сервера» и другими статьями нашего блога, в котором рассмотрены вопросы администрирования операционных систем и различных приложений. Для наших клиентов облачного VPS хостинга, мы создали готовый шаблон, с помощью которого вы можете установить Ubuntu 20.04 в автоматическом режиме и уже несколько минут приступить к работе. Наша круглосуточная служба технической поддержки поможет с его базовой настройкой, если у вас возникнут сложности.

Источник

Начальная настройка Ubuntu Server 20.04 LTS после установки

Начальная настройка Ubuntu Server 20.04 LTS после установки

Базовая настройка Ubuntu Server 20.04 после установки.

Подключаемся к серверу:

Учётная запись root

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

Можем убедится в том, что пароль для root пустой:

Учётная запись root по умолчанию

Так устроено в целях безопасности. Например, вы можете забыть что работаете от имени суперпользователя и удалить какие-либо важные вещи. Разработчики Ubuntu это учли и вообще отключили аккаунт суперпользователя.

Если всё же нужно авторизоваться от имени суперпользователя, необходимо установить для него пароль:

Затем нужно ввести два раза пароль. Проверим снова:

Учётная запись root

Важно! На рабочих серверах не делайте так. Так можно делать только на домашней машине для удобства.

Создание нового пользователя с административными правами

Добавляем в систему нового пользователя и предоставляем ему права администратора.

Система задаст несколько вопросов. Сначала она предложит ввести пароль для этой учетной записи.

Введите пароль и при желании заполните поля с дополнительной информацией. Это не обязательно, и вы можете просто нажать Enter , если хотите оставить поле пустым по умолчанию.

Проверим добавился ли пользователь john :

Добавление нового пользователя

Добавляем нового пользователя в группу sudo :

Сменим пользователя и проверим его права:

Поверка прав пользователя

Чтобы повысить уровень безопасности вашего сервера, мы настоятельно рекомендуем настроить ключи SSH вместо использования аутентификации по паролю. Мы это сделаем чуть позже, а пока настроим брандмауэр (фаервол) для корректной работы SSH-соединений.

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

Различные приложения могут при установке зарегистрировать свой профиль в UFW. Такие профили позволяют UFW управлять этими приложениями по имени. OpenSSH (сервис, который позволяет подключаться к серверу) имеет свой профиль, зарегистрированный в UFW.

OpenSSH in UFW

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

Allow OpenSSH in UFW

И опять проверяем статус:

OpenSSH enable in UFW

Теперь можно настроить аутентификацию на основе SSH-ключей.

Аутентификация пользователя на основе SSH-ключей

Этот шаг не обязателен, но он значительно повысит безопасность вашего сервера. Поэтому, рекомендуем его не пропускать.

Для начала сгенерируем SSH ключ с помощью команды (не забудьте отключиться от сервера, команду запускаем на локальной машине!):

Путь для расположения ключа можно оставить стандартным. Можно придумать и ввести passphrase (секретная фраза). Или же просто оставить всё по умолчанию, нажимая Enter :

ssh-keygen

Теперь этот ключ нужно скопировать на сервер. В Windows придётся копировать ключ вручную. Займёмся этим.

Подключаемся к серверу:

В корневой директории созданного пользователя (/home/john) нужно создать папку .ssh . Скорее всего вы уже находитесь в этой директории. Проверить это можно с помощью команды:

Если вы находитесь в другой директории, то перейдем в нужную нам с помощью команды:

Читайте также:  Общие положения по расчету установок порошкового пожаротушения модульного типа

Здесь создадим директорию .ssh :

Проверить создание директории и просмотреть структуру текущей директории:

mkdir .ssh

Установим права для этой папки:

Перейдем в эту папку:

Создадим файл authorized_keys в этой директории:

Установим права для этого файла:

Курсор передвинется на новою строку в ожидании ввода данных от вас:

authorized_keys

Переходим в папку на локальном компьютере, куда был сгенерирован ключ и с помощью любого текстового редактора открываем файл id_rsa.pub . Копируем весь текст из этого файла. Копируйте внимательно, без захвата пробелов в начале и в конце строки!

Вставляем ключ, который скопировали из файла id_rsa.pub и вводим команду:

Отлично, мы скопировали и вставили наш ключ в файл authorized_keys . Можно проверить содержимое файла командой:

cat authorized_keys

Теперь при подключении к серверу по SSH, пароль для подключения запрашиваться не будет.

Редактируем конфиг SSH

Откроем для редактирования конфигурационный файл SSH:

Находим строчку PermitRootLogin . Раскомментируем её (убрав знак решетки (#)) и выставим ему значение no . Таким образом мы запретим авторизацию под root пользователем:

Находим строчку PubkeyAuthentication . Раскомментируем её. Так мы активируем возможность авторизации с помощью SSH-ключа:

Находим строчку PasswordAuthentication . Раскомментируем ее и выставим значение no. Так мы запретим авторизацию по паролю:

В самом конце файла с новой строчки вставим команду:

Сохраняем файл и выходим из редактора. Перезапускаем SSH:

Теперь если попытаться авторизоваться под root или каким-либо другим пользователем, то сервер выдаст ошибку доступа.

На этом начальная настройка Ubuntu Server 20.04 завершена. В следующей заметке установим стек LAMP.

Источник

Начальная настройка сервера Ubuntu 20.04

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

1: Root-логин

Чтобы войти на сервер, вы должны знать свой внешний IP-адрес. Также для аутентификации вам понадобится пароль или закрытый ключ пользователя root (если вы настроили аутентификацию по SSH ключам).

Если вы еще не подключились к своему серверу, сделайте это сейчас: авторизуйтесь как пользователь root, указав в команде внешний адрес вашего сервера.

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

При первом входе на новый сервер система может также предложить вам сменить свой root-пароль.

Что такое root?

Пользователь root является администратором в среде Linux, а это значит, что он обладает очень широкими привилегиями. Именно поэтому пользователя root не рекомендуется использовать на регулярной основе. В широкий диапазон полномочий учетной записи root включены и такие, которые способны оказать разрушительное действие на вашу систему (даже если вы используете их ненамеренно).

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

2: Создание нового пользователя

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

Итак, чтобы создать нового пользователя, введите эту команду (замените 8host на имя, которое нужно вам):

Команда задаст вам несколько вопросов, сначала она предложит ввести пароль для этой учетной записи.

Введите надежный пароль и при желании заполните поля с дополнительной информацией. Это не обязательно, и вы можете просто нажать Enter, если хотите оставить поле пустым.

3: Доступ к sudo

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

Чтобы передать эти привилегии нашему новому пользователю, нужно добавить его в группу sudo. По умолчанию в Ubuntu 20.04 пользователям, входящим в группу sudo, разрешено использовать такую команду.

Чтобы добавить нового пользователя в группу sudo, от имени пользователя root выполните эту команду (замените условное имя 8host именем вашего пользователя):

usermod -aG sudo 8host

Теперь в сессии этого пользователя вы сможете вводить команду sudo для выполнения действий с привилегиями суперпользователя.

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

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

При установке приложения регистрируют в UFW свои профили. Это позволяет UFW управлять этими приложениями по имени. К примеру, такой профиль есть у OpenSSH (сервис, позволяющий нам подключаться к серверу).

Вы можете просмотреть список профилей:

ufw app list
Available applications:
OpenSSH

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

ufw allow OpenSSH

После этого можно включить брандмауэр:

Введите y и нажмите Enter, чтобы продолжить. Чтобы убедиться, что SSH-соединения поддерживаются, введите:

ufw status
Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)

В настоящее время брандмауэр блокирует все соединения, кроме SSH. Если вы хотите установить и настроить дополнительные сервисы, вам необходимо разрешить входящий трафик для них в брандмауэре.

5: Проверка доступа к новому пользователю

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

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

Настройка SSH-доступа для вашего нового пользователя зависит от того, что использует ваша учетная запись root для аутентификации – пароль или SSH-ключи.

Парольная аутентификация

Если вы вошли в свою учетную запись root с помощью пароля, значит, SSH поддерживает парольную аутентификацию. Вы можете подключиться по SSH к новому пользователю, открыв новую сессию терминала и используя команду ssh с именем этого пользователя:

Читайте также:  На каком этапе ремонта ставятся межкомнатные двери

Введите пароль этого пользователя, и вы попадете в систему. Помните: если вам нужно запустить команду с правами администратора, нужно добавить sudo:

При первом запуске команды sudo в каждой сессии (и периодически при запуске других команд) вам будет предложено ввести пароль вашего пользователя.

Чтобы повысить безопасность сервера, мы рекомендуем настроить SSH-ключи вместо парольной аутентификации. Следуйте инструкциям в мануале Установка SSH-ключей в Ubuntu 20.04.

Аутентификация на основе SSH-ключей

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

/.ssh/authorized_keys вашего нового пользователя, чтобы он имел доступ к системе.

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

/.ssh/authorized_keys, вы можете скопировать эту структуру в учетную запись нового пользователя в текущем сеансе.

Проще всего сделать это с помощью команды rsync. Она скопирует каталог .ssh вашего пользователя root, сохранит привилегии, но изменит его владельца. Вместо 8host укажите имя вашего пользователя.

Примечание: Команда rsync обрабатывает пути, заканчивающиеся косой чертой, иначе, чем те, у которых нет косой черты в конце. При использовании rsync убедитесь, что в исходном каталоге (

/.ssh) вы случайно не поставили косую черту (путь не должен выглядеть так:

Если вы случайно добавите косую черту в команду, rsync скопирует содержимое каталога

/.ssh пользователя root в домашний каталог пользователя sudo вместо того, чтобы скопировать всю структуру каталога

/.ssh. Файлы будут находиться в неправильном месте, и SSH не сможет их найти и использовать.

rsync —archive —chown=8host:8host

Теперь откройте новое окно терминала на локальной машине и введите команду ssh:

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

При первом запуске sudo в каждой сессии (и периодически при запуске других команд) вам будет предложено ввести пароль текущего пользователя.

Заключение

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

Источник



Настройка Ubuntu Server после установки

Настройка Ubuntu Server после установки

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

В этой статье мы разберем как выполняется настройка Ubuntu Server 18.04 после установки, рассмотрим настройку пользователей, SSH, а также настройку брандмауэра.

Настройка Ubuntu Server 18.04 после установки

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

1. Обновление системы

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

Чем больше времени прошло с момента релиза установочного образа Ubuntu Server, тем больше времени займет обновление системы, но это необходимая операция. После обновления перезагрузите систему:

2. Настройка SSH

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

Сначала необходимо сменить порт SSH на удаленном сервере, иначе рано или поздно кто-то попытается его перебрать. Откройте файл /etc/ssh/sshd.conf, найдите строчку Port 22 и измените значение порта на другое число, например, на 2323:

Для запуска службы SSH и добавления ее в автозагрузку выполните:

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

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

/.ssh/id_rsa_ubuntu. Затем утилита предложит ввести пароль для ключа. Если вы не хотите вводить этот пароль каждый раз при входе по SSH, то его задавать не нужно. Но в целях безопасности очень не рекомендуется использовать ключи без паролей.

Затем отправьте только что созданный ключ на свой сервер:

Теперь вы сможете авторизоваться на этом сервере без ввода пароля:

Дальнейшую настройку сервера можно проводить через SSH.

3. Настройка брандмауэра ufw

Сервер будет находиться в сети, а поэтому к нему будет иметь доступ множество пользователей. Необходимо спрятать все запущенные на сервере службы с помощью брандмауэра и оставить только разрешенные. В Ubuntu для управления брандмауэром используется надстройка над iptables — ufw.

По умолчанию, после запуска брандмауэр закрывает доступ ко всем не разрешенным службам извне. Мы сейчас работаем на сервере по SSH, поэтому нужно разрешить эту службу:

Если вы изменили стандартный порт SSH на втором шаге, необходимо разрешать именно тот порт, который вы указали:

Затем выполните такую команду для включения ufw:

Далее нужно нажать y для подтверждения. Брандмауэр будет запущен и добавлен в автозагрузку. Вы можете посмотреть его состояние командой:

4. Настройка времени

Установщик не предлагает вам выбрать часовой пояс и по умолчанию остается UTC. Таким образом, вы получаете время по Гринвичу. Вы можете проверить какое время показывает ваш сервер с помощью команды:

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

А для выбора нужного выполните:

Также желательно настроить NTP сервер, чтобы время автоматически синхронизировалось с серверами в интернете. Для установки NTP выполните:

А затем добавьте его в автозагрузку:

5. Разблокировка пользователя root

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

И введите новый пароль. Затем вы сможете авторизоваться от имени этого пользователя.

Выводы

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

Источник