Андрей Смирнов
Время чтения: ~12 мин.
Просмотров: 14

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

В этой статье мы рассмотрим первоначальную настройку Ubuntu Server 18.04, а точнее, разберемся с авторизацией под root и включим файрвол UFW.

Первым шагом мы настроили сеть, в отдельной статье — Настройка сети в Ubuntu Server 18.04 [Netplan]

Авторизация под root

После установки сервера мы сможем авторизоваться только под пользователем созданным при установке. У меня это пользователь — «firstdeer«

При попытке авторизоваться под суперпользователем «root» или выполнить «su —» [Повышение привилегий до суперпользователямы получим сообщение — «Login incorrect/Логин неверный«(Рис.1) или «su: Authentication failure/Ошибка аутентификации«.(Рис.2)

1-8.jpg
Рис.1 — Сообщение «Login incorrect» при авторизации с помощью root.
3-7.jpg
Рис.2 — Сообщение «su: Authentication failure» при повышении привилегий root.

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

Но мы всё равно сделаем возможным вход под «root«, но только напрямую с сервера, авторизацию root по ssh мы включать не будем.

Приступим!

Для того чтобы авторизоваться под «root«, для начала нужно авторизоваться под нашим пользователем,  созданным при установке — «firstdeer» и назначить пользователю «root» пароль.(Рис.3)

sudo passwd root

[sudo] password for firstdeer: Вводим пароль «sudo» для пользователя «firstdeer» (обычный пароль он у нас на данный момент один)

Enter new UNIX password: Вводим новый пароль.

Retype new UNIX password: Подтверждаем пароль.

Получаем сообщение от команды passwd: «password update successfully/пароль успешно обновлён».

2-7.jpg
Рис.3 — Назначение пароля пользователю root.

Теперь мы можем авторизовываться под пользователем «root«, а так же повышать привилегии [su -].

Включение файрвола UFW

После установки Ubuntu Server 18.04 файрвол UFW отключен, и какой бы вы сервер ни установили, на нашу Ubuntu 18.04 он сам откроет себе нужный порт и будет доступен по сети. Это не есть хорошо, мы должны сами контролировать[разрешать/запрещать] доступ, для того чтобы у умелых хацкеров не чесались руки… Безопасность превыше всего! ?

Приступим к настройке файрвола UFW.

Проверим статус файрвола UFW.(Рис.4)

sudo ufw status
4-5.jpg
Рис.4 — Проверим статус файрвола UFW.

Как видим Status: inactive фаервол UFW действительно выключен.

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

На данный момент сервер пустой, но на нем по умолчанию установлен OpenSSH сервер. Его профиль присутствует в UFW.

Если вы подключены по SSH к серверу и захотите сразу же включить UFW, то получите сообщение — «Command may disrupt existing ssh connections. Proceed with operation (y|n)?/Команда может нарушить существующие соединения ssh. Продолжить работу (y|n)?» Жмём «n«.

Мы конечно же не хотим, чтобы соединение по SSH оборвалось и было заблокировано фаерволом, так как зачастую сервер находится где-то удалённо, и нам бы не хотелось терять с ним связь.

И так посмотрим все доступные профили приложений в UFW.(Рис.5)

sudo ufw app list
3-6.jpg
Рис.5 — Просматриваем все профили приложений в UFW.

Видим в списке — «Available applications/Доступные приложения» единственное приложение OpenSSH.

Правилом разрешим доступ к серверу по SSH.(Рис.6)

sudo ufw allow OpenSSH
5-4.jpg
Рис.6 — Разрешим приложению OpenSSH доступ из сети.

А вот теперь можно включить фаервол UFW.(Рис.7)

sudo ufw enable

Если вы включаете фаервол подключившись по SSH, то на вопрос — «Command may disrupt existing ssh connections. Proceed with operation (y|n)?/Команда может нарушить существующие соединения ssh. Продолжить работу (y|n)?» Нажмите «y«. Правило для SSH прописано… бояться нечего…

Включили -> проверим статус.

sudo ufw status
6-4.jpg
Рис.7 — Включаем фаервол UFW и смотрим его статус.

Видим что для всех[Anywhere] разрешено подключение по OpenSSH, и из сетей IPv4 и IPv6.

Проверим — посмотрим какие порты открыты у нашего Ubuntu Server 18.04.(Рис.8)

netstat -ntlp
7-3.jpg
Рис.8 — Посмотрим какие порты открыты у нашего Ubuntu Server 18.04.

Всё отлично! 22 порт[SSH] открыт для внешних подключений.

Конечно же, найдутся люди которые потребуют безопасность UFW и OpenSSH выше чем представлена в этой статье, но это только первоначальная настройка, необходимая для того чтобы ссылаться на неё в других наших инструкциях. [фаервол — штука хорошая, и мы не будем отбрасывать его настройку, показывая установку какого-любо приложения на Ubuntu Server 18.04]

Скоро мы напишем статью подробно описывающую Управление UFW и Безопасность OpenSSH.

У меня всё!

/** **/ /** **/

ПОДЕЛИТЬСЯ ЗАПИСЬЮ

!—> Поделиться публикацией

Была ли вам полезна статья? Есть возможность поддержать проект.

49 699 views | 2 комментария

Linux, Ubuntu

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

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

1: Логин root

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

Чтобы войти как пользователь root, используйте команду:

ssh root@SERVER_IP_ADDRESS

На данном этапе может появиться предупреждение о подлинности хоста; примите его и предоставьте учётные root. Если вы используете SSH-ключи, защищенные парольной фразой, вам нужно будет ввести эту фразу сейчас. При первом подключении к серверу вам также будет предложено изменить root-пароль.

Что такое root?

Пользователь root является администратором среды Linux и обладает максимальными правами. Именно из-за широких привилегий аккаунта root использовать его для рутинной работы крайне небезопасно – так можно случайно нанести системе непоправимый вред.

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

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

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

adduser 8host

Примечание: Замените условное имя 8host именем своего пользователя.

После запуска команды вам будет предложено предоставить информацию о пользователе.

Установите надёжный пароль и при желании укажите дополнительную информацию. Чтобы принять информацию по умолчанию, просто нажмите Enter.

3: Доступ к sudo

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

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

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

usermod -aG sudo 8host

Теперь новый пользователь имеет права суперпользователя.

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

Серверы Ubuntu 18.04 могут использовать брандмауэр UFW для блокирования соединений с отдельными сервисами.

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

Чтобы просмотреть его, введите:

ufw app list Available applications: OpenSSH

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

ufw allow OpenSSH

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

ufw enable

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

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

Если вы установили и настроили дополнительные сервисы, вам необходимо откорректировать настройки брандмауэра, чтобы он не блокировал трафик этих сервисов.

Читайте также: Основы UFW: общие правила и команды фаервола

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

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

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

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

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

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

ssh 8host@your_server_ip

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

sudo command_to_run

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

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

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

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

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

Самый простой способ скопировать файлы с правильными правами – это команда rsync. Она скопирует каталог .ssh пользователя root, сохранит привилегии и изменит владельцев файлов. Обязательно укажите свои данные в приведенной ниже команде.

rsync --archive --chown=8host:8host ~/.ssh /home/8host

Откройте терминал и создайте новое соединение SSH:

ssh 8host@your_server_ip

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

sudo command_to_run

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

Заключение

Теперь сервер полностью настроен и готов к работе и развёртыванию приложений.

Tags: Ubuntu 18.04, Ubuntu 18.04 LTS

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

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

Snimok-ekrana-ot-2019-01-02-16-11-08-1024x576.png

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

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

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

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

Port 2323

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

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

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

Snimok-ekrana-ot-2019-01-02-16-31-06-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-32-16-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-34-33-1024x576.png

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

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

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

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

Snimok-ekrana-ot-2019-01-02-16-41-24-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-41-43-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-43-18-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-51-48-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-52-19-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-16-53-14-1024x576.png

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

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

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

Snimok-ekrana-ot-2019-01-02-17-37-57-1024x576.png

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

Snimok-ekrana-ot-2019-01-02-17-38-21-1024x576.png

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

88x31.png Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна. Используемые источники:

  • https://itdeer.ru/nastrojka-ubuntu-server-18-04/
  • https://www.8host.com/blog/nachalnaya-nastrojka-servera-ubuntu-18-04/
  • https://losst.ru/nastrojka-ubuntu-server-posle-ustanovki

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации