Хей, теперь мы в Telegram

Хостинг HostPro.ua

узнавайте о скидках и важных новостях первыми
subscription-logo
Присоединиться

Нам 22 года! Дарим частичку света за Хостинг или VPS до 28.02.2023

Забрать подарок

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

Введение

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

Вход в систему под именем Root

Первоначально стоит проверить внешний IP-адрес сервера и данные доступа — пароль для подключения по SSH или, в случае подключения root-пользователя, закрытый ключ.

Подключаемся к серверу, авторизуясь под root-пользователем, используя команду:

ssh [email protected]_сервера

В случае успешного подключения, на экране появится приветствие и основные сведения о системе.

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

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

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

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

apt update

Проверим список доступных обновлений:

apt list --upgradable

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

apt install название_пакета

Если надо обновить все доступные пакеты используем:

apt upgrade

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

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

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

adduser имя пользователя

Далее нужно будет заполнить поле пароль и при потребности другую дополнительную информацию. Если вы не желаете заполнять эти поля нажмите Enter.
Предоставление привилегий администратора подразумевает доступ пользователя к команде sudo — используется перед командой, которую следует выполнить на правах администратора.
Затем, для того чтобы предоставить новому пользователю привилегии администратора, добавим его в группу sudo, команда выполняется с-под root-пользователя:

usermod -aG sudo имя пользователя

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

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

Установка брандмауэра
Сервер Ubuntu использует брандмауэр UFW, чтобы разрешить трафик и подключения к ограниченному количеству сервисов. Используя его, есть возможность настроить базовый брандмауэр.
UFW (Uncomplicated Firewall) – утилита для управления iptables.
Каждое приложение регистрируют свой профиль при установке UFW. Эти профили позволяют UFW по имени управлять приложениями.

Для примера, OpenSSH (сервис, отвечающий за подключение к серверу)

Вы можете проверить это, выполнив команду:

ufw app list
Output
Available applications:
OpenSSH

Убедимся, что SSH-соединение разрешено:

ufw allow OpenSSH

Активировать брандмауэр можно выполнив:

ufw enable

Введите “y” и кликните ENTER. Можно увидеть, что SSH-соединения разрешены, путем ввода:

ufw status
Output
Status: active

To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)

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

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

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

Генерация SSH ключа

Обратите внимание, что этот способ является более безопасным чем пароль.
Генерация ключей происходит на локальной машине, с которой будут происходить подключения к серверу.
Выполним команду

cd

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

ssh-keygen -t rsa -f .ssh/myserver

Опция

-f .ssh/myserver

— указание пути сохранения ключа Если её не использовать, то SSH-keygen сохранит ключ в файл по-умолчанию .ssh/id_rsa

Опционально можете ввести дополнительный пароль для ключей, если в этом нет потребности нажмите Enter.

Добавление публичного SSH ключа на сервер

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

Использовать для этого можно два способа.

Первый способ: ssh-copy-id
На устройстве, где производили генерацию ключей выполните:

ssh-copy-id -i .ssh/myserver.pub имя_пользователя@ip_сервера

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

ssh -i .ssh/myserver имя_пользователя@ip_сервера

опция

-i .ssh/myserver
  • указание на путь к ключу, к которому следует подключаться (надо подключаться, если при генерации задавали нестандартный путь).
    Второй способ: Вручную (команды выполняются из-под созданного пользователя)
    В корне созданного пользователя создайте каталог .ssh и задайте права.
mkdir ~/.ssh
chmod 700 .ssh

Внутри каталога .ssh создайте файл authorized_keys. Например, мы использовали для этого редактор vim:

vim ~/.ssh/authorized_keys

Поместите в него публичный ключ.
Нажмите Shift : для выхода из редактора, и x, для сохранения внесенных изменений, кликаем ENTER чтобы подтвердить действие.
Правим права для файла, чтобы разрешить доступ владельцу.
В терминале вводим команду:

chmod 600 ~/.ssh/authorized_keys

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

Аутентификация по паролю

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

ssh имя_пользователя@ip_сервера

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

sudo команда

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

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

SNAP — пакет приложения Linux, который устанавливается на сервер без дополнительных зависимостей.
Snap-пакетами управляет демон snapd.
Для установки snapd используем:

[email protected]:~# apt install snapd

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

[email protected]:~# snap list

Для установки пакета вводим:

