Blog logotype

Начало работы с сервером: настройка VPS

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

Обновление

Для начала необходимо подключиться к серверу. Это можно сделать через программу Putty, либо через терминал с помощью следующей команды (замените слово host на IP-адрес или название хоста вашего сервера):

ssh root@host

Если при подключении терминал возвращает ошибку WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!, то это значит, что на сервере, к которому вы пытаетесь подключиться, изменился ключ и он не совпадает с тем ключом, который вы уже получали ранее, когда осуществляли подключение к серверу в предыдущие разы. Чтобы исправить эту ошибку, нужно сгенерировать новые ключи для этого хоста:

ssh-keygen -R host

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

sudo apt-get update && apt-get upgrade

Добавление нового пользователя

Символ # в командной строке говорит о том, что вы зашли как суперпользователь (root), у которого система не спрашивает пароль для внесения изменений в систему. Довольно опасно регулярно использовать учетную запись с такими привилегиями, поскольку команды такого пользователя могут влиять на всю файловую систему сервера. Поэтому для начала создадим новую учетную запись (здесь username необходимо заменить на имя пользователя, которое вы выберете):

adduser username

Если вы хотите пропустить вопрос, можете нажать ENTER:

Поля ввода при добавлении нового пользователя

После данной операции в систему добавится новый простой пользователь. Теперь нам необходимо добавить его в группу sudo, что позволит пользователю запускать команды с правами суперпользователя, помещая слово sudo (superuser do) перед каждой командой. Чтобы он мог воспользоваться утилитой sudo, выполните следующую команду:

usermod -aG sudo username

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

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

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

Места хранения ключей

Если на вашем локальном компьютере установлен ssh-copy-id, вы можете использовать эту утилиту следующим образом:

ssh-copy-id username@host

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

cat ~/.ssh/id_rsa_test.pub | ssh username@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

После ввода пароля в командной строке ваш открытый ключ будет добавлен в каталог сервера .ssh/authorized_keys.

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

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

sudo ufw allow OpenSSH

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

sudo ufw enable

С помощью следующей команды можно посмотреть активен ли брандмауэр, а также список исключений:

sudo ufw status

Файловый менеджер

Приятным бонусом для начала работы с сервером является установка Midnight Commander, двухпанельного файлового менеджера:

sudo apt-get install mc

Midnight Commander

Его удобно использовать для управления файлами вместо стандартных команд вроде ls, cd и пр. Конечно, существуют и другие инструменты. Вы можете написать в комментариях, какие, по вашему мнению, являются лучшими.

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