Меню Рубрики

Установка routeros на ubuntu

Развертывание и базовая настройка Mikrotik CHR

Cloud Hosted Router — это специальная версия Mikrotik RouterOS, которая разработана для развертывания в облачной инфраструктуре как операционная система для виртуальных машин, но может быть также развернута и на реальном железе.

CHR создавалась для 64-битных систем и совместима с большинством гипервизоров.

  • процессор: x86_64 с поддержкой аппаратной виртуализации;
  • ОЗУ: 128 МБ и более;
  • диск: 128 МБ и более (максимально 16 ГБ).

Установка Mikrotik CHR на виртуальную машину

В статье рассмотрена установка CHR на Облачную платформу Selectel. Будем считать, что проект уже создан, а регион выбран.

Для начала посетите сайт https://mikrotik.com/download, чтобы скачать образ CHR:

Для примера будет использована стабильная версия (на момент написания статьи 6.46.3). Формат образа не столь важен, так как облачная платформа умеет работать со всеми из этих форматов, но для примера был выбран формат RAW.

Далее создайте виртуальную машину.

В разделе «‎Имя и расположение»‎ укажите следующие данные: Имя, регион и дата-центр.

В качестве источника выберите загруженный образ CHR.

Задайте необходимые параметры, в нашем случае будет достаточно 1 vCPU, 512 RAM, 5 Гб дискового пространства.

Выберите подсеть, к которой будет подключена машина. Можно задействовать «плавающий» IP-адрес или приобрести подсеть. В нашем случае использована подсеть на 5 IP-адресов.

После того как сервер будет создан, перейдите на вкладку «Консоль». В качестве логина по умолчанию используется admin, пароль пустой. Поскольку сеть еще не настроена, рекомендуется вначале установить пароль на учетную запись admin или создать новую учетную запись, а затем удалить или деактивировать учетную запись admin.

В примере будет установлен пароль на admin:

Затем откроется текстовый редактор, введите пароль, и нажмите сочетание клавиш CTRL+O. Пароль установлен.

Далее пропишите IP-адрес и настройте маршрутизацию. Чтобы узнать IP-адрес подсети и шлюз, перейдите на вкладку «Сети» и выберите «Публичные подсети»:

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

Проверьте, что IP-адрес был добавлен корректно:

Теперь настройте маршрутизацию, добавив шлюз по-умолчанию:

Проверьте, что маршрут добавился:

Также проведите проверку работоспособности маршрута:

Поскольку теперь виртуальная машина имеет доступ во внешнюю сеть, можно воспользоваться бесплатным графическим конфигуратором Mikrotik Winbox. Он создан для операционной системы Windows, однако прекрасно работает и в Linux при помощи WINE.

Первым делом настройте DNS-серверы, для этого выберите IP > DNS. В поле Servers введите адреса DNS-серверов, например 188.93.16.19 и 188.93.17.19, после чего нажмите кнопку ОК.

Как видите, ничего сложного в установке Cloud Hosted Router на виртуальный сервер нет. Теперь расскажем, как действовать, если хостинг не поддерживает возможность выбора установочного образа.

Установка Mikrotik CHR на сервер без поддержки установочных образов

А как быть если хостинг не предоставляет возможности установки ОС из своего образа? На самом деле все довольно просто. Ниже мы рассмотрим такой вариант установки на примере сервиса Vscale.io.

Для начала создайте сервер. В данном примере будет рассматриваться развертывание CHR на базе Ubuntu. Но выбор операционной системы не так важен, так как подобный функционал реализован в большинстве дистрибутивов GNU/Linux:

Будет достаточно самой простой конфигурации:

  • процессор — 1 ядро;
  • ОЗУ — 512 МБ;
  • диск — 20 ГБ.

Выберите нужный регион и укажите имя сервера:

Для удобства подключения по SSH можно добавить свой ключ. Однако, следует учитывать, что после того, как будет установлен CHR, ключ перестанет функционировать.

После того как параметры заданы, нажмите кнопку «‎Создать сервер».

В случае если не была выбрана авторизация по SSH-ключу, то письмо с паролем от пользователя root будет отправлено на почту. А также будет показана страница с паролем:

Спустя минуту подключитесь к серверу по SSH:

