Поиск по сайту
Интересуешься IT и системным администрированием? Подпишись на наш канал, где мы делимся инсайдами, новостями и практическими советами! Прокачай свои навыки вместе с нами!
Как установить MikroTik RouterOS на VPS сервер
MikroTik RouterOS – это мощная операционная система, предназначенная для маршрутизаторов и серверов, обеспечивающая широкие возможности управления сетью. Установка RouterOS на VPS-сервер позволяет получить функциональный программный маршрутизатор с поддержкой VPN, фаерволов, балансировки нагрузки и других сетевых функций.
В этой статье мы рассмотрим пошаговый процесс установки MikroTik RouterOS на виртуальный сервер, включая подготовку среды, загрузку образа, настройку сети и базовую конфигурацию. Такой подход позволит вам развернуть RouterOS в облаке и использовать его для управления трафиком, организации удаленного доступа и создания безопасных соединений.
Онлайн-курс: Zabbix 6. Мониторинг IT инфраструктуры предприятия.
Курс предлагает глубокое изучение Zabbix 6 и охватывает все ключевые аспекты: от установки и конфигурации до продвинутого мониторинга и автоматизации. Курс подходит как для начинающих, так и для опытных администраторов.
Содержание:
Что такое MikroTik RouterOS?
RouterOS — это операционная система, на которой работает сетевое оборудование MikroTik. Она основана на ядре Linux и может устанавливаться не только на фирменные маршрутизаторы MikroTik, но и на обычные компьютеры и серверы, превращая их в полнофункциональные сетевые устройства.
Поскольку RouterOS поддерживает установку на физические серверы, её можно адаптировать и для работы в облачной среде. Специально для этого создана версия Cloud Hosted Router (CHR) — она разработана для работы на виртуальных выделенных серверах и предоставляет полный набор сетевых функций RouterOS.
В качестве примера в этой статье мы рассмотрим установку MikroTik RouterOS на виртуальный сервер с предустановленной Ubuntu 20.04. Для тестирования мы используем VPS со следующими характеристиками:
- Процессор: 1×2.2 ГГц
- Оперативная память: 2 ГБ RAM
- Диск: 30 ГБ HDD
К сожалению, установка Cloud Hosted Router (CHR) на другие операционные системы может вызывать сложности, поэтому в данном руководстве мы сосредоточимся именно на Ubuntu 20.04.
Установка MikroTik RouterOS (CHR) вместо Ubuntu 20.04 на VPS
Поскольку мы планируем установить RouterOS поверх существующей Ubuntu 20.04, первым шагом будет запись образа RouterOS на виртуальный диск, полностью заменяя текущую операционную систему.
Важно: Все действия выполняются под учетной записью root, так как установка требует полного доступа к системе.
- Подключение к серверу
Подключаемся к VPS по SSH:
ssh root@IP-АДРЕС_ВАШЕГО_СЕРВЕРА
- Обновление системы
Перед началом установки обновляем список доступных пакетов:
apt update
- Установка необходимых утилит
Некоторые пакеты могут отсутствовать в системе, поэтому устанавливаем unzip (если он не установлен):
apt install unzip
- Фиксация сетевых настроек
Прежде чем приступать к установке RouterOS, важно сохранить текущие сетевые параметры сервера, так как они понадобятся позже для настройки доступа. Выполните команду:
ip -c a
Эта команда отобразит текущие IP-адреса и сетевые интерфейсы. Рекомендуется записать или сохранить эту информацию, так как после установки 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: ens3: mtu 1500 qdisc fq state UP group default qlen 1000
link/ether 52:54:00:18:4f:20 brd ff:ff:ff:ff:ff:ff
inet 77.228.150.130/32 brd 77.228.150.130 scope global ens3
valid_lft forever preferred_lft forever
inet6 2a01:e5c0:2515::2/48 scope global
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe18:4f20/64 scope link
valid_lft forever preferred_lft forever
Здесь мы видим, что IP-адрес сервера – 77.228.150.130, а маска подсети – 255.255.255.255, что в выводе представлено как 77.228.150.130/32.
Чтобы определить IP-адрес шлюза, выполняем команду:
ip -c r
Вывод:
default via 10.0.0.1 dev ens3 onlink
Это означает, что шлюз сервера – 10.0.0.1. Эти данные понадобятся при последующей настройке сети в RouterOS.
- Загрузка образа MikroTik RouterOS
Теперь необходимо загрузить установочный образ RouterOS (CHR). Для этого переходим на страницу официальных загрузок MikroTik и копируем ссылку на последнюю стабильную версию RAW-образа из раздела Cloud Hosted Router.
Однако, если вы предпочитаете использовать проверенные версии, можно выбрать стабильную версию MikroTik RouterOS 6.49.18.
Для загрузки образа на VPS переходим в каталог /tmp и выполняем команду:
Важно: нам нужна только ссылка на RAW-образ с сайта MikroTik, сам файл скачивать на компьютер не требуется.
cd /tmp
wget https://download.mikrotik.com/routeros/6.49.18/chr-6.49.18.img.zip
После завершения загрузки распаковываем архив:
unzip chr-6.49.18.img.zip
- Определение имени диска
Перед записью образа необходимо узнать имя основного диска сервера. Для этого используем команду:
fdisk -l
Она выведет список дисков и разделов в системе, из которого мы сможем определить нужное имя устройства (обычно это /dev/vda или /dev/sda). Этот параметр потребуется на следующем этапе установки RouterOS.
В результате выполнения команды fdisk -l мы получили следующую информацию о дисках в системе:
Disk /dev/vda: 30 GiB, 32212254720 bytes, 62914560 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 2B7B0F58-2927-4F4F-AF0E-2A093A24AFEF
Device Start End Sectors Size Type
/dev/vda1 2048 4095 2048 1M BIOS boot
/dev/vda2 4096 62912127 62908032 30G Linux filesystem
Из этого вывода видно (Disk /dev/vda: 30 GiB), что в моём случае основным диском сервера является /dev/vda, но у вас это может быть /dev/sda или другое имя. Именно на него мы будем записывать образ RouterOS на следующем этапе.
- Запись образа RouterOS на диск
Перед тем как записать образ RouterOS, необходимо перевести файловые системы в режим только чтение. Это позволит избежать возможных ошибок при записи и корректно завершить работу текущей системы.
Выполняем команду:
echo u > /proc/sysrq-trigger
После этого можно приступить к записи распакованного образа RouterOS на основной диск /dev/vda. Напоминаю, что у вас это может быть /dev/sda или другое имя. Используем команду dd:
Внимание: Эта операция необратима — все данные на диске будут уничтожены. Убедитесь, что у вас есть резервные копии, если они необходимы.
dd if=chr-6.49.18.img of=/dev/vda bs=4M oflag=sync
Разбор команды:
- if=chr-6.49.18.img — указывает файл, из которого будут считываться данные (установочный образ).
- of=/dev/vda — задаёт целевой диск, на который будет записан образ (в нашем случае /dev/vda).
- bs=4M — устанавливает размер блока для копирования (4 МБ, что ускоряет процесс).
- oflag=sync — гарантирует, что данные записываются на диск синхронно, предотвращая возможные ошибки.
После завершения записи система будет готова к загрузке RouterOS. Следующим шагом необходимо перезагрузить сервер.
- Перезагрузка сервера и запуск RouterOS
Коллеги, обращаю ваше внимание, что после перезагрузки RouterOS загружается с пользователем admin и пустым паролем!
Если на сервере запущен DHCP-клиент, и он автоматически получает IP-адрес с доступом в интернет, у вас есть буквально считаные секунды, чтобы успеть установить пароль администратора. В моей практике были случаи, когда всего за 10 секунд злоумышленники создавали нового пользователя, наделяли его полными правами и отключали учётную запись admin, после чего приходилось полностью переустанавливать RouterOS.
Поэтому лучший вариант — назначать IP-адрес вручную, что мы и сделаем дальше. Это позволит контролировать момент, когда сервер получит доступ в интернет, и даст вам время для безопасной смены пароля.
После успешной записи образа RouterOS необходимо перезагрузить сервер. Так как стандартная команда reboot может не сработать из-за разрушенной файловой системы, выполняем следующие команды принудительной перезагрузки:
echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger
После выполнения этих команд сервер будет перезагружен и загрузится с Cloud Hosted Router.
Важное замечание: На данном этапе VPS перестанет быть доступен по SSH, так как RouterOS загружается в дефолтном состоянии, без настроек сети. Для восстановления подключения потребуется выполнить первоначальную настройку RouterOS, включая задание IP-адреса и параметров доступа.
Следующим шагом займемся настройкой сети и подключением к RouterOS.
Первоначальная настройка RouterOS
После перезагрузки сервера удалённое подключение по SSH недоступно, так как RouterOS загружается в дефолтном состоянии без сетевых настроек. Поэтому для первоначальной настройки нам потребуется подключиться к VPS через VNC-консоль.
- Подключение через VNC
В панели управления вашего хостинг-провайдера найдите раздел VNC-консоль и откройте её. Это позволит получить доступ к серверу напрямую, минуя сетевые настройки.
- Вход в RouterOS
После загрузки RouterOS на экране появится приглашение к авторизации. По умолчанию используются следующие учетные данные:
- Логин: admin
- Пароль: (оставьте пустым)
После ввода данных нажмите Enter.
- Пропуск просмотра лицензии
При первом входе система предложит ознакомиться с лицензией. Вы увидите запрос:
Здесь можно выбрать:
- y (yes) — если хотите просмотреть лицензию
- n (no) — чтобы пропустить
Лично я обычно нажимаю n, так как с лицензией уже знаком.
Теперь RouterOS загружен и готов к дальнейшей настройке сети, что позволит восстановить удалённый доступ к серверу.
И сразу задайте новый пароль для пользователя admin.
После этого откроется командная строка Cloud Hosted Router.
Чтобы восстановить удалённый доступ к серверу, необходимо настроить IP-адрес с маской подсети и указать IP-адрес шлюза. Эти параметры мы зафиксировали заранее перед установкой RouterOS.
Настройка сети и защита от атак
После загрузки RouterOS и входа в систему необходимо настроить сетевые параметры, чтобы восстановить удалённый доступ к серверу.
- Назначение IP-адреса
Добавляем сохранённые ранее сетевые параметры:
/ip address add address=77.228.150.130/32 interface=ether1 network=10.0.0.1
Разберём команду данную команду более подробно:
/ip address add – это основная команда в RouterOS, которая добавляет новый IP-адрес в систему.
address=77.228.150.130/32 – задаёт IP-адрес сервера с маской
interface=ether1 – определяет, на каком сетевом интерфейсе будет назначен этот IP-адрес.
network=10.0.0.1 – задаёт сеть, к которой принадлежит этот IP-адрес. В данном случае это IP-адрес шлюза, который был получен ранее.
Проверяем, что IP-адрес успешно добавлен:
ip address print
Flags: X - disabled, I - invalid, D - dynamic
# ADDRESS NETWORK INTERFACE
0 77.228.150.130/32 10.0.0.1 ether1
- Настройка маршрутизации
Просматриваем текущие маршруты:
ip route print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 ADC 10.0.0.1/32 77.228.150.130 ether1 0
Как видно, в таблице маршрутизации уже присутствует подключённый (Connected, ADC) маршрут, который связывает наш IP-адрес 77.228.150.130 с конкретным узлом 10.0.0.1 через интерфейс ether1. Однако отсутствует маршрут для выхода в интернет.
Добавляем его вручную:
ip route add gateway=10.0.0.1
Проверяем подключение к интернету:
ping 8.8.8.8
SEQ HOST SIZE TTL TIME STATUS
0 8.8.8.8 56 120 6ms
1 8.8.8.8 56 120 10ms
2 8.8.8.8 56 120 7ms
3 8.8.8.8 56 120 7ms
4 8.8.8.8 56 120 11ms
5 8.8.8.8 56 120 10ms
6 8.8.8.8 56 120 9ms
7 8.8.8.8 56 120 7ms
8 8.8.8.8 56 120 6ms
sent=9 received=9 packet-loss=0% min-rtt=6ms avg-rtt=8ms max-rtt=11ms
Если пинг проходит успешно, значит сервер теперь имеет доступ к глобальной сети.
- Защита сервера от сетевых атак
Как только сервер становится доступен в интернете, его начинают сканировать боты, пытаясь подобрать пароли через открытые сервисы. Чтобы предотвратить взлом, необходимо отключить все неиспользуемые сервисы, оставив только Winbox — фирменный инструмент управления MikroTik.
Сначала смотрим список активных сервисов:
ip service print
Flags: X - disabled, I - invalid
# NAME PORT ADDRESS CERTIFICATE
0 telnet 23
1 ftp 21
2 www 80
3 ssh 22
4 XI www-ssl 443 none
5 api 8728
6 winbox 8291
7 api-ssl 8729 none
Обычно по умолчанию включены telnet, ftp, www, ssh, api, а www-ssl, winbox, api-ssl могут быть отключены.
Отключаем все ненужные службы:
ip service set disabled=yes telnet
ip service set disabled=yes ftp
ip service set disabled=yes www
ip service set disabled=yes ssh
ip service set disabled=yes api
ip service set disabled=yes api-ssl
Проверяем, что остался только Winbox:
ip service print
Flags: X - disabled, I - invalid
# NAME PORT ADDRESS CERTIFICATE
0 XI telnet 23
1 XI ftp 21
2 XI www 80
3 XI ssh 22
4 XI www-ssl 443 none
5 XI api 8728
6 winbox 8291
7 XI api-ssl 8729 none
Активный сервис Winbox будет обозначен флагом XI, подтверждая, что остальные службы успешно отключены.
Подключение к RouterOS через Winbox
После отключения всех ненужных сервисов оставляем только Winbox и переходим снова на официальный сайт MikroTik, чтобы скачать программу Winbox версии 3.41 (64-bit).
- Запуск Winbox и подключение к серверу
Открываем Winbox и в поле Connect To вводим IP-адрес сервера (в нашем примере 77.228.150.130). Далее указываем:
- Login: admin
- Password: (пароль, который мы установили ранее)
Затем нажимаем Add/Set.
- Подключение к RouterOS
После добавления параметров нажимаем Connect.
Если всё настроено правильно, перед нами откроется графический интерфейс управления MikroTik RouterOS через Winbox.
В рамках этой статьи мы завершили установку и базовую настройку сервера. Дальнейшая конфигурация, включая VPN (SSTP, IKEv2, L2TP), брандмауэр, NAT и другие сетевые функции, будет рассмотрена в следующих материалах.
Заключение
В этой статье мы подробно рассмотрели процесс установки MikroTik RouterOS (CHR) на VPS с Ubuntu 20.04. Мы записали RAW-образ RouterOS поверх существующей системы, подключились к серверу через VNC-консоль и настроили сеть для восстановления удалённого доступа. После этого обеспечили базовую защиту, отключив ненужные сервисы, и подключились к серверу через Winbox для дальнейшего управления.
Теперь наш VPS работает как полноценный маршрутизатор на базе MikroTik RouterOS и готов к дальнейшей настройке. В следующих статьях мы рассмотрим, как настроить VPN-соединения, брандмауэр, NAT и другие сетевые функции. Подписывайтесь на наш Telegram-канал, чтобы не пропустить новые материалы! 🚀🚀🚀
Вам понравилась эта статья? Тогда вам, скорее всего, будет интересна другая полезная статья Как установить Zabbix 7 на Ubuntu 24.04 с использованием веб-сервера Apache и базы данных MySQL.
Интересуешься IT и системным администрированием? Подпишись на SysAdminHub в Телеграмм или Макс, чтобы узнавать обо всем первым!
Статья была полезна? Поддержи автора, и благодаря твоей помощи новые материалы будут выходить еще чаще:
