1 min read

Первый playbook Ansible: поднять новый сервер без ручной рутины

Первый playbook Ansible: поднять новый сервер без ручной рутины

Ситуация

Вчера мне снова пришлось заходить на свежий VPS по SSH.

Знакомый сценарий: apt update, создать пользователя, настроить ключи, закинуть fail2ban.

Каждый раз одно и то же. Руки чешутся автоматизировать.

Предыстория

Раньше я поднимал серверы вручную. Десять команд, пятнадцать минут работы.

Но когда у тебя пять проектов, а серверов стало двадцать, рутина начинает затягивать.

Я забывал отключать парольную аутентификацию. Однажды из-за этого на серве завелся брутфорс.

Проблема

Ручная настройка — источник ошибок. Пропустил строчку в конфиге SSH — дыра в безопасности.

Каждый сервер уникален, если делать вручную. Но он не должен быть уникальным.

Однотипные операции отнимают время, которое можно потратить на архитектуру.

Почему это важно

Время простоя и утечки данных стоят денег. Клиент платит за стабильность, а не за то, что ты вводишь команды.

Автоматизация первичной настройки — это база. Без неё любой новый сервер — это риск.

Команда тратит часы на однотипные действия вместо реальных задач.

Если сервер настраивается дольше трёх команд — значит, ты делаешь что-то не так.

Решение

Я написал стартовый playbook Ansible. Он делает всё, что нужно новому VPS:

  • 🚀 Обновляет систему (apt update + upgrade)
  • 👤 Создаёт пользователя с sudo-доступом
  • 🔑 Копирует SSH-ключи и отключает парольный вход
  • 🔒 Устанавливает fail2ban и UFW
  • 📦 Ставит базовый набор пакетов (curl, htop, git, ufw)

Playbook запускается одной командой: ansible-playbook init.yml

Он идемпотентен — можно перезапускать без последствий.

Всё, что нужно указать — IP сервера и имя пользователя.

Результат

Теперь поднятие нового сервера занимает ровно 30 секунд.

Я не забываю про fail2ban. UFW настроен сразу. Парольный вход заблокирован.

Команда использует этот playbook как шаблон для всех проектов.

Рутины стало меньше. Больше времени на полезные вещи.


📬 Зв'яжіться з нами

Бажаєте впровадити це у своєму бізнесі? Пишіть нам!

Связаться с нами
Telegram
WhatsApp
Email