Slepoy • сис.админ © 2025-2026.

SLEPOY • сис.админ

Как установить Mihomo без Docker и настроить точечную маршрутизацию трафика через MikroTik

Пошаговая инструкция по установке Mihomo без Docker на Linux и настройке MikroTik для точечной маршрутизации трафика. Разбираем policy routing, mangle rules, routing mark и интеграцию с прокси для гибкого управления сетевыми потоками.

Шаг 1. Установка и настройока Mihomo

Необходимо скачать с GitHub Mihomo распаковать архив сделать файл исполняемым и переместить в каталог исполняемых файлов. Так же сформировать config.yaml, и установить как сервис systemctl strat mihomo

Ссылка на репозиторий: https://github.com/MetaCubeX/mihomo/

Code
# Скачиваем исполняемый файл последняя версия на 07.04.2026
sudo wget https://github.com/MetaCubeX/mihomo/releases/download/v1.19.22/mihomo-linux-amd64-compatible-v1.19.22.gz -O Mihomo.gz
# Разархивируем
sudo gunzip Mihomo.gz
# Даем права на запуск
sudo chmod +x Mihomo
# Переносим в директорию исполняемых файлов
sudo mv Mihomo /usr/local/bin/

Сформируем конфигурационный файл config.yaml помещаем по пути /etc/mihomo/:

Code
# Создание дирреткории
mkdir -p /etc/mihomo
# Создание файла конфига поместите туда все что ниже
nano /etc/mihomo/config.yaml

#
#  CONFIG.YAML
#
# REDIRECT PORT
redir-port: 7892

# TPROXY PORT
tproxy-port: 7893

#HTTP прокси порт
port: 7890

#SOCKS5 PORT
socks-port: 7891

#Разрешает подключения из локальной сети
allow-lan: true

# rule — по правилам (самый гибкий)
# global — всё через прокси
# direct — всё напрямую
mode: rule

# debug — максимум информации
# info — нормально
# warning / error — меньше логов
log-level: info

# API для управления Mihomo
# доступен с любого IP
# порт: 9090
external-controller: 0.0.0.0:9090

# Путь к веб-интерфейсу (панели управления)
external-ui: /root/.config/mihomo/ui

# Пароль для доступа к API/UI
secret: "your-password"

# Список прокси-серверов тут вы настраиваете все что вам нужно в сети информации много (здесь ваши данные VLESS, SS, и т.д)
proxies:
  - name: Test
    type: ss
    server: 127.0.0.1
    port: 12345
    cipher: aes-256-gcm
    password: "randompassword123"

# Группы прокси
proxy-groups:
  - name: PROXY
    type: select
    proxies:
      - Test

# Включает встроенный DNS сервер Mihomo
# redir-host — простой, быстрее
# fake-ip — продвинутый (лучше для проксирования)
dns:
  enable: true
  enhanced-mode: redir-host

# MATCH = весь трафик
# отправлять в группу PROXY
rules:
  - MATCH,PROXY

Ранее мы прописали путь до Web-интерфейса который управляет API сервера нам необходимо установить его.

Ссылка на репозиторий: https://github.com/MetaCubeX/metacubexd

Code
# Скачиваем архив с Web-интерфейсом
wget http://github.com/MetaCubeX/metacubexd/releases/download/v1.244.2/compressed-dist.tgz -O ui.tgz
# Создаём директорию (если ещё не создана) для хранения ранее описана в config.yaml
sudo mkdir -p /root/.config/mihomo/ui
# Копируем архив разархивируем и удаляем
sudo tar -xzf ui.tgz -C /root/.config/mihomo/ui && rm ui.tgz

Шаг 2. Настройка Mihomo как сервис

Переходим в директорию systemd:

Code
sudo cd /etc/systemd/system/

Создаем unit-файл самого Mihomo:

Code
sudo nano mihomo.service

И помещаем туда этот фрагмент:

Code
[Unit]
Description=Mihomo Daemon
After=network.target

[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/Mihomo -f /etc/mihomo/config.yaml
Restart=always

[Install]
WantedBy=multi-user.target

Создаем зависящий mihomo-routing.service:

Code
sudo nano mihomo-routing.service:

И помещаем этот фрагмент этот сервис нужен для создания таблицы, которая будет маршрутизировать в WireGuard в Proxy таким образом будет настроен прозрачный прокси:

Code
[Unit]
Description=Custom routing for Mihomo
After=network.target
Before=mihomo.service

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/ip rule add fwmark 0x1 table 100
ExecStart=/sbin/ip route add local default dev lo table 100
ExecStop=/sbin/ip rule del fwmark 0x1 table 100
ExecStop=/sbin/ip route del local default dev lo table 100

[Install]
WantedBy=multi-user.target

Включаем два сервиса в автозагрузку:

Code
systemctl enable mihomo-routing.service
systemctl enable mihomo.service

Далее запускаем сервис переходим по адресу и порту в браузере ipvm:9090/ui

Шаг 3. Настройка WireGuard на сервере с Mihomo для подключения Mikrotik

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

Code
sudo apt update

Как только все пакеты будут обновлены, начинаем загрузку собственного WireGuard. Вводим в терминал системы команду, представленную ниже:

Code
sudo apt install wireguard

Как только закончится скачивание всех файлов, переходим в главный каталог устанавливаемого ПО. Он находится по следующему адресу:

Code
cd /etc/wireguard/

Это нужно для того, чтобы дальнейшая настройка сервера, включая создание ключей и редактирование конфига, происходила именно в каталоге установленного сервиса. Здесь будут храниться все создаваемые ключи сервера и его пользователей, а также главный конфиг, которые мы будем рассматривать немного позже.

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

Code
wg genkey | tee /etc/wireguard/server_privatekey | wg pubkey | tee /etc/wireguard/server_publickey

Далее создаем файл wg0 кидаем конфигу подключаем его к Mikrotik если виртуальная машина в локальной сети рекомендую, наоборот, подключать Mikrotik настраивать несколько Mihomo серверов через NetWatch рулить переключения между WireGuard ключи естественно должны быть одинаковые шлюзы доступны конфигурационный файл wg как настраивать подключение на Mikrotik пропущу:

Code
[Interface]
PrivateKey = O3hoyNESTeCMTC+UIzdt6/OiV0Tqbj4C1m79LR+RPHE=
Address = 10.10.10.1
ListenPort = 2222

[Peer]
PublicKey = YyLm6N8MNLDf5sZ/Sx6qgd0OeiyPJv+YARRpseUgCG0=
Endpoint = ip:port # Подключения к вашему Mikrotik
PersistentKeepalive = 10
AllowedIPs = 10.10.10.2/32

Проверьте Ping от шлюза до шлюза если он есть значить все работает наша задача сразу же пустить весь трафик от WireGuard в proxy Mihomo (натсройка прозрачного proxy) для этого установим netfilter-persistent и сделаем пару правил iptables на виртуальной машине с Mihomo:

Code
# Добавление правил
iptables -A PREROUTING -i wg0 -p tcp -j TPROXY --on-port 7893 --on-ip 0.0.0.0 --tproxy-mark 0x1/0xffffffff
iptables -A PREROUTING -i wg0 -p udp -j TPROXY --on-port 7893 --on-ip 0.0.0.0 --tproxy-mark 0x1/0xffffffff

# Этот пакет нужен чтобы правила iptables оставались даже после перезагрузки
sudo apt install iptables-persistent

Шаг 4. Настройка Mikrotik

Статистика

Дата публикации: 3 часа назад

Дата редактирования: 3 часа назад

Количество просмотров: 3

Количество показов: 6

Количество лайков: 0

Закладки: 0

Теги