Установка MikroTik Cloud Hosted Router (CHR) на VPS сервер

Давно было желание заменить на VPS'ке CentOS на RouterOS, предпосылки были следующие:
- Параметры VPS слабоваты и CentOS нормально не вывозил возложенные на сервисы задачи.
- Удобство. Не имею ничего против командной строки linux, но если есть более удобное средство, то почему бы этим не пользоваться.
- Дома и на подключаемых площадках MikroTik, что упрощает настройку.
Сразу отмечу, что для нормальной работы RouterOS понадобится лицензия! Без нее скорость входящего к VPS трафика будет ограничена 1Mbit/s, не будут работать GRE туннели, не будут выгружаться сертификаты для OpenVPN. По умолчанию устанавливается лицензия Free, подробнее об ограничения в лицензиях описано на официальном сайте MikroTik. Получить лицензию можно двумя путями:
- Купить лицензию P1, P10 или P-Ulimited.
- Получить в подарок предоплаченную лицензию L4/P1 пройдя обучающий курс MikroTik, успешно сдав экзамен и получив сертификат.
Разницу между лицензиями P1, P10, P-Ulimited и цены можно посмотреть на сайте MikroTik.
Установка CHR RouterOS на VPS
Создаем новую Linux виртуальную машину из существующего шаблона (у меня был CentOS 8, но подойдет и Ubuntu) и запускаем ее.
После загрузки VM переписываем сетевые настройки VM т.к. потом придется их вносить вручную в RouteOS. Для CentOS:
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
Монтируем tempfs
в каталог /tmp
# mount -t tmpfs tmpfs /tmp
Загружаем Image файл CHR RouterOS с сайта MikroTik.
# cd /tmp # wget https://download.mikrotik.com/routeros/6.48.4/chr-6.48.4.img.zip
Распаковываем скачанный образ из архива
# unzip chr-6.48.4.img.zip
Записываем образ на жесткий диск
# dd if=chr-6.48.4.img of=/dev/<strong>vda</strong> bs=4M oflag=sync
Где vda
диск системы, узнать диск можно командой fdisk -l
Принудительная перезагрузка
# echo 1 > /proc/sys/kernel/sysrq # echo b > /proc/sysrq-trigger
Но при создании своей машины я использовал обычный метод
# shutdown -r now
Настройка RouterOS
Так как после установки настройки сети у системы отсутствуют, то подключаемся к установленной RouterOS при помощи Recovery консоли хостера.
Доступ по умолчанию:
- Login: admin
- Password: отсутствует
Первым делом устанавливаем пароль для учетной записи admin
, т.к. практически сразу после установки сетевых настроек систему начнут долбить чтобы получить доступ над ней все, кому не лень.
> /user set admin password=<strong>NewSecretPass</strong>
Устанавливаем настройки интерфейсов, настройки берем из ранее записанных.
> /ip address add interface=<strong>ether1</strong> address=<strong>XXX.XXX.XXX.XXX</strong>/<strong>YY</strong>
Добавляем маршрут по умолчанию:
> /ip route add dst-address=0.0.0.0/0 gateway=<strong>ZZZ.ZZZ.ZZZ.ZZZ</strong>/32
Подключаемся к CHR при помощи WinBox и устанавливаем оставшиеся настройки.
IPv6
Если хостер VPS предоставляет IPv6 адрес, то включаем пакет ipv6
в меню System -> Packges
, перезагружаем систему. В меню IPv6 -> Addresses
назначаем интерфейсу IPv6 адрес, IPv6 -> Routes
прописываем маршрут по умолчанию. Если маршрут ссылается на адрес локального интерфейса, то маршрут будет записываться так:
> /ipv6 route add dst-address=2000::/3 gateway=fe80::1%ether1
Не забываем так же настроить FireWall для IPv6 в меню IPv6 -> Firewall
.
Заключение
В заключении хочу отметить что установить CHR RouterOS возможно не на всех VPS хостингах, так же не стоит пренебрегать безопасностью и настройкой FireWall для IPv4 и IPv6.