Выходит, новая версия Mikrotik и порой все нужно повторить на ней, т.е. адаптировать все заметки и только после этого переводить на самую стабильную последнюю версию свое боевое применение. Выдалась свободная минута и я решил развернуть Mikrotik CHR 7.3.1 внутри своего тестового полигона на базе Debian 10 + Proxmox 6.4-16. У меня Mikrotik CHR 7.3.1 будет выступать шлюзом для тестовой сети и обкатываться настройки VPN для подключения к нему. Как только это будет сделано, я физическое оборудование обновлю. Считаю, что сетевое оборудование должно быть самым последним в плане версий.

Шаг №1: Создаем виртуальную машину:

https://IP&DNS:8006 – Datacenter – Create VM

  • Node: srv-proxmox
  • VM ID: 106 (подставляется автоматически)
  • Name: srv-chr
  • OS: Do not use any media
  • Guest OS: (Type): Linux
  • Guest OS: (Version): 5.x – 2.6 Kernel
  • SCSI Controller: VirtIO SCSI
  • Bud/Device: SATA:0
  • Storage: m2st
  • Disk Size: 5Gb
  • Format: Raw disk image (raw)
  • CPU: 1
  • Cores: 1
  • Type: Default (kvm64)
  • Memory (MiB): 2024
  • Bridge: vmbr0
  • Model: VirtIO (paravirtualized)

Созданную VM не запускаем, т.е. не ставим галочку Start after created

На заметку: Storage (m2st) — это LVM-Thin, добавлялись данные разделы, задействуя заметку: "Как добавить диск, как LVM-Thin в Proxmox 6 on Debian 10"

Итого свойства созданного контейнера под виртуальную машину (это так для ознакомления)

root@srv-proxmox2:~# find / -name 106.conf
/etc/pve/nodes/srv-proxmox2/qemu-server/106.conf
root@srv-proxmox2:~# cat /etc/pve/nodes/srv-proxmox2/qemu-server/106.conf
boot: order=scsi0;ide2;net0
cores: 1
ide2: none,media=cdrom
memory: 2048
name: srv-chr
net0: virtio=CA:DF:26:63:F2:B6,bridge=vmbr0,firewall=1
numa: 0
ostype: l26
scsi0: m2st:vm-106-disk-0,size=5G
scsihw: virtio-scsi-pci
smbios1: uuid=91a2fc21-959a-4895-88db-fc7d2b2247cb
sockets: 1
vmgenid: b5a294ac-d056-455a-a168-68d2ee469593
root@srv-proxmox2:~#

Шаг №2: Открываем консольное подключение хоста/гипервизор (srv-proxmox2):

https://IP&DNS:8006 – user&pass – Datacenter – Nodes – srv-proxmox2– перехожу в ">_Shell" тем самым открывается новое окно браузера где внутри окна консольная сессия работы с гипервизором Debian 10 + Proxmox 6:

либо же подключаемся по SSH к хосту srv-proxmox2 под учетными данными логина root.

root@ekzorchik:~# ssh -l root 172.35.35.102
root@172.35.35.102's password:
Linux srv-proxmox2 5.4.166-1-pve #1 SMP PVE 5.4.166-1 (Wed, 02 Feb 2022 08:05:40 +0100) x86_64

Шаг №3: И проделываем действия с созданным контейнером VM
для будущей системы Mikrotik CHR:

root@srv-proxmox2:~# apt-get install -y unzip
root@srv-proxmox2:~# qm list | grep chr
       106 srv-chr              stopped    2048               5.00 0
root@srv-proxmox2:~# cd /tmp
root@srv-proxmox2:/tmp#
root@srv-proxmox2:/tmp# wget https://download.mikrotik.com/routeros/7.3.1/chr-7.3.1.img.zip
oot@srv-proxmox2:/tmp# unzip chr-7.3.1.img.zip
Archive:  chr-7.3.1.img.zip
  inflating: chr-7.3.1.img
root@srv-proxmox2:/tmp#

увы, но каталога /var/lib/vz/images/106 у меня нет и скопировать образ img я не могу, т.е. контейнер в формате raw, но можно пойти другим способом.

Перенести VM с хранилища m2st на Local где по умолчанию контейнеры виртуальных машин располагаются в /var/lib/vz/images