Обновите репозитории и установите unzip:

Скачайте образ на виртуальную машину:

Распакуйте архив с образом:

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

Перезагрузите виртуальную машину:

После перезагрузки зайдите в консоль сервера, она доступна на странице с информацией о сервере:

Читайте также:  Установка прогноз погоды на рабочий стол

Уровни лицензии Cloud Hosted Router и процесс активации

В отличие от «железной» версии RouterOS, Cloud Hosted Router не имеет «привязки» лицензии к оборудованию, а также не имеет определенных ограничений, например, нет ограничений по количеству туннелей.

Единственное ограничение, которое накладывают разные уровни лицензий — это скорость каждого из интерфейсов. Ниже представлены разные уровни лицензий, их отличия и стоимость:

Лицензия Аналог RouterOS лицензии Ограничение скорости на портах Стоимость
Free 1 Мбит/с $0
P1 L4 1 Гбит/с $45
P10 L5 10 Гбит/с $95
P-unlimited L6 $250

Также возможно воспользоваться пробной версией CHR, функционал которой аналогичен полноценной лицензии, но имеет ограниченный срок действия — 60 дней. После этого лицензия не пропадет, но операционная система перестанет обновляться.

Активация пробной версии CHR

Для активации CHR необходимо, чтобы были настроены следующие параметры:

  • IP-адрес;
  • маршрутизация в интернет;
  • DNS серверы.

После того как эти параметры будут настроены, можно приступить к активации лицензии.

Вначале, необходима учетная запись на сайте mikrotik.com. Если у вас ее нет, то необходимо её создать. При создании учетной записи поставьте галочку «Allow to use my account from netinstall and winbox‎».

Далее в Winbox выберите System > License. Откроется такое окно:

Нажмите на кнопку Renew License. Откроется окно, в котором нужно ввести свою почту и пароль, которые вы указали при регистрации, а также уровень лицензии, который вы хотите протестировать, в нашем случае это лицензия P1.

После активации окно будет выглядеть примерно так:

Cloud Hosted Router активирован.

Заключение

В данной статье была рассмотрена установка и базовая настройка Cloud Hosted Router, а также правила лицензирования. Это универсальный инструмент для управления сетью как в обычной, так и в виртуальной инфраструктуре.

В будущих статьях мы расскажем в каких сценариях можно использовать эту гибкую и мощную операционную систему. Оставайтесь с нами!

Популярные статьи

«Мультиоблачная среда» — новый комплекс услуг Selectel

Мы объявляем о запуске комплекса услуг — «Мультиоблачная среда» или Multi-Cloud. Теперь наши клиенты смогут построить свои решения, используя наиболее подходящие сервисы Selectel, Amazon Web Services, Microsoft Azure, Google Cloud Platform и Alibaba Cloud, не ограничиваясь возможностями одной платформы. О преимуществах Multi-Cloud мы расскажем в этой статье. Тенденции использования облачных платформ Мультиоблачная среда становится основным направлением развития на.

Managed Databases в Selectel: приглашаем в бету

Сегодня мы представляем открытую для тестирования бета-версию Managed Databases для PostgreSQL, использование которой будет бесплатным на период бета-тестирования. Базы данных — один из наиболее значимых и сложных компонентов любой информационной системы или приложения. Процессы создания, конфигурации баз данных и управления ими, выполняемые вручную, могут занимать недели или даже месяцы. С ростом бизнеса, что ведет за собой рост.

источник

Простой способ установить Mikrotik RouterOS в любом облаке

Многие облачные провайдеры не позволяют загружать ISO-файлы и не предоставляют никакой возможности для установки ОС отличных от тех что предусмотрены самим облаком.

В этой статье я расскажу вам как избежать данное ограничение и как просто в 5 шагов можно установить Mikrotik Cloud Hosted Router на любой облачной виртуалке.

    Создаем новую виртуалку (Ubuntu или Debian особо не имеет значения)

Загружаемся, и монтируем tmpfs в /tmp

Теперь переходим по ссылке и скачиваем «Cloud Hosted Router» raw-образ.

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

Теперь нам нужно инициализировать жесткую перезагрузку:

