Немало автоматизации до сих пор работает только на Windows. Торговые терминалы, десктопные инструменты без сборки под Linux, макро-программы, тот самый бот, который ваше сообщество написало на C# много лет назад. И немало сервисов до сих пор решают, кому доверять, по IP: API-ключи бирж, привязанные к адресу, партнёрские эндпоинты с allowlist, вебхуки, которые обращаются к фиксированному хосту.
Когда верно и то и другое, нужен Windows-сервер со своим публичным IPv4. Это та самая конфигурация.
Что вы получаете
VPS на Windows Server 2022 с выделенным IPv4. RDP слушает стандартный порт 3389 на вашем собственном адресе; любой порт, который вы откроете в брандмауэре Windows, доступен из интернета.
Подходят два тарифа:
| Тариф | vCPU / RAM / диск | Цена |
|---|---|---|
| Windows Small-IP | 4 / 4 GB / 50 GB | $28/мес |
| Windows Medium-IP | 6 / 6 GB / 60 GB | $36/мес |
Small-IP — правильный выбор для одного-двух ботов. Windows в простое съедает около 2 GB RAM, так что из 4 GB вашему софту остаётся около 2 GB — достаточно для терминала или бота на .NET, тесновато для автоматизации на Chromium со множеством вкладок. Вот там Medium-IP и отрабатывает свои лишние $8.
Если до сервера никому не нужно достучаться и никто не вносит его адрес в allowlist, NAT-тарифы Windows дешевле (от $11/мес) и дают RDP на персональном порту. Не платите за IP, который вам не нужен.
Лицензия
Образ — Windows Server 2022 со своей лицензией: вы активируете его своим ключом после первого входа и снова после переустановки. Всё о самой ОС — редакции, активация, обновления — на странице Windows Server. Эта страница — о том, как держать бота в работе.
Чтобы бот не падал
Большинство историй «бот ночью остановился» на Windows сводятся к трём вещам.
Выход из системы вместо отключения. Закрытие окна RDP отключает сессию и оставляет программы работать. Пункт Sign out (выход) их убивает. Приучите себя просто закрывать окно.
Нет автозапуска. Windows перезагружается — ради обновлений, после переустановки, после обслуживания. Сделайте так, чтобы бот стартовал вместе с машиной. Для консольной программы подойдёт задача планировщика с триггером At startup и настройкой Run whether user is logged on or not:
$a = New-ScheduledTaskAction -Execute "C:\bots\mybot.exe" -WorkingDirectory "C:\bots"
$t = New-ScheduledTaskTrigger -AtStartup
Register-ScheduledTask -TaskName "mybot" -Action $a -Trigger $t -User "SYSTEM" -RunLevel Highest
С GUI-программами, которым нужен рабочий стол, сложнее: им нужна сессия с вошедшим пользователем. Для них включите автовход отдельного пользователя и запускайте программу из папки автозагрузки этого пользователя.
Обновления в неподходящий момент. Задайте в Windows Update Active hours (период активности) так, чтобы он покрывал самое загруженное время бота, — тогда перезагрузка не придётся на его середину.
Сторона IP
Ваш IPv4 не меняется всё время жизни сервера, в том числе после переустановок, — именно это и нужно allowlist. Внесите его в настройки API-ключа биржи, и готово. Если партнёру нужно совпадающее обратное DNS-имя, задайте его сами в кабинете. Нужен второй адрес для другого бота или сервиса? Его можно добавить на тот же сервер за $5 в месяц — см. смену IP-адреса.
Два ограничения, которые стоит учесть. У тарифов Windows порт 150 Mbit/s без квоты трафика — для API-ботов с запасом, см. трафик и скорость сети. И исходящие почтовые порты 25 и 465 по умолчанию закрыты на всех тарифах, так что бот, который шлёт почту, должен отправлять её через почтового провайдера на порт 587.
Оплата и старт
Зарегистрируйтесь по email, заплатите в USDC, USDT, BTC или другой крипте либо купите крипту картой при оплате. Сервер обычно готов через несколько минут после оплаты, а пароль Administrator один раз показывается в кабинете. Если вы его потеряете или закроете себе доступ правилом брандмауэра, сброс пароля и веб-консоль вернут доступ без тикета. Подключение по RDP описывает первый вход, а если ваш бот торгует, Windows VPS для криптотрейдинга подробнее разбирает терминалы и задержки.
Комментарии
Пока нет комментариев. Будьте первым.