Install linux on mikrotik

Summary

A container is MikroTik’s implementation of Linux containers, allowing users to run containerized environments within RouterOS. The container feature was added in RouterOS v7.4beta4.

Disclaimer

  • you need physical access to the router to enable support for the container feature, it is disabled by default;
  • once the container feature is enabled, containers can be added/configured/started/stopped/removed remotely!
  • if the router is compromised, containers can be used to easily install malicious software in your router and over network;
  • your router is as secure as anything you run in container;
  • if you run container, there is no security guarantee of any kind;
  • running a 3rd party container image on your router could open a security hole/attack vector/attack surface;
  • an expert with knowledge how to build exploits will be able to jailbreak/elevate to root;

Security risks:

when a security expert publishes his exploit research — anyone can apply such an exploit;
someone will build a container image that will do the exploit AND provide a Linux root shell;
by using a root shell someone may leave a permanent backdoor/vulnerability in your RouterOS system even after the docker image is removed and the container feature disabled;
if a vulnerability is injected into the primary or secondary routerboot (or vendor pre-loader), then even netinstall may not be able to fix it;

Requirements

Container package is compatible with arm arm64 and x86 architectures. Using of remote-image (similar to docker pull) functionality requires a lot of free space in main memory, 16MB SPI flash boards may use pre-build images on USB or other disk media.

External disk is highly recommended

Источник

Как установить MikroTik RouterOS на VPS

Внимание! В примере ниже установка идёт поверх чистого сервера с уже предустановленной Ubuntu 20.04. Стабильная работа данного способа при обновлении вручную с Ubuntu 18.04 или других ОС на Ubuntu 20.04 — не гарантируется.

Читайте также:  Как сделать трассировку линукс

RouterOS представляет из себя операционную систему, на которой работает сетевое оборудование компании MikroTik. RouterOS создана на базе Linux и помимо маршрутизаторов MikroTik может устанавливаться на компьютеры и сервера, тем самым фактически превращая их в маршрутизаторы. Исходя из того, что такая операционная система умеет работать на физических серверах, её также можно научить функционировать и на серверах облачных. Именно для этого предназначена операционная система Cloud Hosted Router. Данная версия RouterOS создана специально для виртуальных выделенных серверов. Далее расскажем, как установить MikroTik RouterOS на VPS, работающий под управлением операционной системы семейства Linux.

В качестве примера в данной статье мы будем использовать виртуальный сервер, на котором установлена Ubuntu 20.04. Наш VPS имеет следующую конфигурацию: CPU 1×2.2ГГц, 2Гб RAM, 20Гб HDD. К сожалению, на других операционных системах развернуть образ Cloud Hosted Router получается далеко не всегда, поэтому действия, описанные в нашем мануале, работают именно на Ubuntu 20.04.

Установка образа RouterOS поверх Ubuntu 20.04

Так как мы планируем установить RouterOS прямо поверх уже установленной Linux-системы, то на первом этапе необходимо образ RouterOS записать на виртуальный диск нашего сервера, затерев файлы “родной” операционной системы.

Все действия будем выполнять под учётной записью root.

Итак, во-первых, нужно обновить базы данных доступных для установки репозиториев:

Далее необходимо установить пакеты, которые нам понадобятся в дальнейшем (у вас они могут быть уже установлены):

На данном этапе, пока мы ещё находимся в самом начале установки, давайте зафиксируем сетевые настройки нашего сервера, которые понадобятся в дальнейшем для подключения к RouterOS. Для этого выполните следующие команды:

В нашем примере вывод данной команды имеет следующий вид:

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:15:5d:01:8b:b7 brd ff:ff:ff:ff:ff:ff inet 176.113.82.65/24 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::215:5dff:fe01:8bb7/64 scope link valid_lft forever preferred_lft forever

Из него видно, что IP-адрес нашего сервера – 176.113.82.65, маска подсети – 255.255.255.0, что в выводе команде зафиксировано как 176.113.82.65/24.

Читайте также:  Linux на внешний носитель

Вторая команда отобразит маршруты, где, кроме всего прочего, можно увидеть IP-адрес нашего шлюза:

default via 176.113.82.1 dev eth0 176.113.82.0/24 dev eth0 proto kernel scope link src 176.113.82.65