После перезагрузки Mikrotik RouterOS подготовит жесткий диск автоматически и вы увидите приглашение для входа.

Редакторский дайджест

Присылаем лучшие статьи раз в месяц

Скоро на этот адрес придет письмо. Подтвердите подписку, если всё в силе.

Похожие публикации

Интервью с Моисеем Урецким, сооснователем и директором Digital Ocean

Mikrotik автоматическое переключение на резервный канал для динамического ip адреса (выдаваемого по DHCP)

Устанавливаем любой Linux дистрибутив на Digital Ocean

Вакансии

AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Читайте также:  Установка полки для бокалов

Комментарии 17

Я рассказал как, но зачем — это уже другой вопрос 🙂
В основном этот гайд пригодится тем кто имел дело и привык работать с RouterOS.

Ну например если у вас вся инфраструктура построенна на микротиках, вы наверняка захотите иметь единый и стандартизированный интерфейс на всех устройвах, ну или если вы просто захотите сделать выходной узел для вашего домашнего mikrotik-роутера.

Так же RouterOS из коробки поддерживает кучу полезных функций и единый интерфейс к ним, которые сразу же можно использовать не углубляясь в тонкости настройки аналогичных демонов под linux.

Как вариант, у меня стоит для The Dude. Лицензию L4 получил на последнем MUM в Екатеринбурге. Образ прикрутил в LVM под Centos 7 для QEMU

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

У меня вот есть два CHR в Германии и Японии, через них я маршрутизирую свой домашний трафик по нужным мне правилам (например, до Кореи у меня трафик по умолчанию бегает через Америку, а до Японии — напрямую, поэтому я завернул трафик в Корею через CHR который в Японии).
Я конечно понимаю что все можно сделать на какой-нибудь чистой убунте/дебиане/центоси, но лично мне привычнее и удобнее поднять EoIP туннели парой кликов, ну и просто отсутствие зоопарка разных осей на маршрутизаторах (дома у меня Mikrotik).

Я не говорю что все должны так делать, это может быть очень не правильно и за это может быть мне стоит оторвать руки =)

С одной стороны баян страшный, но мысль про tmpfs здравая
С другой стороны, например я перед ребутом, но после раскатки образа еще и прописываю внутрь скрипт, который меняет пароль администратора и прописывает правильные IP адреса и шлюзы, иначе можно потом и не подключиться, а не все облака дают доступ к консоли

источник

Jamesits / vps2routeros.sh

#! /bin/bash
# This project has been moved to https://github.com/Jamesits/vps2routeros.
# This script is still kept for compatibility, but it will not be updated anymore.
echo » You are using an old version of vps2routeros. Please download the new version from https://github.com/Jamesits/vps2routeros . «
# VPS2RouterOS
#
# . PLEASE READ ALL THE FOLLOWING TEXT BEFORE RUNNING THIS.
#
# Please UPDATE IMMEDIATELY after installation. The script will install a
# relatively old version of RouterOS, which have some major bugs.
#
# You can use `wget go.swineson.me/vps2routeros` to download this script
# if you have trouble in copy/paste. If you use `curl`, remember to add `-L`
# flag.
#
# For detailed explaination of this script see my blog post (in Chinese):
# https://blog.swineson.me/install-routeros-on-any-ubuntu-vps/
# script modified from:
# https://www.digitalocean.com/community/questions/installing-mikrotik-routeros
#
# This will download and install RouterOS on your x86_64 device
# (works with most physical device / VM / VPS)
# Please start with a recent version of Ubuntu (16.04+). Debian will not work.
#
# CAUTION: ALL PREVIOUS DATA IS LOST INSTANTLY!
# PLEASE REMEMBER YOUR NETWORK CONFIGURATION!
# (If you need IPv6, remember your gateway link-local address too)
# IT IS RECOMMENDED TO HAVE CONSOLE ACCESS TO THE MACHINE.
# You need a bash (or equivalent) to run this script — /bin/sh won’t work!
#
# First change the settings below if needed. Then run this script.
#
# Note: after «write disk» staging started, you may see your console stuck
# or in a mess. This is normal since the kernel disappeared while it is running.
# If this happens, wait 5 minutes and reset that device’s power (if it is a VM,
# reboot it from control panel), and RouterOS should boot.
#
# After installation, use user: admin password: (empty) to login, change password
# fast, then go to /system packages and upgrade to the newest version.
set -eu
# ======================= please change these =================================
# your network interface to internet
# this is used to auto configure IPv4 after reboot
# (this may not work for every device)
# eth0 for most devices, ens3 for Vultr
# you can use `ip addr` or `ifconfig` to find out this
MAIN_INTERFACE=eth0
# get IPv4 address in IP-CIDR format
# do not modify unless you know what you are doing
ADDRESS= ` ip addr show $MAIN_INTERFACE | grep global | cut -d ‘ ‘ -f 6 | head -n 1 `
# get gateway IP
# do not modify unless you know what you are doing
GATEWAY= ` ip route list | grep default | cut -d ‘ ‘ -f 3 `
# HDD device (not partition)
# May not be compatible with SCSI drives; see official document of RouterOS CHR
# you can use `lsblk` to find out this
DISK=/dev/vda
# Note: you can customize commands to be executed when RouterOS initializes.
# Search `Auto configure script` below
# do not modify that unless you know what you are doing
# ======================= no need to modify below ============================
# check if this script is running under root
if [[ $EUID -ne 0 ]] ; then
echo » This script must be run as root » 1>&2
exit 1
fi
echo » installing packages «
apt update -y
apt install -y qemu-utils pv psmisc
echo » download image «
wget https://download2.mikrotik.com/routeros/6.39/chr-6.39.img.zip -O chr.img.zip
echo » unzip image «
gunzip -c chr.img.zip > chr.img
echo » convert image «
qemu-img convert chr.img -O qcow2 chr.qcow2
qemu-img resize chr.qcow2 ` fdisk $DISK -l | head -n 1 | cut -d ‘ , ‘ -f 2 | cut -d ‘ ‘ -f 2 `
echo » mount image «
modprobe nbd
qemu-nbd -c /dev/nbd0 chr.qcow2
echo » waiting qemu-nbd «
sleep 5
partprobe /dev/nbd0
mount /dev/nbd0p2 /mnt
echo » write init script «
cat > /mnt/rw/autorun.scr EOF
# Auto configure script on RouterOS first boot
# feel free to customize it if you really need
/ip address add address=$ADDRESS interface=[/interface ethernet find where name=ether1]
/ip route add gateway=$GATEWAY
/ip service disable telnet
/ip dns set servers=8.8.8.8,8.8.4.4
EOF
echo » unmount image «
umount /mnt
echo » resize partition «
echo -e ‘ d\n2\nn\np\n2\n65537\n\nw\n ‘ | fdisk /dev/nbd0
e2fsck -f -y /dev/nbd0p2 || true
resize2fs /dev/nbd0p2
sleep 5
echo » move image to RAM (this will take a lot of time) «
mount -t tmpfs tmpfs /mnt
pv /dev/nbd0 | gzip > /mnt/chr-extended.gz
sleep 5
echo » stop qemu-nbd «
killall qemu-nbd
sleep 5
echo u > /proc/sysrq-trigger
sleep 5
echo » write disk «
zcat /mnt/chr-extended.gz | pv > $DISK
echo » sync disk «
echo s > /proc/sysrq-trigger
echo » wait a while «
sleep 5 || echo » please wait 5 seconds and execute\n\techo b > /proc/sysrq-trigger\nmanually, or hard reset device «
echo » rebooting «
echo b > /proc/sysrq-trigger
Читайте также:  Установка прицела на ласточкин хвост проблемы

This comment has been minimized.

r4r007 commented Jan 16, 2018

no file or directory while mount /dev/nbd0p2 /mnt , why ?

This comment has been minimized.

bman87 commented Feb 16, 2018

After line 87 add the line: partprobe /dev/nbd0

This comment has been minimized.

thejra commented Oct 1, 2018

Crash on 72% of «write disk».

This comment has been minimized.

kt1024 commented Jul 26, 2019

新版的在亚马逊/腾讯都不行(mount: /mnt: special device /dev/nbd0p2 does not exist. ubuntu 16.04),只有这个旧版的能用,一开始还以为平台/OS做了大修改导致脚本失效。

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

источник

Добавить комментарий