В чём фокус
На старте хватает облачного n8n. Свой сервер нужен, когда упираетесь в лимиты облака или когда данные нельзя выпускать наружу. На Beget n8n ставится из каталога приложений вместе с сервером, консоль для этого не нужна. Консоль нужна потом: на час, за который вы поправите то, что по умолчанию стоит не так. От этого часа зависит, промолчит ли сервер в тот момент, когда сценарий упадёт. Ниже порядок установки и чек-лист этого часа.
Когда пора на свой сервер
В гайде про первый сценарий я советовал не спешить: свой сервер нужен, когда упираетесь в лимиты облака или когда данные нельзя выпускать наружу. Оба случая вы заметите сами. Этот гайд для тех, кто заметил.
Цена переезда не только в деньгах за сервер. На своём сервере обновления, копия, оплата и сообщение о падении — ваша работа. Из этого и состоит чек-лист первого часа.
Что получаете за эти деньги
| Что | На страницах Beget, 14.10.2026 | Что это значит для вас |
|---|---|---|
| Сервер | 2 ядра, 2 ГБ памяти, 30 ГБ NVMe, канал 1000 Мб/с | Самая маленькая конфигурация, с которой открывается страница n8n в каталоге |
| Цена | 27 ₽ в день за сервер и 5 ₽ в день за публичный IPv4, итого 32 ₽ в день | Тарификация посуточная. За 30 дней 32 × 30 = 960 ₽. На странице есть переключатель «Час / День / Месяц» |
| n8n | В списке готовых решений с ценой «Бесплатно» | Платите за сервер, за сам n8n отдельно не платите |
| Бесплатно с сервером | Автоматические бэкапы, мониторинг 24/7, почта, DNS-хостинг, приватные сети | Копию Beget делает сам, раз в несколько дней. Перед обновлением всё равно нужен снапшот |
| Домен | Технический домен вида слово.beget.app, сертификат для выбранного домена Beget выпускает сам | Адрес с https с первого дня. Для входа через Google OAuth нужен свой домен второго уровня |
| Где стоит сервер | В калькуляторе тарифов — Россия, Санкт-Петербург | Часть зарубежных API с российского сервера не отвечает, об этом ниже |

Что понадобится
- Аккаунт Beget и деньги на балансе. Сервер списывает по дням
- Пароль администратора n8n: его задают при создании сервера, сохраните его сразу
- Терминал с SSH на компьютере. В Windows 11 и macOS клиент уже стоит. Понадобится для переменных и обновления
- Телефон с Telegram и бот от BotFather, если будете проверять вебхук:
/newbot, токен уходит в поле Access Token в n8n - Свой домен в первый день не обязателен. Нужен, если Telegram не видит технический домен или сервис требует домен второго уровня
Установка из каталога
Шаги со статьи базы знаний Beget про n8n, названия кнопок как на странице.
Открыть страницу n8n в каталоге
На странице n8n выберите конфигурацию и нажмите «Создать VPS». Аккаунта нет — Beget предложит зарегистрироваться.
Выбрать локацию
В верхней части страницы создания сервера. Для зарубежных локаций минимальная конфигурация — 2 ядра, 2 ГБ памяти, 30 ГБ NVMe.
Убедиться, что выбран n8n
Готовое решение n8n на этой странице выбрано по умолчанию.
Выбрать домен
По умолчанию Beget создаёт технический домен вида
слово.beget.app, слово случайное. В выпадающем списке можно выбрать свой домен, если он уже есть в аккаунте. Зарегистрировать новый можно в разделе «Домены и поддомены».Задать вход в n8n
Логин и пароль администратора — ими вы будете входить в панель n8n. На снимке в статье поле логина называется «E-mail администратора».
Создать сервер
При необходимости поправьте остальные параметры VPS и нажмите «Создать виртуальный сервер». Здесь же, по другой статье Beget, можно сразу добавить свой SSH-ключ: «Добавить новый SSH-ключ».
Забрать адрес и доступы
Когда сервер создан и программа установлена, в карточке сервера нажмите «Информация о n8n». В окне будут ссылка на панель и доступы к ней.


