mitmproxy с wireguard для логирования всего сетевого трафика на моем компьютере (Arch Linux): SERVAIL Рекурсивный вопрос

Вопрос или проблема

Я хотел бы использовать прозрачный режим mitm с wireguard

Поэтому я попробовал это

mitmweb --mode wireguard                                                                                                0 (3.656s) < 19:02:30
[19:02:32.784] ------------------------------------------------------------
[Interface]
PrivateKey = 3EehrmHii+iVTKubcsUX0JTxUAWH+td4dxHPiQ3knKw=
Address = 10.0.0.1/32
DNS = 10.0.0.53

[Peer]
PublicKey = OgxYi/SqMutxOc5/0JH/KhaORA/TA1fpSfQupST0yxs=
AllowedIPs = 0.0.0.0/0
Endpoint = 192.168.1.215:51820

Я затем попытался включить конфигурацию wireguard, данную командой mitmweb --mode wireguard выше:

wg-quick up ./mitmweb.conf
Предупреждение: `/home/rosemaryoannah/mitmweb.conf' доступен всем
[#] ip link add mitmweb type wireguard
[#] wg setconf mitmweb /dev/fd/63
[#] ip -4 address add 10.0.0.1/32 dev mitmweb
[#] ip link set mtu 65456 up dev mitmweb
[#] resolvconf -a mitmweb -m 0 -x
[#] wg set mitmweb fwmark 51820
[#] ip -4 route add 0.0.0.0/0 dev mitmweb table 51820
[#] ip -4 rule add not fwmark 51820 table 51820
[#] ip -4 rule add table main suppress_prefixlength 0
[#] sysctl -q net.ipv4.conf.all.src_valid_mark=1
[#] nft -f /dev/fd/63

Но затем, когда я посмотрел в http://127.0.0.1:8081/#/flows, похоже, что все заканчивается с SERVFAIL Рекурсивный запрос.

Что мне делать?

Ответ или решение

Чтобы настроить прозрачный прокси mitmproxy с использованием WireGuard на вашей системе Arch Linux и устранить проблему с ошибкой SERVFAIL, важно следовать правильно подобранной последовательности шагов и проверок. В этом ответе я подробно расскажу о необходимых действиях.

Шаг 1: Установка необходимого ПО

Убедитесь, что у вас установлены необходимые пакеты. Запустите в терминале:

sudo pacman -Syu mitmproxy wireguard-tools

Шаг 2: Настройка конфигурации WireGuard

Ваш файл конфигурации mitmweb.conf выглядит корректно. Однако убедитесь, что конфигурация WireGuard не имеет ошибок, и параметры соответствуют вашей сети. Вот пример, как может выглядеть файл:

[Interface]
PrivateKey = 3EehrmHii+iVTKubcsUX0JTxUAWH+td4dxHPiQ3knKw=
Address = 10.0.0.1/32
DNS = 10.0.0.53

[Peer]
PublicKey = OgxYi/SqMutxOc5/0JH/KhaORA/TA1fpSfQupST0yxs=
AllowedIPs = 0.0.0.0/0
Endpoint = 192.168.1.215:51820

Убедитесь, что DNS-сервер, указанный в конфиге (10.0.0.53), доступен и работает корректно. Возникающие ошибки SERVFAIL часто связаны с проблемами разрешения DNS.

Шаг 3: Запуск WireGuard

Запустите WireGuard с помощью команды:

wg-quick up ./mitmweb.conf

Убедитесь, что команда выполняется без ошибок. Проверьте статус интерфейса:

ip a show mitmweb

Шаг 4: Проверка DNS

Проблемы с разрешением DNS могут вызывать ошибки SERVFAIL. Запустите ping на DNS:

ping 10.0.0.53

Если DNS не отвечает, попробуйте сменить его на другой (например, 1.1.1.1 или 8.8.8.8) и проверьте конфигурацию.

Шаг 5: Запуск mitmproxy

Запустите mitmproxy в режиме WireGuard:

mitmweb --mode wireguard

Следите за тем, что он не выдает ошибок при запуске и отображает информацию о статусе.

Шаг 6: Проверка правил маршрутизации

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

ip route show table 51820

Должны быть маршруты, направляющие трафик через интерфейс mitmweb.

Кроме того, выполните:

ip rule show

Убедитесь, что правила перенаправления активны и работают корректно.

Шаг 7: Проверка соединения

В браузере, открыв http://127.0.0.1:8081/#/flows, удостоверитесь, что приложение захватывает трафик. Если трафик не отображается, проверьте настройки браузера и убедитесь, что он использует прокси mitmproxy. Попробуйте выполнить curl-запрос из терминала:

curl -x http://127.0.0.1:8081 http://example.com

Шаг 8: Устранение ошибок

Если по-прежнему наблюдаются ошибки SERVFAIL, выполните следующий список действий:

  1. Проверьте логи mitmproxy для выявления возможных проблем.
  2. Убедитесь, что никакие файрволы или другие сетевые настройки не блокируют трафик.
  3. Проверьте настройки DNS на вашей системе и в файле /etc/resolv.conf.

Заключение

Следуйте вышеизложенным шагам, чтобы успешно настроить mitmproxy в режиме WireGuard на Arch Linux и устранить ошибку SERVFAIL. Если проблемы продолжаются, рассмотрите возможность обратиться к сообществу mitmproxy или специализированным форумам для получения дополнительной помощи.

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

Капча загружается...