MikroTik Cloud Hosted Router (CHR) — виртуальная редакция RouterOS, подходящая для VPN-шлюза, лабораторного маршрутизатора или межсетевого экрана перед другими машинами. Её ставят не из ISO: сырой образ диска записывают поверх диска VPS. В руководстве разобрана процедура на VPS Linux Infrawire вместе с мерами предосторожности, которые не дадут вам остаться за дверью.
Разрушительная операция. Всё содержимое диска VPS (система, данные, SSH-ключи) будет стёрто без возможности восстановления. Сначала сохраните нужное и продолжайте только на VPS, который можете пересоздать.
📋 Требования
- KVM VPS с Ubuntu 24.04 или Debian 12 и доступом по SSH под root (в личном кабинете вы найдёте IP-адрес и пароль root вашего VPS).
- Не менее 1 ГБ ОЗУ, так как образ распаковывается в памяти.
- Возможность открыть VNC-консоль VPS как страховку: CHR не примет ваши прежние SSH-ключи.
- Резервная копия данных, хранящаяся вне VPS.
📝 Сначала запишите сетевые параметры
CHR стартует с пустой конфигурацией. Запишите значения, которые понадобятся, если DHCP не выдаётся:
Baship -4 addr show scope global ip -4 route show default ip -6 addr show scope global lsblk
Сохраните VPS_IP/PREFIX, шлюз по умолчанию (GATEWAY), имя интерфейса и имя диска (обычно /dev/vda, иногда /dev/sda).
💾 Скачивание образа и запись на диск
Работайте из памяти (/dev/shm), чтобы загруженный файл пережил перезапись. Номер версии (CHR_VERSION) возьмите на странице загрузки mikrotik.com из канала stable или long-term.
Bashapt update && apt install -y unzip wget cd /dev/shm wget https://download.mikrotik.com/routeros/CHR_VERSION/chr-CHR_VERSION.img.zip unzip chr-CHR_VERSION.img.zip lsblk
Ещё раз проверьте имя диска и запишите образ. Эта команда уничтожает целевой диск:
Bashdd if=chr-CHR_VERSION.img of=/dev/vda bs=1M oflag=sync status=progress sync
Старой системы больше нет, поэтому обычный reboot может не сработать. Вместо него принудительно перезагрузитесь через ядро:
Bashecho 1 > /proc/sys/kernel/sysrq echo s > /proc/sysrq-trigger echo b > /proc/sysrq-trigger
🔑 Первый вход и базовая настройка
Откройте VNC-консоль VPS. Войдите как admin с пустым паролем; RouterOS может сразу потребовать задать новый. Если адрес по DHCP не получен, задайте его вручную:
Bash/ip address add address=VPS_IP/PREFIX interface=ether1 /ip route add dst-address=0.0.0.0/0 gateway=GATEWAY /ip dns set servers=1.1.1.1,9.9.9.9 /ping 1.1.1.1 count=3
Затем создайте собственного администратора и удалите пользователя по умолчанию, войдя под новой учётной записью:
Bash/user add name=USER password=STRONG_PASSWORD group=full /user remove admin
🔒 Отключение ненужных служб
Публичный маршрутизатор должен открывать как можно меньше. Оставьте SSH и ограничьте его своим адресом:
Bash/ip service disable telnet,ftp,www,api,api-ssl /ip service set ssh address=ADMIN_IP/32 /ip service set winbox address=ADMIN_IP/32 /tool mac-server set allowed-interface-list=none /ip neighbor discovery-settings set discover-interface-list=none /ip service print
Замените ADMIN_IP публичным IP, с которого вы администрируете. Если адрес изменится, исправьте его через VNC-консоль.
🎫 Лицензия CHR
CHR работает без лицензионного ключа, но бесплатный режим ограничивает исходящую скорость 1 Мбит/с на интерфейс. Уровни лицензии (P1, P10, P-Unlimited) снимают или повышают это ограничение; их приобретают у MikroTik, доступен пробный период. Проверьте текущее состояние и примените лицензию, привязанную к вашей учётной записи MikroTik:
Bash/system license print /system license renew account=MIKROTIK_ACCOUNT level=p1
✅ Проверка
С собственного компьютера убедитесь, что маршрутизатор отвечает и доступен только SSH:
Bashssh USER@VPS_IP nmap -Pn -p 21,22,23,80,8291,8728 VPS_IP
В RouterOS команда /system resource print должна показать версию CHR, а /ip address print — ваш публичный адрес.
🛠️ Устранение неполадок
После перезагрузки нет ни ping, ни SSH. Откройте VNC-консоль. Если /ip address print пуст, в этой сети нет DHCP: примените адрес и маршрут вручную по своим записям.
VPS снова загружается в старый Linux. Образ записан не на тот диск. Переустановите Linux или воспользуйтесь аварийной системой, проверьте lsblk и повторите с правильной целью.
Исходящая скорость застряла около 1 Мбит/с. Это бесплатный лимит CHR, а не сбой сети. Примените лицензию, как описано выше.
🚀 Ваш VPS теперь работает на RouterOS CHR: сохраните резервную копию конфигурации командой /export file=backup.