Как не потерять доступы к сайту после сдачи проекта
Доступы к сайту. Домен, хостинг, админка и репозиторий должны быть оформлены на вас с первого дня, иначе сайт фактически принадлежит подрядчику.
Сайт оплачен, а зайти некуда
Раз в месяц ко мне приходят с одной историей: «Сайт работает, но подрядчик не отвечает, паролей нет». Или: «Домен на его email, продлить не могу».
Проверено на живых проектах.
Деньги за разработку заплатили, актив в руках чужого человека. Это не мошенничество в половине случаев, просто доступы не передали и не записали.
Я обычно в первый же день прошу список: регистратор домена, DNS, хостинг, FTP/SSH, админка CMS, Git, Метрика, почта для форм. Не «потом», а до второго транша.
Четыре слоя, которые нельзя терять
- Домен. Кто владелец в WHOIS, чей email для продления.
- Хостинг/VPS. Панель, SSH, оплата сервера.
- Код и CMS. Админка WordPress, Tilda, репозиторий на GitHub.
- Сервисы. Метрика, почта, CRM, Telegram-бот для заявок.
Домен: главная точка отказа
Домен оформляют на ИП или физлицо заказчика, email для продления - рабочий, не личный студента-подрядчика.
Не теория.
Я видел, как сайт лёг на три дня, потому что письмо о продлении ушло в спам чужого ящика.
Если подрядчик «временно» регистрирует домен на себя, пропишите в договоре срок передачи и штраф за просрочку. Про владение после оплаты - отдельный разбор.
Чеклист домена:
- registrar: reg.ru / nic.ru / ...
- login: ваш email
- домен продлевается до: ДД.ММ.ГГГГ
- DNS: где редактируются записи (A, CNAME, MX)
Хостинг и панель
Доступ в Beget, Timeweb, Selectel или VPS: логин заказчика, двухфакторка на ваш телефон. Бэкапы: включены ли, куда падают.
Вот где ломают.
Я прошу скрин раздела «пользователи» панели, где видно, что аккаунт ваш.
Подробнее про связку - hosting, домен и SSL.
Репозиторий и код
На кастомном сайте код должен лежать в репозитории, куда у вас есть доступ owner или admin. GitHub, GitLab, Gitea - не важно. Важно: не только у фрилансера. При уходе новый разработчик клонирует repo и продолжает.
Нет repo - нет сайта как актива, есть только картинка в браузере на чужом сервере.
Что сохранить в менеджере паролей
- URL админки и логин/пароль (или invite на ваш email).
- SSH ключ или пароль, порт.
- API-ключи: Telegram bot, CRM, платёжка (если есть).
- Доступ к Метрике и Search Console.
- Резервная почта для восстановления везде, где возможно.
Tilda, WordPress, конструкторы
Tilda: аккаунт на ваш email, проект в вашей панели. WordPress: админ /wp-admin, хостинг ваш. Не «мы сами зайдём и поправим». Про WordPress - стоимость владения.
Я делаю таблицу доступов в Google Sheet и шарю заказчику, колонки: сервис, URL, логин, кто владелец, дата смены пароля. Обновляем при каждой передаче.
Формы и Telegram
Заявки идут в Telegram-бот или группу. Токен бота и chat_id часто знает только разработчик. Попросите: добавить ваш аккаунт админом бота, записать токен в ваш vault, показать, где он в коде. Иначе при смене хостинга заявки пропадут. См. как не потерять заявки с формы.
Смена подрядчика без паники
Если доступы у вас, смена исполнителя - техническая задача, если нет - переговоры, иногда суд, иногда новый сайт с нуля. Я обычно за два созвона передаю все ключи новому заказчику: экран, запись, PDF на одну страницу.
Шаблон письма «передайте доступы»
Нужны доступы:
1. Регистратор домена (логин на наш email)
2. Хостинг / VPS
3. Админка сайта
4. Git-репозиторий с правами admin
5. Яндекс.Метрика (роль редактора на наш аккаунт)
6. Telegram-бот или webhook формы
Двухфакторная аутентификация
2FA на вашем телефоне, не на телефоне подрядчика, при передаче проекта подрядчик снимает свою 2FA и помогает настроить вашу, при этом иначе через полгода вы не войдёте в панель, а он в отпуске без связи.
Бэкапы как страховка доступов
Даже при полных доступах делайте бэкап: экспорт БД, архив файлов, выгрузка текстов, раз в квартал или перед крупными правками, и храните не только на хостинге подрядчика. Я обычно показываю заказчику, как скачать бэкап из панели за пять минут.
Что спросить до предоплаты
«На чьё имя домен? Куда придут доступы и в какой срок после оплаты? Есть ли репозиторий?» Список вопросов - в материале до предоплаты и проверке подрядчика.
Если подрядчик пропал
Шаг 1: WHOIS домена, письмо регистратору с документами, если домен ваш по договору. Шаг 2: бэкапы с хостинга, если есть доступ к оплате. Шаг 3: новый подрядчик по имеющимся материалам. Подробнее - что делать, если подрядчик пропал.
К чему прийти
Доступы - часть deliverable, как вёрстка и форма, без них вы не владелец сайта, а арендатор чужой инфраструктуры, а соберите таблицу сегодня, даже если сайт уже работает год.
Таблица доступов: пример
Я заполняю с заказчиком за 15 минут на созвоне. Колонки: сервис, URL входа, логин (без пароля в doc!), владелец аккаунта, дата последней смены пароля, комментарий. Храним в менеджере паролей, таблица - оглавление.
Раз в полгода напоминаю: продлить домен, проверить, что карта для хостинга актуальна, 2FA не только на телефоне уволившегося менеджера. Скучно, но дешевле простоя.
GitHub и организация
Репозиторий в организации заказчика, подрядчик - collaborator, при завершении проекта collaborator снимают, owner остаётся у вас, плюс не personal repo фрилансера с вашим кодом. Я показываю заказчику экран: Settings в Collaborators в ваш email owner.
Если код на Bitbucket/GitLab, логика та же. Без git хотя бы zip релиза на ваш Drive после каждого этапа. Не идеально, но лучше нуля.
Метрика, Search Console, рекламные кабинеты
Сайт без аналитики на вашем аккаунте - слепота. Попросите роль редактора на Яндекс и Google. Директ и VK Ads часто на аккаунте агентства: уточните, что будет при расставании. Про цели - что ставить в Метрику.
Я обычно создаю счётчик на аккаунте заказчика, сам себя добавляю представителем, после сдачи представитель может остаться, owner - только у клиента.
Чеклист передачи после сдачи
Я отправляю одним сообщением: домен (registrar login), DNS, хостинг/VPS, Git repo, Метрика, Search Console, Telegram-бот для форм, почта для домена. Без паролей в открытом тексте: ссылка на запись в менеджере паролей или «приглашение в 1Password».
Заказчик ставит галочки: зашёл, вижу сайт, вижу счётчик, могу сменить пароль, пока галочки не все, финальная оплата не закрыта. Жёстко, но спасало обе стороны.
Если подрядчик уходит посреди проекта
Минимум: домен у вас, бэкап файлов и базы, доступ в Git, с этим другой dev поднимет сайт за день-два, и без домена и бэкапа - месяц переговоров. Про пропавших подрядчиков - отдельный материал, но профилактика дешевле.
2FA и корпоративная почта
Если домен привязан к корпоративной почте, смена registrar или DNS может затронуть MX-записи, перед любыми правками сделайте скрин текущих записей, а я обычно не трогаю MX без явной задачи «перенести почту».
Двухфакторная авторизация на аккаунте регистратора и хостинга - не опция, sIM-swap и фишинг по доменам случаются, плюс backup-коды 2FA храните в менеджере паролей, не на телефоне одного человека.
Когда пора к подрядчику. Разработчик настраивает инфраструктуру, репозиторий, деплой и передаёт вам все ключи документированно; без этого даже хороший сайт остаётся заложником одного аккаунта. Ориентиры по срокам и бюджету - на странице цен, услуги - в разделе услуг.
Шаги без воды
- Создайте менеджер паролей и папку «Сайт» до старта проекта.
- Требуйте оформление домена на ваше имя или ИП.
- Получите доступ admin в Git и на хостинге до финальной оплаты.
- Добавьте свой Telegram или email в уведомления форм.
- Раз в квартал проверяйте дату продления домена.
- Сохраните бэкап и таблицу доступов вне переписки с одним человеком.
Ошибки на финишной прямой
- Платить за сайт, не получив доступ к домену на свой email.
- Держать все пароли только у подрядчика «для удобства».
- Не записывать, где лежит код и как деплоится сайт.
- Игнорировать письма о продлении домена и хостинга.
- Не добавлять себя в Метрику и Search Console.
Ещё по теме
- Кому принадлежит сайт - юридически и фактически
- Если подрядчик пропал - план Б
- Hosting и SSL - техническая база
- Контакты - аудит доступов
Один такой промах - неделя в минус.
Хотите обсудить похожую задачу? Могу прислать чеклист доступов под ваш тип проекта до старта работ.
Обсудить проект →