Создание и настройка VPS
Привет, дорогой читатель! В этой статье оставлю памятку для тебя и себя о том, как настроить VPS после его покупки.
Предисловие
Как-то раз автор забыл продлить сервер в хостинге. Хостинг такой сервер удалил... Пришлось купить новый. Исходим из следующих допущений:
- Сервер под управлением Ubuntu (актуальной версии).
- Есть Root доступ к серверу через SSH и авторизацией с помощью пароля.
- Создать нового пользователя на сервере с правами Администратора (sudo).
- Получить доступ к серверу от имени нового пользователя с авторизацией по сертификату.
- Установить Docker
Создание нового пользователя
- Авторизоваться на сервере с правами Root через SSH или терминал.
- Создать нового пользователя (newuser). При необходимости, установить пароль для этого пользователя.
sudo adduser newuser
sudo usermod -aG sudo newuser
Настройка авторизации
Для настройки авторизации с помощью сертификата требуется выполнить следующие шаги:
ssh-keygen -t ed25519 -C "newuser@mypc"
- При создании требуется задать название файла. Например: idnewuser.
- Опционально, можно задать пароль для сертификата. // Прим.: лучше создать.
cd ~newuser/.ssh/
nano authorized_keys <вставить содержимое idnewuser.pub на отдельной строке>
<sudo> chown -R newuser:newuser /home/newuser/.ssh <sudo> chmod 700 /home/newuser/.ssh <sudo> chmod 600 /home/newuser/.ssh/authorized_keys
Установка Docker
Используя Root авторизацию выполнить шаги инструкции "Install using the apt
repository" тут: https://docs.docker.com/engine/install/ubuntu/
После установки выполнить шаги:
<sudo> usermod -aG docker newuser
groups newuser
Проверить права нового пользователя
Требуется авторизоваться с помощью сертификата и проверить, что у newuser есть права на выполнение команд docker без sudo.
ssh newuser@<ip-адрес> -i ./idnewuser
docker ps
Отключение авторизации через пароль
Для отключения авторизации с помощью пароля для newuser требуется выполнить следующие шаги на сервере
<sudo> nano /etc/ssh/sshd_config
Match User newuser PasswordAuthentication no
sudo sshd -t
sudo systemctl restart sshd