Первый час: что поправить до первого сценария
Часовой пояс расписаний
Расписание в n8n считает по часовому поясу сценария, а если он не задан — по поясу всего n8n. Без настройки документация n8n называет поясом по умолчанию America/New_York. У меня n8n на Beget считал по Москве: нода с «UTC» в имени и выражением
0 6 * * *сработала в 6:00 по Москве, и 6 июня 2026 года предупреждение пришло в шесть утра вместо девяти. Один сценарий поправить проще всего в его настройках, поле Timezone. Для всего n8n нужна переменнаяGENERIC_TIMEZONE, напримерEurope/Moscow. Настройки этого n8n лежат на сервере в/opt/beget/n8n, в файлах.envиdocker-compose.yml. После правки —docker-compose downиdocker-compose up -d. Проверка: тестовое расписание на ближайшие минуты и время, когда оно сработало.Адрес вебхуков
Внешние сервисы стучатся в n8n по адресу, который он о себе знает. Откройте любую ноду Webhook: боевой адрес должен начинаться с
https://и вашего домена. Если тамlocalhostилиhttp, задайте переменнуюN8N_WEBHOOK_URLс публичным https-адресом. В документации n8n она заменилаWEBHOOK_URL, старое имя устарело с версии 2.35.0. Telegram примет вебхук только на https и только на портах 443, 80, 88 и 8443. Живая проверка: пустой сценарий с одной нодой Telegram Trigger и ботом, который заведомо работает. Включился без ошибки — адрес в порядке.Ключи — только в credentials
С версии 2.0 n8n по умолчанию закрывает доступ к переменным окружения из Code-ноды (
N8N_BLOCK_ENV_ACCESS_IN_NODE). У меня на Beget выражение{{ $env.OPENAI_API_KEY }}в заголовке HTTP-ноды роняет прогон сaccess to env vars denied. Это не поломка. Ключ произвольного API кладите в credentials типа Header Auth, Google у меня подключён через сервисный аккаунт. Бонус: в выгрузке сценария не остаётся ни одного ключа. Как выдавать доступы боту — в шести проверках.Сценарий-обработчик ошибок
Отдельный сценарий: нода Error Trigger и сообщение вам в Telegram. Назначьте его в настройках каждого рабочего сценария, поле Error Workflow, и обязательно включите сам обработчик. 1 июня 2026 года у меня три падения прошли мимо выключенного обработчика: ноль запусков, ноль сообщений. Проверка: сломайте тестовый сценарий и дождитесь сообщения. Подробнее — в гайде про пять мест, где n8n падает молча.
Копия
Beget сам копирует все серверы раз в несколько дней и хранит копии в другом дата-центре. Загляните в раздел Backup и убедитесь, что свежая копия есть. Перед обновлением и любой правкой на сервере делайте снапшот в разделе «Снапшоты»: автоматической копии может быть несколько дней. Как убедиться, что из копии вообще можно восстановиться, — в гайде «Зелёная галочка ничего не доказывает».
Баланс
Сервер списывает деньги по дням. 15 сентября 2026 года мой n8n больше часа не отвечал: сервер был заморожен за неоплату, а причину сначала искали в сети. Держите баланс с запасом и, если сервер замолчал, первым делом смотрите оплату.
Вход на сервер
SSH-ключ вместо пароля, затем отключить вход по паролю и включить файрвол — по статье Beget «Первые шаги после создания VPS». В файрволе оставьте открытыми SSH и порты 80 и 443: панель n8n и вебхуки работают по https.
Если Telegram не видит ваш сервер
Эта ошибка относится именно к техническому домену *.beget.app. При включении сценария
с Telegram Trigger n8n показывает Bad Request: bad webhook: Failed to resolve host: Temporary failure in name resolution.
Ошибку присылает Telegram: его серверы не смогли найти ваш домен. n8n, бот и сценарий тут ни при чём. Я ловил её 23–25 апреля 2026 года на своём сервере и 6 мая на только что поставленном сервере клиента. 7 мая на моём сервере новый бот включился с первой попытки, и почему в этот раз прошло, я так и не выяснил.
Обманчивая деталь: старые сценарии с Telegram в это время продолжали работать. Похоже, Telegram помнит адрес сервера с прошлой успешной регистрации и шлёт туда сообщения без нового поиска. Новое включение — это новая регистрация вебхука и новый поиск, на нём и падает.
Проверить на пустом сценарии
Одна нода Telegram Trigger и бот, который точно работает. Падает с той же ошибкой — дело не в вашем сценарии, дальше его не трогайте.
Не тратить время на обходы
Новый токен, новый бот, перезапуск n8n, ожидание в 5–10 минут — я пробовал всё это, не помогло ничего.
Свой домен
Направьте его A-записью на IP сервера и смените домен n8n по разделу «Смена домена» в статье Beget. Сервер менять не нужно, Beget здесь работает нормально.
Если домена пока нет
Временная мера — параметр
ip_addressв методе TelegramsetWebhook: он задаёт IP, на который Telegram шлёт запросы вместо найденного через DNS. Держится до первого перевключения сценария: n8n зарегистрирует вебхук заново, уже без этого параметра. Другой путь — туннель Cloudflare со своим публичным адресом.
Не путайте с обычной задержкой. Если сценарий включился без ошибки, а ответ на сообщение
не пришёл сразу, подождите до пяти минут: Telegram повторяет доставку с нарастающей паузой.
С ошибкой Failed to resolve host пять минут не спасут: у меня Telegram не находил домен
часами.
Обновление
Beget советует обновить n8n до последней версии сразу, до начала работы. Обновление вы делаете сами, поддержка Beget обещает постараться помочь, если что-то пойдёт не так. Шаги со статьи базы знаний Beget.
Снапшот
Проверьте свежую копию в разделе «Backup» или сделайте снапшот в разделе «Снапшоты», чтобы было куда откатиться.
Зайти на сервер и в папку n8n
Подключитесь по SSH и выполните
cd /opt/beget/n8n.Поменять версию
Откройте
docker-compose.yml, напримерnano docker-compose.yml. Найдите строкуimage: docker.n8n.io/n8nio/n8n:X.X.Xи поставьте нужную версию. Список версий — на странице релизов n8n на GitHub. Сохранить в nano: Ctrl+X, затем y и Enter.Скачать, остановить, запустить
По очереди:
docker-compose pull,docker-compose down,docker-compose up -d.Подождать
2–5 минут, пока n8n переносит данные на новую версию и запускается.
Убрать старые образы
Когда убедились, что всё работает:
docker image prune -a -f.
Документация n8n добавляет два правила. Обновляйтесь часто, хотя бы раз в месяц: прыжок через много версий рискованнее. И перед обновлением читайте release notes — там перечислены изменения, которые ломают старые сценарии.
Чек-лист первого часа
Чек-лист первого часа: n8n на своём сервере Beget
[ ] Часовой пояс: знаю, по какому времени считает сервер; нужный пояс задан в настройках сценария или переменной GENERIC_TIMEZONE; тестовое расписание сработало в ожидаемую минуту
[ ] Адрес вебхуков: боевой адрес в ноде Webhook начинается с https:// и моего домена
[ ] Пустой сценарий с Telegram Trigger и рабочим ботом включается без ошибки
[ ] В полях нод нет ни одного ключа, все доступы в credentials
[ ] Обработчик ошибок включён, назначен сценариям и прислал тестовое сообщение
[ ] В разделе Backup есть свежая копия, перед обновлением — снапшот
[ ] n8n обновлён, release notes прочитаны
[ ] Баланс с запасом: сервер списывает по дням
[ ] Вход по SSH-ключу, пароль отключён, в файрволе открыты SSH, 80 и 443
[ ] Свой домен — если Telegram не видит технический или нужен вход через Google OAuthЧтобы не споткнуться
Имя — просто подпись. Расписание считает по поясу сценария или всего n8n, и минуту для теста считайте по нему.
Путь вида mock/:p1/:p2 на моём сервере отдаёт 404 «The requested webhook is not registered», хотя сценарий включён. Проверено 18 августа 2026 года. Статичный путь работает сразу. Делайте статичные пути, а вызовы различайте по телу запроса и параметрам после ?.
9 июня 2026 года сеть от Beget до Telegram периодически отвечала «The host is unreachable». Отправка падала, а сообщение при этом часто доходило, и сценарий слал его повторно. Ваш сценарий тут не виноват, но конечные ноды должны такое переживать — настройка On Error разобрана в гайде про молчаливые падения.
У меня это Meta: она с Beget недоступна. Проверьте свои сервисы с сервера до того, как переносить сценарии.
n8n удаляет выполнения по возрасту (по умолчанию старше 14 дней) или по количеству (больше 10 000). Хотите держать ошибки дольше успешных — нужен свой сценарий-чистильщик через API n8n.
Частые вопросы
- Нужен ли свой домен в первый день?
- Нет. Технический домен с https Beget даёт сразу. Свой понадобится в двух случаях: Telegram не находит технический домен (раздел выше) или сервис требует домен второго уровня — Beget в пример приводит Google OAuth.
- Сколько это стоит в месяц?
- На 14.10.2026 минимальная конфигурация с публичным IPv4 — 32 ₽ в день, за 30 дней 960 ₽. Цена может поменяться, сверяйте на странице Beget. Из чего ещё складывается месяц небольшого продукта — в отдельном разборе.
- Можно поставить n8n без каталога?
- Да. Документация n8n описывает установку через Docker Compose, одной командой и в облаках, установка через npm с версии 3.0 устаревает. Каталог Beget ставит n8n тем же Docker Compose: файл
docker-compose.ymlлежит в/opt/beget/n8n. Здесь ручную установку не разбираю. - Как перезапустить n8n?
- По SSH из
/opt/beget/n8n:docker-compose down && docker-compose up -d. Так Beget перезапускает n8n в своей инструкции по смене домена. Отдельной кнопки на открытых страницах Beget я не нашёл. - Что дальше, когда сервер настроен?
- Первый бот. Как собрать его на n8n с моделью, памятью и обработкой ошибок — в гайде про Telegram-бота с ИИ.
Источники
- Beget, база знаний — n8n: шаблоны и сценарии примененияУстановка, обновление, смена домена, снимки экранов. Даты на странице нет, открыта 14.10.2026
- Beget — n8n в каталоге приложенийКонфигурация, цена за день, что бесплатно с сервером. Открыта 14.10.2026
- Beget — аренда VPSТарифы, посуточная тарификация, n8n в каталоге «Бесплатно», автоматические бэкапы. Открыта 14.10.2026
- Beget, база знаний — первые шаги после создания VPSSSH-ключ, отключение входа по паролю, файрвол, мониторинг. Открыта 14.10.2026
- docs.n8n.io — часовой пояс (GENERIC_TIMEZONE)Пояс по умолчанию America/New_York. Открыта 14.10.2026
- docs.n8n.io — настройки сценарияПоля Timezone и Error Workflow. Открыта 14.10.2026
- docs.n8n.io — адрес вебхуков за обратным проксиN8N_WEBHOOK_URL вместо WEBHOOK_URL с версии 2.35.0. Открыта 14.10.2026
- docs.n8n.io — что ломает версия 2.0Доступ к переменным окружения из Code-ноды закрыт по умолчанию. Открыта 14.10.2026
- docs.n8n.io — обновление n8nОбновляться хотя бы раз в месяц, читать release notes. Открыта 14.10.2026
- docs.n8n.io — история выполненийЧистка по возрасту и количеству. Открыта 14.10.2026
- docs.n8n.io — Telegram Trigger, типичные проблемыHttps-адрес для вебхука, один вебхук на бота. Открыта 14.10.2026
- docs.n8n.io — доступ к TelegramТокен от BotFather в поле Access Token. Открыта 14.10.2026
- Telegram Bot API — setWebhookПорты 443, 80, 88, 8443 и параметр ip_address. Открыта 14.10.2026
- docs.n8n.io — свой серверСпособы установки, npm устаревает с версии 3.0. Открыта 14.10.2026