https://IP&DNS:8006 - user&pass - Datacenter - srv-proxmox - VM: 106 (srv-chr) - Hardware — выделяю диск Hard Disk (SCSI0) m2st: vm-106-disk-0,size=5G и нажимаю Move disk

  • Disk: scsi0
  • Target Storage: local
  • Format: Raw disk image (raw)
  • Delete source: отмечаю галочкой

Перемещаю диск VM srv-chr с M.2 Storage на Local Storage

и нажимаю Move disk, ожидаю, процедура перемещения завершена

Задание на перемещение диска выполнено успешно

Теперь возвращаюсь к замене скачанного образа CHR на созданный диск при создании VM:

root@srv-proxmox2:/tmp# cp chr-7.3.1.img /var/lib/vz/images/106/vm-106-disk-0.raw
root@srv-proxmox2:/tmp# cd ~
root@srv-proxmox2:~#
root@srv-proxmox2:~# rm -f /tmp/{chr-7.3.1.img.zip,chr-7.3.1.img}
root@srv-proxmox2:~# qemu-img resize /var/lib/vz/images/106/vm-106-disk-0.raw 5G
WARNING: Image format was not specified for '/var/lib/vz/images/106/vm-106-disk-0.raw' and probing guessed raw.
         Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
         Specify the 'raw' format explicitly to remove the restrictions.
Image resized.
root@srv-proxmox2:~#

Запускаю контейнер виртуальной машины:

root@srv-proxmox2:~# qm start 106
root@srv-proxmox2:~# qm list | egrep 106
       106 srv-chr              running    2048               5.00 8780
root@srv-proxmox2:~#

Для быстроты переношу диск c хранилища local на m2st (Это у меня M.2 диск)

https://IP&DNS:8006 - user&pass - Datacenter - srv-proxmox - VM: 106 (srv-chr) - Hardware — выделяю диск Hard Disk (SCSI0) local: vm-129-disk-0,size=5G и нажимаю Move disk

  • Disk: scsi0
  • Target storage: m2st
  • Format: Raw disk image (raw)
  • Delete source: отмечаю галочкой

Перемещаю диск VM с local хранилища обратно на M.2 хранилище

На заметку: Перемещение диска можно делать на работающую/запущенную vm, но лучше на выключенную.

Шаг №4: Открываем консоль взаимодействия с VM (srv-chr):

https://IP&DNS:8006 – user&pass – Datacenter – Virtual Machine – 106 (srv-chr) – нажимаем на ">_Console" и видим приглашение Mikrotik
на вход в RouterOS с мигающим курсором на авторизацию:

Mikrotik 7.3.1 (stable)

Mikrotik Login:

Mikrotik CHR 7.3.1 успешно развернута как виртуальная машина

Авторизуюсь:

MikroTik Login: admin

MikroTik Password: пустой, нажимаем клавишу Enter

Соглашаемся с лицензией

Do you want to see the software license? [Y/n]: y -- press Enter (q to abort) и нажимаем клавишу Enter

New password> задаем пароль, к примеру 712mbddr@

Repeat new password> 712mbddr@

Password changed

[admin@Mikrotik] >

Шаг №5: Текущий IP который получила данная VM от провайдера или роутера сети:

[admin@Mikrotik] > ip dhcp-client print

Address: 172.35.35.7/24

Текущий IP который получила данная VM от провайдера или роутера сети:

Или же к ней можно подключиться через Shell гипервизора:

https://IP&DNS:8006 – user&pass – Datacenter – Nodes – srv-proxmox2– «>_Shell» либо просто с рабочей системы по SSH протоколу:

root@srv-proxmox2:~# ssh -l admin 172.35.35.7
The authenticity of host '172.35.35.7 (172.35.35.7)' can't be established.
RSA key fingerprint is SHA256:jhXITpnGD1Mfby3CrjKijRrLKFP8W6f/ni1SylL0wME.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.35.35.7' (RSA) to the list of known hosts.
admin@172.35.35.7's password:
  MMM      MMM       KKK                          TTTTTTTTTTT      KKK
  MMMM    MMMM       KKK                          TTTTTTTTTTT      KKK
  MMM MMMM MMM  III  KKK  KKK  RRRRRR     OOOOOO      TTT     III  KKK  KKK
  MMM  MM  MMM  III  KKKKK     RRR  RRR  OOO  OOO     TTT     III  KKKKK
  MMM      MMM  III  KKK KKK   RRRRRR    OOO  OOO     TTT     III  KKK KKK
  MMM      MMM  III  KKK  KKK  RRR  RRR   OOOOOO      TTT     III  KKK  KKK

  MikroTik RouterOS 7.3.1 (c) 1999-2022       https://www.mikrotik.com/

Press F1 for help

[admin@MikroTik] >

На заметку: Если раньше до версии 7 при заходе, как в _> Console так и по SSH в мастер системы не предлагал, как сейчас указать пароль на учетную запись admin, то доступ был разрешен без паролю ото всюду.

Шаг №6: Теперь можно производить настройку. К примеру, используя тестовую лицензию сроком на 60 дней, а уже после прикуплю:

[admin@MikroTik] > system license print

system-id: /+tafznr0LM

level: free

[admin@MikroTik] >

На заметку: Нужно зарегистрироваться на сайте mikrotik.com и указать данные для создания пробной лицензии

P1 ограничение на 1Гбит/с для интерфейса ($45)
P10 ограничение на 10Гбит/с для интерфейса ($95)
P-unlimited без ограничений ($250)
free имеет ограничение на 1Мбит/с для интерфейса
[admin@MikroTik] > system/license/renew
account: Ваш_Ящик_Указанный_при_регистрации_на_mikrotik.com
password: **********
level: p1
  status: done

[admin@MikroTik] >

После через личный кабинет проверяю:

https://www.mikrotik.com — Account — Email&Pass — Log In — all CHR keys, до какого числа от текущего работает моя тестовая лицензия. За отведенные 60 дней ой как много оттестировать.

Создал тестовую лицензию на 60 дней (на это время полный функционал)

Что отобразить какие ресурсы мне сейчас доступны:

[admin@MikroTik] > system/resource/print

uptime: 12m22s

version: 7.3.1 (stable)

build-time: Jun/09/2022 08:58:15

factory-software: 6.49.3

free-memory: 1899.3MiB

total-memory: 1952.0MiB

cpu: Common

cpu-count: 1

cpu-frequency: 2999MHz

cpu-load: 0%

free-hdd-space: 4.9GiB

total-hdd-space: 4.9GiB

write-sect-since-reboot: 61744

write-sect-total: 61744

architecture-name: x86_64

board-name: CHR

platform: MikroTik

[admin@MikroTik] >

Чтобы выполнить обновление:

[admin@MikroTik] > system/package/update/check-for-updates

channel: stable

installed-version: 7.3.1

latest-version: 7.3.1

status: System is already up to date

[admin@MikroTik] >

У меня уже установлено все самое последнее на момент, когда я писал/документировал данную заметку. По итогу я получил полнофункциональный Mikrotik сроком на 60 дней для тестов.

Выключаю VM и создаю снапшот дабы в течении срока тестов если что откатываться на только что установленную текущую систему дабы повторить с нуля и задокумментировать настройки.

[admin@MikroTik] > system shutdown

Shutdown, yes? [y/N]:

y

system will shutdown promptly

Received disconnect from 172.35.35.7 port 22:11: shutdown/reboot

Disconnected from 172.35.35.7 port 22

root@srv-proxmox2:~#

root@srv-proxmox2:~# qm snapshot 106 OriginalSystem60days

snapshotting 'drive-scsi0' (m2st:vm-106-disk-0)

WARNING: You have not turned on protection against thin pools running out of space.

WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full.

Logical volume "snap_vm-106-disk-0_OriginalSystem60days" created.

WARNING: Sum of all thin volume sizes (1.48 TiB) exceeds the size of thin pool m2st/m2st and the size of whole volume group (931.51 GiB).

root@srv-proxmox2:~#

Как показала практика использования Mikrotik CHR с которым я уже давно знаком, здорово помогает в обучении, когда нет под рукой железного Mikrotik и нет возможности смоделировать физическое окружение.

На этом у меня все, с уважением автор блога Олло Александр aka ekzorchik.