Полная документация — каждый API-эндпоинт, каждый поддерживаемый образ, каждый код ошибки. Без маркетинга и без снисходительного тона. Если чего-то не хватает — это баг.
Пять минут · первый сервер
Быстрый старт
01
Создайте аккаунт
Email и пароль. Без телефона, без документов. Сессии действуют 30 дней и отзываются в настройках.
Кратчайший путь от пустого места до сервера, на который можно зайти по SSH, — четыре шага. Ни один из них не требует общения с человеком. Ни один не требует документа, удостоверяющего личность.
Создайте аккаунт. Email и пароль. Почта нужна только для уведомлений об утечках и оповещений warrant canary — мы никогда не используем её для рассылок и рекламы.
Пополните баланс. Мы не храним платёжные средства. Вы отправляете любую поддерживаемую криптовалюту на одноразовый адрес; после подтверждения депозита мы зачисляем сумму на баланс аккаунта в долларовом эквиваленте.
Разверните сервер. Выберите тариф, регион и образ ОС, вставьте открытый SSH-ключ. Развёртывание занимает 30–90 секунд.
Подключитесь. Зайдите по SSH на IPv4-адрес, который показывает панель управления. Войдите как root по загруженному вами SSH-ключу.
02 · Аккаунт
Аккаунт
Регистрация
Email и пароль. Пароль хешируется с помощью bcrypt (cost factor 12). Email приводится к нижнему регистру, хешируется для поиска и никогда не хранится рядом с открытым текстом. Мы не проверяем, «настоящий» ли адрес, кроме базовой проверки синтаксиса — вы вправе использовать любой адрес, который контролируете.
Сессии
Вход создаёт скользящую 30-дневную сессию, привязанную к секрету конкретного устройства, который хранится в cookie с атрибутами HttpOnly, Secure, SameSite=Lax. Каждый браузер — отдельная сессия; просматривать и отзывать сессии можно в разделе Аккаунт → Безопасность.
Двухфакторная аутентификация
Два варианта:
TOTP — RFC 6238, окно 30 секунд, SHA-1 (совместимо с любым приложением-аутентификатором). Коды восстановления генерируются один раз при настройке и показываются только в этот единственный раз.
WebAuthn (FIDO2) — аппаратные ключи, платформенные аутентификаторы (Touch ID, Windows Hello). Можно зарегистрировать несколько ключей.
Если 2FA включена, она требуется при входе, смене пароля, создании API-токена и удалении аккаунта. Для развёртывания серверов из активной сессии она не требуется — тормозить вас здесь было бы неправильно.
Удаление аккаунта
Удаление выполняется самостоятельно в разделе Аккаунт → Безопасность → Удалить аккаунт. Порядок действий:
Все серверы уничтожаются (необратимо, без отсрочки).
Остаток на балансе аннулируется (вернуть его мы не можем — для возврата криптовалюты нужен адрес, подтверждённый вами, а это само по себе было бы шагом KYC).
Запись аккаунта заменяется «надгробием» (tombstone): идентификатор и время удаления. Хеш email, хеш пароля, сессии, токены, SSH-ключи — всё стёрто.
Записи в истории платежей хранятся 13 месяцев для сверки на случай мошенничества и не содержат персональных данных (PII).
03 · Финансы и баланс
Финансы и баланс
Порядок пополнения
В разделе Аккаунт → Финансы → Пополнить:
Выберите монету и сумму (в долларовом эквиваленте).
Мы создаём одноразовый адрес для получения и фиксируем курс на 30 минут.
Вы отправляете средства. Мы ждём нужного числа подтверждений (см. таблицу ниже).
После подтверждения баланс аккаунта пополняется по зафиксированному курсу. Любой излишек зачисляется по спотовому курсу на момент подтверждения.
Поддерживаемые монеты и подтверждения
Монета
Мин. депозит
Подтверждения
Обычное ожидание
Bitcoin (BTC)
$10
2
~20 мин
Monero (XMR)
$5
10
~20 мин
Litecoin (LTC)
$5
6
~15 мин
Ethereum (ETH)
$15
30
~6 мин
TRON (TRX)
$5
20
~1 мин
USDT · ERC-20
$15
30
~6 мин
USDT · TRC-20
$10
20
~1 мин
Solana (SOL)
$5
32
~1 мин
Bitcoin Lightning
$1
н/д (вне блокчейна)
секунды
Предоплата за расчётный период
Каждый сервер оплачивается вперёд с баланса аккаунта на расчётный период в 1, 3, 6 или 12 месяцев, со скидками 0 %, 25 %, 35 % и 50 % соответственно. Весь период списывается один раз, в момент развёртывания; ничего не продлевается автоматически.
Если баланса достаточно, расчётный период списывается сразу, и сервер разворачивается. Если нет — развёртывание отклоняется, и ничего не списывается.
Если до окончания периода вы не заказали новый, срок сервера истекает: он получает статус suspended и перестаёт принимать трафик.
У вас есть 7 дней, чтобы заказать новый период. Через 7 дней сервер уничтожается, его IP-адреса освобождаются, а диск стирается.
История платежей
Все записи находятся в разделе Аккаунт → Финансы → История платежей: пополнения, списания за расчётные периоды по каждому серверу, компенсации по SLA (если применимо). У каждой строки есть постоянный идентификатор, на который можно ссылаться. Экспорт в CSV.
04 · Жизненный цикл сервера
Жизненный цикл сервера
Развернуть
Нажмите Настроить у любого тарифа или используйте API. Новый сервер проходит такие состояния:
provisioning — мы выделяем виртуальную машину. 30–90 секунд.
installing — образ ОС записывается, выполняется cloud-init. 30–120 секунд.
running — сервер работает; SSH доступен.
stopped — штатно выключен. Оплаченный период продолжает идти, пока сервер остановлен, а диск и IP остаются выделенными.
suspended — период закончился, а новый не заказан. Сервер выключен и недоступен. 7 дней отсрочки до уничтожения.
Перезагрузка и пересборка
Две операции, которые часто путают:
Перезагрузка отправляет гостевой системе сигнал выключения ACPI, ждёт 30 с и снова включает питание. Содержимое диска сохраняется. Добавьте ?hard=true к вызову API (или включите переключатель «Жёсткая перезагрузка» в интерфейсе), чтобы пропустить шаг ACPI.
Пересборка заново устанавливает образ ОС с нуля. Все данные на диске уничтожаются. Cloud-init запускается снова. Так поступают, когда нужен чистый старт без пересоздания сервера (IPv4 и IPv6 сохраняются).
Режим восстановления
Режим восстановления загружает сервер с небольшого ISO на базе Alpine в tmpfs объёмом 4 GB. Ваши диски не смонтированы и доступны как /dev/vda, /dev/vdb и т. д. Используйте его, чтобы:
Восстановить доступ к системе, из которой вы сами себя заблокировали (забытый пароль root, сломанный sudo и т. п.).
Вручную разблокировать корневой том, зашифрованный LUKS.
Запустить fsck для повреждённой файловой системы.
Снять образ диска, который вы собираетесь уничтожить.
Выйти из режима восстановления можно командой перезагрузки. При следующей загрузке снова используется обычный диск.
Уничтожить
Уничтожение необратимо. Диск перезаписывается нулями, IPv4 возвращается в пул после 24 часов «охлаждения» (чтобы адрес, который вы могли указать в DNS, не использовался повторно сразу), а IPv6 /64 возвращается в пул немедленно. Ничто не продлевается, поэтому расчётный период сервера просто заканчивается вместе с ним, и больше ничего не списывается.
05 · SSH и доступ
SSH и доступ
Каждый сервер разворачивается только с SSH по ключам. В поставляемом нами sshd_config по умолчанию аутентификация по паролю отключена; вы вправе включить её снова, но мы настоятельно не рекомендуем этого делать.
SSH-ключи
Добавляйте ключи в разделе Аккаунт → SSH-ключи: вставьте любой открытый ключ в формате OpenSSH. Мы принимаем:
ssh-rsa — 3072 бита или больше. (Всё, что короче, отклоняется.)
ecdsa-sha2-nistp256 / nistp384 / nistp521 — принимаются, но не рекомендуются.
Несколько ключей на аккаунт. Несколько ключей на сервер. Войти может любой ключ из списка авторизованных ключей сервера.
Рекомендуемый ~/.ssh/config
~/.ssh/config
Host nokyc-*
User root
IdentityFile ~/.ssh/id_ed25519_nokyc
IdentitiesOnly yes
ControlMaster auto
ControlPath ~/.ssh/cm-%r@%h:%p
ControlPersist 10m
ServerAliveInterval 60
ServerAliveCountMax 3
Затем для сервера с IPv4 198.51.100.42:
Host nokyc-edge
HostName 198.51.100.42
И ssh nokyc-edge просто работает.
SSH в режиме восстановления
Rescue-ISO при загрузке добавляет тот же набор SSH-ключей. Отпечаток хоста в режиме восстановления отличается от отпечатка вашего обычного хоста — это ожидаемо и не является атакой «человек посередине». Отпечаток rescue-хоста показывается в консоли в панели управления.
06 · Сеть
Сеть
IP-адресация
IPv4 — один на сервер, входит в тариф. Дополнительные IPv4 сейчас не продаются (мы бережно относимся к выдаче адресов v4).
IPv6 — один маршрутизируемый /64 на сервер, бесплатно. Используйте любые адреса внутри этого префикса; мы не фильтруем адреса источника внутри вашего блока.
Все адреса остаются неизменными на протяжении всей жизни сервера. Пересборка ОС их не меняет.
Обратный DNS (rDNS)
В разделе Сервер → Сеть → Обратный DNS или через POST /servers/{id}/rdns. Изменения распространяются в течение 5 минут. Мы не проверяем, что вы действительно управляете прямой записью — rDNS вы задаёте как угодно.
Файрвол
Два уровня:
Фильтр на границе (необязательный, настраивается для каждого сервера). С отслеживанием состояния; по умолчанию всё отбрасывается, кроме трафика, разрешённого вашими правилами. Работает на гипервизоре и вообще не пропускает отфильтрованный трафик к гостевой системе. Используйте его для правил четвёртого уровня (L4), которые должны применяться ещё до того, как гость увидит пакет.
Файрвол гостевой системы (полностью ваш). nftables, iptables, pf — всё, что поставляется с вашей ОС. Мы его не трогаем.
Защита от DDoS
Защита от объёмных атак всегда включена и работает выше по цепочке, перед нашими PoP. Включать ничего не нужно. Пороги:
< 10 Gbps: поглощается незаметно.
10–100 Gbps: очищается у транзитного провайдера. Возможен кратковременный рост задержки.
> 100 Gbps: через BGP анонсируется на выделенный путь очистки. Задержка растёт заметнее; сервис остаётся доступным.
«Ядерный вариант» — блокировка IP через null-route — рассматривается только при затяжных атаках, угрожающих всему PoP. Если это случится, мы сообщим вам в течение нескольких минут.
07 · Операционные системы
Операционные системы
Каталог образов обновляется при каждом промежуточном релизе в upstream. В правом столбце — image_id: именно его нужно передавать в API.
Семейство
Версии
Архитектура
Инициализация
image_id
Debian
11 (bullseye), 12 (bookworm), 13 (trixie)
amd64, arm64
cloud-init
debian-13-minimal
Ubuntu
20.04, 22.04, 24.04 LTS
amd64, arm64
cloud-init
ubuntu-24.04
Alpine
3.18, 3.19, 3.20
amd64, arm64
cloud-init (от сообщества)
alpine-3.20
Arch
rolling (еженедельный снимок)
amd64
cloud-init
arch-rolling
Fedora
39, 40, 41
amd64
cloud-init
fedora-41
Rocky
9 (совместим с RHEL)
amd64
cloud-init
rocky-9
OpenBSD
7.4, 7.5
amd64
вручную / autoinstall
openbsd-7.5
FreeBSD
13.3, 14.0
amd64
cloud-init
freebsd-14
NixOS
24.05
amd64
nixos-rebuild
nixos-24.05
Произвольный
любая (загрузка ISO ≤ 4 GB)
amd64, arm64
зависит от вашего ISO
custom
cloud-init user-data
Любой образ с пометкой «cloud-init» принимает блок user-data при развёртывании. До 64 KiB. Пример для сервера Debian, который устанавливает WireGuard и задаёт имя хоста:
Загружайте через POST /images (или в разделе Аккаунт → Образы → Загрузить). Максимум 4 GiB. ISO должен загружаться в режиме BIOS или UEFI (мы предоставляем оба). После загрузки образ получает идентификатор вида custom-9f4a2b1c и становится доступным для выбора в любом сценарии развёртывания.
08 · Справочник API
Справочник API
REST поверх HTTPS. JSON на входе, JSON на выходе. Курсорная пагинация в списочных эндпоинтах. Ключи идемпотентности поддерживаются для каждого POST через заголовок Idempotency-Key.
Если вы превысите лимит, вы получите HTTP 429 с заголовком Retry-After (в секундах). У эндпоинтов развёртывания отдельный, более щедрый лимит (200/мин), потому что их нагрузка по природе всплесковая.
09 · Безопасность и приватность
Безопасность и приватность
Шифрование диска
Мы не шифруем ваши диски за вас. Вы можете включить LUKS при установке через cloud-init (rescue-ISO будет запрашивать у вас парольную фразу при каждой загрузке). Почему мы не включаем шифрование автоматически:
Автоматическое шифрование ключом, который хранится у нас, — театр: если нас принудят, мы сможем предоставить ключ.
Автоматическое шифрование ключом, который хранится у вас, ломает перезагрузку без участия человека.
Доступны оба варианта; компромисс выбираете вы.
Warrant canary
Мы публикуем canary, подписываемый ежедневно, по адресу https://cryptovpshost.com/canary.txt с отделённой PGP-подписью в canary.txt.sig. Canary содержит:
Отметку с текущей датой.
Заголовок текущего события, которое мы не могли предугадать заранее (доказательство актуальности).
Список явных заявлений о предписаниях, которые мы не получали.
Если какое-либо из этих заявлений перестанет быть правдой, мы вместо этого просто прекращаем обновлять canary. Считайте сигналом долгое молчание (> 48 часов).
Зеркало Tor (onion)
Сайт и API зеркалируются как onion-сервисы v3. Имена хостов публикуются в нашем DNS в виде TXT-записей на cryptovpshost.com и меняются раз в год. Из клиента, работающего через Tor:
События входа (отметка времени, страна с детализацией до города)
30 дней
Обнаружение взлома. Только страна, определяется по MaxMind GeoLite. IP-адрес не хранится.
Строки API-запросов (метод, путь, статус, без тела)
7 дней
Отладка. Ротация через 7 дн.; архивов нет.
История платежей
13 месяцев
Сверка. Персональные данные не привязываются.
Данные сетевых проб по каждому серверу (аптайм, задержка)
90 дней
Расчёт SLA и публичная страница статуса.
Трафик гостевых ВМ (NetFlow, захваты пакетов)
0
Мы не собираем ни то, ни другое.
10 · Туториалы
Туториалы
Написаны людьми, которые сами всё это эксплуатируют. Каждый туториал — один пошаговый разбор, который можно скопировать и вставить, без маркетинговых блужданий по пятидесяти вкладкам.
Моё развёртывание больше 5 минут висит в статусе «provisioning»
Обычно развёртывание занимает 30–90 секунд. Всё, что дольше 3 минут, — нетипично. Проверьте страницу статуса на предмет инцидента в вашем регионе. Если там всё зелёное, чаще всего причина в собственном ISO, который не загружается — проверьте консоль noVNC. Если ничего не помогает: уничтожьте сервер и разверните заново. За неудавшееся развёртывание мы не списываем средства.
Я потерял SSH-ключ
В панели управления: Сервер → Восстановление → Загрузить в режиме восстановления. Подключитесь по SSH к rescue-системе любым действующим ключом из вашего аккаунта. Выполните mount /dev/vda1 /mnt, отредактируйте /mnt/root/.ssh/authorized_keys, перезагрузите сервер. Если в аккаунте вообще нет ключей, сначала добавьте один через панель управления, а затем загрузитесь в rescue.
Мой IPv4 доступен из одной страны, но недоступен из другой
Запустите traceroute с обеих сторон. Если маршруты расходятся до того, как дойдут до нашего PoP, проблема выше по цепочке — публичный smokeping по транзиту вашего региона можно посмотреть на status.cryptovpshost.com. Если маршрут доходит до нас, но обрывается, это наша проблема, и страница статуса уже должна её отражать.
Мой VPS перезагрузился сам
Три возможные причины в порядке вероятности: (1) OOM-kill процесса init — проверьте journalctl -k -b -1 с предыдущей загрузки. (2) Плановое обслуживание — загляните в Уведомления в панели управления. (3) Инцидент на гипервизоре — проверьте страницу статуса. Если не подошла ни одна из трёх, откройте консоль noVNC и посмотрите журнал загрузки.
Я отправил криптовалюту на адрес для пополнения, но ничего не произошло
Проверьте число подтверждений. Для Bitcoin нужно 2, для Monero — 10 и т. д. (см. таблицу поддерживаемых монет). Если транзакция подтверждена, но через 30 минут средства не зачислены, вставьте хеш транзакции в Аккаунт → Финансы → Восстановить депозит — после ручной перепроверки зачисление произойдёт в течение нескольких минут.
В API я получаю 429 Too Many Requests
Вы исчерпали лимит на токен. Соблюдайте заголовок Retry-After. Если вам действительно нужна более высокая пропускная способность, создайте второй токен — лимиты действуют на каждый токен, а большинство клиентов используют один токен. (Не перевыпускайте один и тот же токен в цикле: мы будем считать его одним токеном.)
Консоль noVNC показывает пустой экран
Нажмите любую клавишу. Многие гостевые системы гасят framebuffer после периода неактивности. Если клавиша не вызывает реакции, гость, скорее всего, завис; перезагрузите сервер из панели управления. Консоль также передаёт последовательность SysRq в Linux — это полезно при отладке не отвечающего ядра.
12 · FAQ
FAQ
Вы запрашиваете документы, удостоверяющие личность?
Нет. Мы не просим, не принимаем и не стали бы хранить их, даже если бы вы их прислали. Вся архитектура устроена так, чтобы нам нечего было выдавать о вашей личности.
Почему только криптовалюта?
Карточные сети по своей конструкции требуют KYC — этого требует договор эквайринга. Криптовалюта — нет. Добавить фиат значило бы добавить платёжный процессор, а добавить платёжный процессор значило бы включить его комплаенс-отдел в нашу границу доверия. Мы этого не хотели.
Можно ли завести несколько аккаунтов?
Да. Мы не снимаем отпечатки устройств, не связываем аккаунты через cookie устройства, нам всё равно. Используйте столько адресов email, сколько хотите.
Что будет, если мой криптопровайдер потребует у меня KYC?
Это дело между вами и вашим провайдером. Мы не общаемся с криптобиржами, и единственное, что они видят в своих книгах, — вывод средств на некий адрес. Только по адресу они не могут определить, что средства отправлены нам.
Вы предлагаете возврат средств?
Зачисление на баланс аккаунта — да. Возврат на кошелёк — нет: криптовалютные платежи необратимы, а для возврата нам пришлось бы знать, что адрес принадлежит вам, а это само по себе шаг KYC.
Чем VPS отличается от выделенного сервера?
VPS — виртуальная машина KVM на общем гипервизоре, с живой миграцией и резервированием хоста. Выделенный сервер — целый физический сервер, единственный арендатор, без живой миграции. VPS — правильный выбор почти для всех.
Поддерживаете ли вы Terraform / Pulumi / OpenTofu?
Провайдер для Terraform есть в планах; а пока REST API достаточно стабилен, чтобы небольшая обёртка писалась примерно за день. Когда напишете — пришлите нам pull request.
Можно ли запустить Tor-ретранслятор (relay) или выходной узел?
Ретранслятор — да. Выходной узел — нет, и не потому, что мы против, а потому, что обработка жалоб (abuse) вокруг выходных узлов не вписывается в нашу позицию «без почтового ящика для жалоб», и мы предпочитаем честно сказать об этом, а не позволить вам запустить узел и неожиданно получить уведомление об уничтожении сервера.
Есть ли у вас Discord / Slack / чат поддержки?
Нет. Мы не держим канал поддержки в реальном времени, потому что у нас не тот бизнес, где он помог бы (нет тикетов — нет и очереди живых людей за ними). Документация и есть канал поддержки; если чего-то в ней не хватает, это баг, о котором мы хотим знать.
Что, если на мой сервер поступит жалоба?
Мы её не перешлём. Мы не держим почтовый ящик для жалоб, и это осознанное архитектурное решение, а не недосмотр. Единственное, что дойдёт до вас от нас, — уведомление о том, что нам вручено обязательное судебное постановление, — и даже тогда мы предупредим вас до того, как начнём действовать, если постановление не обязывает нас молчать.
CryptoVpsHost
Войти
Используйте email и пароль, указанные при регистрации.