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

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

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

1: Входим в систему к Root-пользователь

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

Если вы ещё не залогинились на своём сервере, воспользуйтесь детальным руководством по подключению к Droplet при помощи SSH.

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

$ ssh root@your_server_ip

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

Что такое root-пользователь?

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

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

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

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

Это пример создания пользователя с ником 8host, а вам нужно будет выбрать ник себе по вкусу:

adduser 8host

Дальше нужно ответить на несколько вопросов, начиная с пароля учетной записи.

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

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

3: Предоставление прав администратора

Мы создали новую учётную запись с обычными правами пользователя.

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

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

Чтобы предоставить новому пользователю такие права, нужно добавить его в группу sudo. В Debian 11 пользователи из группы sudo могут использовать команду sudo по умолчанию.

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

usermod -aG sudo 8host

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

4: Настраиваем базовый брандмауэр

Серверы Debian могут использовать брандмауэры, чтобы контролировать конкретные подключения к определенным сервисам. В этом руководстве мы установим настроим политики брандмауэра UFW, чтобы управлять исключениями.

Можно использовать менеджер пакетов apt для установки UFW. Обновите локальный индекс, чтобы получить свежую информацию о доступных пакетах, а затем установите брандмауэр UFW, набрав:

apt update
apt install ufw

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

Вы получите список доступных профилей приложений, введя:

ufw app list
Available applications:
. . .
OpenSSH
. . .

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

ufw allow OpenSSH

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

ufw enable

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

ufw status

 Status: active

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

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

5: Включение внешнего доступа для обычного пользователя

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

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

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

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

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

$ ssh 8host@your_server_ip

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

sudo command_to_run

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

Чтобы повысить безопасность сервера, мы настоятельно рекомендуем настроить ключи SSH вместо парольной аутентификации. Следуйте нашему руководству по настройке ключей SSH в Debian 11, чтобы узнать, как это сделать.

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

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

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

Обязательно замените 8host в команде именем вашего пользователя:

# cp -r ~/.ssh /home/8host
# chown -R 8host:8host /home/8host/.ssh

Команда cp -r  копирует весь каталог в домашний каталог нового пользователя, а команда chown -R  меняет владельца этого каталога (и его содержимого) на заданные username:groupname (Debian создает группу с вашим именем пользователя  по умолчанию).

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

$ ssh 8host@your_server_ip

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

$ sudo command_to_run

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

Заключение

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

Tags: , ,

Добавить комментарий