Serverspace Black Friday
KI
ноября 9, 2022
Обновлено ноября 16, 2022

Первоначальная настройка Ubuntu Server 22.04

Linux Rsync Ubuntu

Введение

После установки дистрибутива Ubuntu Server 22.04, необходимо выполнить несколько шагов для настройки безопасности системы и ради упрощённого использования.

Этап 1 – Авторизация с учётной записи Root

Мы установим чистый сервер в облачном сервере и из учётной записи будет только “root”. При создании сервера на выбор подключения два варианта:

  1. По SSH-ключу;
  2. По логину и паролю.

У пользователя “root” больше привилегий по сравнению с обычными пользователями. При использовании некоторых команд от имени root, могут привести к неисправностям. Обычно изменение в файле конфигурации, перезапуск служб, открытие портов и другие. По этой причине необходимо создать нового пользователя и выполнять команды с использованием sudo. Риск определенно снизится. Привилегии и ограничения на пользователя выдаются со стороны root, при помощи команды usermod.

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

Подключение к серверу происходит следующим образом:

ssh root@ip_address

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

В следующем этапе создадим системного пользователя для использования с определёнными привилегиями и ограничениями по использованию.

Этап 2 – Добавление нового системного пользователя

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

useradd -m test_user

Заменить test_user вы можете на своё усмотрение. Ключ -m создаёт в домашнем каталоге папку для пользователя test_user и делает пользователя владельцем.

Следует задать пароль для пользователя:

passwd test_user

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

Этап 3 – Предоставление привилегий администрирования

Создав пользователя необходимо добавить в группу sudo. Используем команду:

usermod -aG sudo test_server

Ключ “a” указывает на добавление, ключ “G” указывает группу, затем следует название группы и добавляемый пользователь.

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

Этап 4 – Первоначальная настройка базового брандмауэра

Ufw – утилита брандмауэра, каждый установленный пакет добавляется в правило ufw. Наше подключение по SSH также проходит через соответствующее правило ufw. Проверка статуса приложений выполняется следующим образом:

ufw status

В выходе получаем данные об открытых портах и о приложениях которые добавлены в ufw.

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

ufw app list
#Выход
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH

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

ufw allow OpenSSH

Включим брандмауэр и соглашаемся:

ufw enable

Проверим статус приложения и SSH-соединения всё ещё актуален:

ufw status
#Выход
Status: active
To Action               From
__ ________ _________
OpenSSH ALLOW Anywhere

Теперь ufw блокирует все внешние подключения кроме OpenSSH.

Этап 5 – Разрешение на подключение удалённо к пользователю

Открываем командную строку и вводим команду:

ssh test_server@ip_address

Необходимо ввести пароль при создании учётной записи. Выполним команду используя sudo (см. рисунок 1), например:

sudo apt install neovim
7
Рисунок 1 - Установка текстового редактора neovim

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

sudo chsh -s /bin/bash test_server

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

echo $0
#Выход -bash

При подключении по SSH-ключу к root

В каталоге root пользователя хранится каталог .ssh, в каталоге файл authorized_keys отвечающий за ключи SSH, следует скопировать и вставить файл в каталоге пользователя /home/test_server/.ssh/.

Удобнее воспользоваться rsync с целью изменения путь каталога, владельца файла сохранив разрешения:

rsync --archive --chown=test_server:test_server ~/.ssh /home/test_server

Выполним подключение:

ssh test_server@ip_addres

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

Выводы

  • Ufw – помощник для безопасных подключений к серверу;
  • SSH-ключ не допускает подключение к серверу без уникального ключа;
  • Пользователь с правами sudo, уменьшает риск проявления ошибок в работе сервера, по сравнению команды выполняемые от имени root.
Оценка:
3 из 5
Аverage rating : 3.8
Оценок: 6
050000 г. Алматы пр. Сейфуллина, д. 502
+7 (777) 555-36-66
ООО «ИТГЛОБАЛКОМ ЛАБС»