Здесь указан IP-адрес шлюза для нашего сервера – 176.113.82.1. Эти данные понадобятся нам чуть позже.

Следующим шагом необходимо перейти на страницу загрузок сайта MikroTik и скопировать в буфер обмена ссылку на последнюю стабильную версию RAW-образа в разделе Cloud Hosted Router . На момент написания статьи это – 7.7 Stable :

Далее при помощи скопированной ссылки на RAW-образ нужно загрузить его на свой VPS. В нашем примере мы сделали это в директорию /tmp :

# cd /tmp # wget https://download.mikrotik.com/routeros/7.7/chr-7.7.img.zip

Теперь, загруженный образ необходимо распаковать:

Следующим шагом нам нужно будет узнать имя диска на нашем сервере. Для этого мы использовали следующую команду:

В нашем примере имя диска – /dev/sda :

Следующим шагом необходимо перемонтировать файловые системы в режим “только чтение”:

И наконец, на диск /dev/sda нужно записать распакованный образ:

# dd if=chr-7.7.img of=/dev/sda bs=4M oflag=sync

Следующими командами производится перезагрузка сервера:

# echo 1 > /proc/sys/kernel/sysrq # echo b > /proc/sysrq-trigger

После выполнения этих команд наш VPS перестанет быть доступен удалённо, так как он загрузится из-под Cloud Hosted Router. Система, с которой загружен сервер пока находится в дефолтном состоянии, и необходимые сетевые настройки на ней отсутствуют.

Первоначальная настройка RouterOS

Для первоначальной настройки RouterOS нужно будет подключиться к серверу в аварийном режиме. Это можно сделать прямо в вашем личном кабинете RUVDS. По умолчанию авторизация в системе происходит при помощи пользователя admin с пустым паролем. При первом входе нажмите y или n ( да или нет ) на запрос о просмотре информации по лицензии:

И установите новый пароль для пользователя admin :

Читайте также:  Astra linux командная строка при установке

После чего станет доступна командная строка Cloud Hosted Router.

Для того, чтобы к нашему серверу можно было подключиться удалённо, необходимо настроить его IP-адрес с маской подсети, а также указать IP-адрес шлюза. Эти данные мы сохранили перед тем, как загрузить на сервер RAW-образа RouterOS.

В командной строке введите ip , после чего нажмите , затем address и снова , затем add и опять .

Теперь, необходимо ввести IP-адрес с маской в формате XXX.XXX.XXX.XXX/XXX . Поскольку в нашем примере, как мы выяснили ранее, IP-адрес – 176.113.82.65 , а маска подсети – 255.255.255.0 , то нам нужно в строке address набрать 176.113.82.65/24 и нажать . После чего в строке interface необходимо указать название интерфейса – ether1 :

Далее необходимо добавить в систему шлюз. Для этого поднимитесь в меню на уровень выше набрав две точки .. и нажав . Следующим шагом наберите route и нажмите . После чего наберите add gateway XXX.XXX.XXX.XXX и снова , где XXX.XXX.XXX.XXX – IP-адрес вашего шлюза. В нашем примере это выглядит следующим образом:

Больше информации по работе с консолью MikroTik RouterOS вы можете найти на их странице, содержащей очень подробное описание команд и операций именно при работе с данной командной строкой.

Чтобы отключиться от командной строки нужно нажать Ctrl D , после чего можно закрыть окно аварийного режима.

Теперь ваш виртуальный маршрутизатор станет доступен удалённо через веб-интерфейс.

Для удалённого подключения необходимо будет на начальной странице авторизоваться пользователем admin :

В общем виде интерфейс управления вашим виртуальным маршрутизатором выглядит следующим образом:

Заключение

Таким образом, в данной статье мы увидели как можно установить MikroTik RouterOS на операционную систему Linux. В нашем примере мы развернули RAW-образ, содержащий Cloud Hosted Router, поверх Ubuntu 20.04. После успешной загрузки сервера уже с RouterOS мы подключились к нему в аварийном режиме, так как удалённый доступ отсутствует при первоначальном запуске Cloud Hosted Router. И далее, мы добавили в систему IP-адрес сервера и шлюза для того, чтобы удалённо управлять полноценным виртуальным маршрутизатором, работающем на нашем VPS.

Источник

Оцените статью
Adblock
detector