[email protected]:~# snap install docker

Для удаления ненужных пакетов используем:

[email protected]:~# snap remove docker

Чтобы обновить все существующие пакеты:

[email protected]:~# snap refresh

Для обновления определенного пакета:

[email protected]:~# snap refresh docker

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

[email protected]:~# snap changes

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

SWAP — часть дискового пространства, которое используется сервером в случае исчерпания свободной оперативной памяти (RAM).

Проверим не подключен ли он:

[email protected]:~# swapon --show

или вторым способом:

[email protected]:~# free -h 
total used free shared buff/cache available 
Mem: 1.9G 168M 174M 3.1M 1.6G 1.6G 
Swap: 0B 0B 0B

Если в значениях нули — то не подключен.

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

df-h

Создаем файл размером 2GB

[email protected]:~# fallocate -l 2G /swapfile

Выставляем корректные права на файл:

[email protected]:~# sudo chmod 600 /swapfile

Обозначаем созданный файл как файл подкачки:

[email protected]:~# mkswap /swapfile

Активируем файл подкачки:

[email protected]:~# swapon /swapfile

Проверяем корректность активации:

[email protected]:~# swapon —show 
[email protected]:~# free -h

Файл будет активен до перезагрузки сервера.
Чтобы файл оставался активным и после перезагрузки сервера проделаем следующее:

Создадим копию файла до изменений

cp /etc/fstab /etc/fstab_old

Потом выполним команду:

[email protected]:~# echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Далее оптимизируем настройки системы для работы с файлом подкачки:

По дефолту параметр vm.swappiness равен 60 (высчитывается как 100-60=40%), он отображает собой критическое значение, после которого данные будут сохраняться в swap.
То есть, исходя из формулы представленной выше, при использовании ОЗУ больше чем на 40%, данные будут кэшироваться в swap.
Этот параметр стоит устанавливать исходя из конфигураций сервера, на котором происходит настройка. Это значение можно изменять, в случае, если ОЗУ достаточно.

Проверяем текущее значение параметра:

cat /proc/sys/vm/swappiness

Уменьшаем его значение до 10:

[email protected]:~# sysctl vm.swappiness=10

В случае, если надо выполнить изменение в текущей сессии до перезагрузки сервера.
Если требуется сохранить изменения и после перезагрузки сервера, в конце файла /etc/sysctl.conf допишите строку:

vm.swappiness=10

Дополнительно подкорректируем настройки параметра

vfs_cache_pressure

который отвечает за скорость удаления из кэша индексов. По умолчанию значение установлено 100.
Проверим текущее значение:

cat /proc/sys/vm/vfs_cache_pressure

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

[email protected]:~# sysctl vm.vfs_cache_pressure=50

— при необходимости установить ограничение до момента перезагрузки сервера

В конце файла

/etc/sysctl.conf

добавьте следующую строку:

vm.vfs_cache_pressure=50

при необходимости добавить изменения на постоянной основе

Заключение

В этой статье настройка ubuntu server после установки мы выполнили основные необходимые манипуляции, для последующей установки ПО.

На нашем сайте вы можете выбрать самый быстрый TurboVPS-тариф с бесплатным администрированием 24/7 и ежедневными автоматическими бэкапами или выделенный сервер с высокой производительностью и быстрой памятью DDR4 — Intel® Xeon®

Возможно, вас заинтересует

post thumbnail

Почему возникает 500 ошибка и как ее исправить?

Error 500 – одна из самых популярных ошибок, которую может подогнать сайт на WordPress,...

Diana Honcharenko | Обновлено: 09.08.2022

post thumbnail

Как‌ ‌установить‌ ‌Moodle на сервер‌:‌ ‌пошаговая‌ ‌инструкция

Ранее мы знакомили вас с системой Moodle. Прочесть подробную информацию о том, что это...

Diana Baranovska | Обновлено: 11.01.2022

post thumbnail

Ошибка 404: что это и как устранить

Ситуация, когда вы ищете определенную страницу, а на экране появляется уведомление “404 Not Found”...

Diana Baranovska | Обновлено: 12.01.2022

post thumbnail

Что такое отчет MTR и чем он полезен

MTR — это инструмент, благодаря которому администраторы имеют возможность диагностировать и иcправить ошибки Сети,...

Diana Baranovska | Обновлено: 11.01.2022