После создания нового сервера с Ubuntu 20.04, вам следует выполнить некоторые важные шаги по настройке в рамках первоначальной установки. Эти шаги повысят безопасность и удобство использования вашего сервера и дадут вам прочную основу для последующих действий.
Чтобы войти на сервер, вам нужно знать публичный IP-адрес вашего сервера. Вам также понадобится пароль или закрытый ключ для учетной записи пользователя root, если вы установили SSH-ключ для аутентификации. При заказе виртуального сервера (VPS) в нашей компании вы получите письмо с реквизитами доступа к этому серверу на ваш контактный адрес.
В письме содержатся следующие сведения:
- URL панели управления сервером, а также логин и пароль для доступа к ней;
- IP-адрес вашего сервера;
- Логин и пароль администратора сервера.
Подключитесь к своему серверу как пользователь root, используя следующую команду, в которой замените your_server_ip
IP-адресом вашего сервера:
ssh root@your_server_ip
Примите предупреждение о подлинности хоста, если оно появится. Если ваш сервер использует аутентификацию по паролю, введите пароль для root для входа в систему. Если вы используете SSH-ключ, защищенный парольной фразой, вам может потребоваться ввести парольную фразу при первом использовании ключа в каждом сеансе. Если вы впервые входите на сервер с паролем, вам также может потребоваться изменить root-пароль. Следуйте инструкциям по изменению пароля, если вы получите соответствующее приглашение.
Пользователь root — это административный пользователь в среде Linux с повышенными привилегиями. Из-за повышенных привилегий учетной записи root не рекомендуется использовать ее регулярно. Учетная запись root может внести очень разрушительные изменения, даже случайно.
Создание нового пользователя
Следующим шагом созданим новую учетную запись пользователя с пониженными привилегиями для повседневного использования.
В этом примере создается новый пользователь под именем atlex, но вы должны заменить его на имя пользователя, которое вам нравится:
adduser atlex
Введите надежный пароль и, по желанию, заполните любую дополнительную информацию. Эта информация не является обязательной, и вы можете нажать ENTER в любом поле, которое хотите пропустить.
Предоставление административных привилегий
Теперь у вас есть новая учетная запись пользователя с привилегиями обычной учетной записи. Однако иногда вам придется выполнять административные задачи в качестве пользователя root.
Чтобы избежать выхода из системы обычного пользователя и повторного входа под учетной записью root, вы можете установить так называемые привилегии суперпользователя или root для обычной учетной записи вашего пользователя. Эти привилегии позволят обычному пользователю выполнять команды с административными привилегиями, поставив перед командой слово sudo
.
Чтобы добавить эти привилегии новому пользователю, необходимо добавить его в системную группу sudo. По умолчанию в Ubuntu 20.04 пользователям, входящим в группу sudo, разрешено использовать команду sudo
.
От имени root выполните эту команду, чтобы добавить нового пользователя в группу sudo (замените выделенное имя пользователя atlex
на нового пользователя):
usermod -aG sudo atlex
Теперь вы можете вводить sudo перед командами, чтобы запускать их с привилегиями суперпользователя при входе в систему в качестве обычного пользователя.
Настройка брандмауэра
Серверы Ubuntu 20.04 могут использовать брандмауэр UFW для обеспечения разрешения только соединений с определенными службами. Вы можете настроить базовый брандмауэр с помощью этого приложения.
Приложения могут регистрировать свои профили в UFW при установке. Эти профили позволяют UFW управлять этими приложениями по имени. OpenSSH, служба, позволяющая вам подключаться к вашему серверу, имеет профиль, зарегистрированный в UFW.
Вы можете просмотреть список установленных профилей UFW, выполнив команду:
ufw app list
Ожидаемый вывод:
Available applications:
OpenSSH
Вам нужно убедиться, что брандмауэр разрешает SSH-соединения, чтобы вы могли войти на свой сервер в следующий раз. Разрешите эти соединения, набрав:
ufw enable
Введите y
и нажмите ENTER, чтобы продолжить. Вы можете убедиться, что соединения SSH все еще разрешены, набрав:
ufw status
Ожидаемый вывод:
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
В настоящее время брандмауэр блокирует все соединения, кроме SSH. Если вы установите и настроите дополнительные службы, вам нужно будет изменить настройки брандмауэра, чтобы разрешить новый трафик на вашем сервере. Вы можете изучить некоторые общие операции UFW в нашем руководстве UFW Essentials.
Включение внешнего доступа для вашего постоянного пользователя
Теперь, когда у вас есть постоянный пользователь для ежедневного использования, вам нужно убедиться, что вы можете напрямую подключиться к учетной записи по SSH.
Настройка SSH-доступа для нового пользователя зависит от того, использует ли корневая учетная запись вашего сервера пароль или SSH-ключи для аутентификации.
Если корневая учетная запись использует аутентификацию по паролю
Если вы вошли в учетную запись root с помощью пароля, то аутентификация по паролю включена для SSH. Вы можете подключиться по SSH к новой учетной записи пользователя, открыв новый терминальный сеанс и используя SSH с новым именем пользователя:
ssh atlex@your_server_ip
После ввода пароля обычного пользователя вы войдете в систему. Помните, если вам нужно выполнить команду с правами администратора, введите перед ней sudo
, как показано ниже:
sudo command_to_run
При первом использовании sudo в каждом сеансе (и периодически после этого) вам будет предложено ввести пароль вашего обычного пользователя.
Чтобы повысить безопасность вашего сервера, мы настоятельно рекомендуем настроить SSH-ключи вместо аутентификации по паролю. Следуйте нашему руководству по настройке SSH-ключей.
Если учетная запись root использует аутентификацию с помощью ключа SSH
Если вы вошли в учетную запись root с помощью ключей SSH, то аутентификация по паролю для SSH отключена. Чтобы войти в систему как обычный пользователь с ключом SSH, необходимо добавить копию локального открытого ключа в файл ~/.ssh/authorized_keys
нового пользователя.
Поскольку ваш открытый ключ уже находится в файле ~/.ssh/authorized_keys
учетной записи root на сервере, вы можете скопировать этот файл и структуру каталогов в новую учетную запись пользователя, используя текущую сессию.
Самый простой способ скопировать файлы с правильными правами собственности и разрешениями - это команда rsync
. Эта команда скопирует каталог .ssh
пользователя root, сохранит разрешения и изменит владельцев файлов, и все это за одну команду. Обязательно измените atlex
в команде ниже, в соответствовии с именем вашего обычного пользователя:
rsync --archive --chown=atlex:atlex ~/.ssh /home/atlex
Теперь откройте новый сеанс терминала на локальной машине и используйте SSH с новым именем пользователя:
ssh atlex@your_server_ip
Вам будет предложено ввести пароль обычного пользователя при первом использовании sudo
в каждом сеансе (и периодически после этого).