Начало работы с сервером: настройка 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
Его удобно использовать для управления файлами вместо стандартных команд вроде ls
, cd
и пр. Конечно, существуют и другие инструменты. Вы можете написать в комментариях, какие, по вашему мнению, являются лучшими.
На этом настройка сервера закончена и дальнейшие действия зависят от целей использования VPS. Наиболее частым выбором является развертывание веб-сервера, поэтому следующие статьи будут посвящены настройке и установке.