Чистый сервер стоит привести в порядок до того, как ставить на него сайты и сервисы. Десять минут сейчас избавят от проблем с безопасностью позже. Все команды выполняются под root.
Обновите систему
Образ системы мог быть собран несколько недель назад. Установите накопившиеся обновления:
$ apt update && apt upgrade -yЕсли обновилось ядро, система попросит перезагрузку. Проверить это можно так:
$ ls /var/run/reboot-required && rebootЗадайте имя хоста
Понятное имя помогает не перепутать серверы в терминале и в журналах:
$ hostnamectl set-hostname web-01Чтобы sudo не предупреждал о неизвестном имени, добавьте его в /etc/hosts строкой «127.0.1.1 web-01».
Создайте пользователя для работы
Работать под root каждый день рискованно: одна опечатка в команде — и последствия затронут всю систему. Создайте отдельного пользователя и дайте ему права sudo:
$ adduser deploy$ usermod -aG sudo deployЕсли у root уже настроен вход по ключу, скопируйте ключи новому пользователю:
$ rsync --archive --chown=deploy:deploy ~/.ssh /home/deployЧасовой пояс
По умолчанию на сервере UTC. Для журналов это удобно, но если cron-задачи должны выполняться по местному времени, смените пояс:
$ timedatectl set-timezone Europe/MoscowАвтоматические обновления безопасности
$ apt install -y unattended-upgrades$ dpkg-reconfigure --priority=low unattended-upgradesПодробная настройка, включая автоматическую перезагрузку ночью, — в статье «Автоматические обновления безопасности».
Проверьте результат
- apt list --upgradable показывает пустой список.
- hostnamectl выводит новое имя.
- Под пользователем deploy команда sudo whoami отвечает root.
- systemctl status unattended-upgrades показывает active.