Muhomor VPNМухомор VPN
  1. Главная
  2. Справочник VPN
  3. Как это работает
  4. Конфиг WireGuard: разбор .conf строка за строкой

Конфиг WireGuard: разбор .conf строка за строкой

WireGuard конфиг — это текстовый файл .conf из двух секций: [Interface] описывает ваше устройство (приватный ключ, адрес в туннеле, DNS, MTU), [Peer] — сервер (его ключ, Endpoint, AllowedIPs, PersistentKeepalive). Ниже разбор каждой строки с ответом, что менять можно, а что нельзя.

Обновлено 11 сентября 2026 · 10 мин чтения · Как это работает

Из чего состоит конфиг WireGuard

Файл .conf — обычный текст в формате INI: две секции, в каждой несколько строк вида Ключ = Значение. Секция [Interface] описывает ваше устройство: приватный ключ, адрес внутри туннеля, DNS. Секция [Peer] описывает сервер, к которому вы подключаетесь: его публичный ключ, адрес (Endpoint) и список сетей, которые пойдут через туннель (AllowedIPs). В клиентском конфиге почти всегда один [Peer]; на сервере таких секций столько, сколько подключённых устройств.

Типичный клиентский конфиг выглядит так (ключи и адреса вымышленные):

[Interface]
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx…xxxx=
Address = 10.66.0.12/32
DNS = 10.66.0.1
MTU = 1420

[Peer]
PublicKey = yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy…yyyy=
PresharedKey = zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz…zzzz=
Endpoint = 203.0.113.10:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

Десять строк — и это весь протокол с точки зрения пользователя. В WireGuard нет отдельных настроек шифров, режимов и сертификатов: криптография фиксирована, поэтому конфиг такой короткий. Готовый файл от Muhomor VPN импортируется в приложение как есть: на телефоне это «+» → «Импорт из файла или архива» либо «Сканировать QR-код», в Windows — «Импорт туннелей из файла». Править строки не нужно, но понимать их полезно: так проще разобраться, почему соединение не поднялось, и не сломать файл случайной правкой.

[Interface]: параметры вашего устройства

PrivateKey

Приватный ключ устройства — 44 символа в base64, заканчивается знаком «=». Из него математически выводится публичный ключ, который знает сервер. Кто владеет приватным ключом, тот для сервера и есть «вы», поэтому эта строка — единственный настоящий секрет в файле. Менять её бессмысленно: сервер ждёт именно этот ключ.

Address

IP-адрес вашего устройства внутри туннеля, обычно из частного диапазона вида 10.66.0.12/32; рядом может стоять и IPv6-адрес. Это не ваш внешний адрес в интернете, а внутренний номер в виртуальной сети между вами и сервером. Сервер выдаёт каждому устройству свой адрес и принимает пакеты только с него — правка сломает соединение.

DNS

Какие DNS-серверы будет использовать система, пока туннель включён. Обычно это резолвер на стороне VPN-сервера (например, 10.66.0.1): запросы имён идут внутри шифрованного канала, а не к провайдеру. Если удалить строку, устройство продолжит спрашивать DNS провайдера или роутера — появится утечка DNS. В wg-quick сюда можно добавить и поисковые домены, но клиентам это не нужно.

MTU

Максимальный размер пакета в туннеле. WireGuard добавляет к каждому пакету свой заголовок (60 байт поверх IPv4 и 80 поверх IPv6), поэтому в сети с MTU 1500 туннель обычно работает на 1420. Если параметр не указан, приложение подбирает значение само, и в большинстве случаев этого достаточно. Понижать MTU (до 1380 или 1280) имеет смысл, когда в мобильной сети или за домашним роутером сайты открываются наполовину, а мессенджеры не грузят картинки, — подробнее в статье про медленный WireGuard.

ListenPort

UDP-порт, на котором устройство слушает входящие пакеты. Клиенту он не нужен: если строки нет, порт выбирается случайно при каждом запуске, что удобно за NAT. Задают его на серверах и роутерах, где нужен фиксированный порт для проброса.

Table

Параметр wg-quick (Linux и утилиты командной строки), управляющий таблицей маршрутизации: auto — значение по умолчанию, маршруты для AllowedIPs добавляются автоматически; off — маршруты не создаются, вы прописываете их сами; число — маршруты уходят в отдельную таблицу для policy routing. В клиентском конфиге эта строка не нужна, а приложения для Android и iPhone её не понимают и отказываются импортировать файл.

PreUp, PostUp, PreDown, PostDown

Команды, которые wg-quick выполняет до и после поднятия или остановки интерфейса: правила файрвола, свои маршруты, настройка DNS. Работают только в Linux и других системах с wg-quick; в Windows-клиенте выполнение скриптов из конфига по умолчанию отключено, а мобильные приложения файл с такими строками не примут. Переносите конфиг с сервера или роутера на телефон — удалите эти строки.

Отдельно упомянем ExcludedApplications и IncludedApplications — строки, которые понимает только Android-приложение WireGuard: они задают, какие программы ходят мимо туннеля. Это один из способов раздельного туннелирования, о нём — отдельная статья.

[Peer]: сервер, к которому вы подключаетесь

PublicKey

Публичный ключ сервера. По нему ваше устройство проверяет, что отвечает именно этот сервер, а не кто-то посередине. Ключ не секретный, но менять его нельзя: с чужим ключом рукопожатие не пройдёт, и приложение будет бесконечно показывать «подключение» без входящего трафика.

PresharedKey

Необязательный общий симметричный ключ, который подмешивается к криптографии на публичных ключах. Документация WireGuard описывает его как дополнительный слой защиты на случай появления квантовых компьютеров. Ключ одинаков у клиента и сервера, поэтому его нельзя ни менять, ни показывать посторонним.

Endpoint

Адрес сервера в виде хост:порт — IP или доменное имя плюс UDP-порт, часто 51820. Единственная строка, которая говорит, куда физически летят зашифрованные пакеты. Ошибка в одном символе — и туннель не поднимется. Подбирать порт вручную бессмысленно: сервер слушает конкретный, а если у сервиса несколько адресов, он выдаёт их сам.

AllowedIPs

Самая важная строка после ключей. Она работает в обе стороны: WireGuard отправляет в туннель только пакеты, адресованные в перечисленные сети, и принимает от сервера только пакеты с этими адресами в поле источника. Отсюда название механизма — cryptokey routing: маршрутизация привязана к ключу пира.

  • 0.0.0.0/0, ::/0 — весь трафик, IPv4 и IPv6, идёт через туннель. Стандарт для защиты в публичных сетях. Клиенты обрабатывают этот случай особо: wg-quick подменяет маршрут по умолчанию так, чтобы незашифрованные пакеты не ускользали, а в Windows-клиенте появляется флажок kill-switch.
  • Список подсетей, например 10.66.0.0/24, 192.0.2.0/24, — через туннель идут только эти адреса, остальное напрямую. Так настраивают доступ к рабочей сети или выборочное туннелирование.
  • Только 0.0.0.0/0 без ::/0 — весь IPv4 в туннеле, а IPv6 мимо. Если у провайдера есть IPv6, часть сайтов увидит ваш реальный адрес.

PersistentKeepalive

Интервал в секундах, с которым устройство отправляет пустой пакет, чтобы соединение не «засыпало». WireGuard молчит, когда нет данных, а домашние роутеры и мобильные операторы через минуту-другую забывают UDP-сессию за NAT — и первый пакет от сервера в вашу сторону теряется. Значение 25 рекомендовано в документации как работающее с большинством файрволов. Для телефона это компромисс: keepalive немного расходует батарею, зато уведомления и звонки через туннель приходят без задержки. Без строки параметр отключён.

Таблица параметров: что значит и менять ли

ПараметрЧто значитМенять ли
PrivateKeyСекретный ключ устройстваНет. Никому не показывать
AddressАдрес устройства внутри туннеляНет, выдаёт сервер
DNSРезолвер на время работы туннеляНет; удаление ведёт к утечке DNS
MTUРазмер пакета в туннелеМожно понизить при проблемах с загрузкой
ListenPortПорт для входящих пакетовКлиенту не нужен
TableТаблица маршрутизации (wg-quick)Только Linux; на телефоне удалить
PreUp / PostUp / PreDown / PostDownСкрипты при запуске и остановкеТолько Linux; на телефоне удалить
PublicKeyПубличный ключ сервераНет
PresharedKeyДополнительный общий ключНет. Никому не показывать
EndpointАдрес и порт сервераНет, если сервис не выдал другой
AllowedIPsКакие сети идут через туннельОсознанно: сузить для выборочного туннеля
PersistentKeepaliveПериод пустых пакетов за NAT25 оставить; убрать можно на стационарной линии

Правило простое: всё, что связано с ключами и адресами, — зона сервера, трогать не нужно. Разумных правок на стороне клиента две: понизить MTU на капризной сети и сузить AllowedIPs, если вы точно понимаете зачем. Остальное безопаснее решить новым конфигом, чем ручной правкой.

Типичные ошибки при правке конфига

  1. Ключ повреждён при копировании. Потерянный последний «=», лишний пробел или перенос строки внутри ключа — и приложение сообщит о неверном формате. Передавайте файл целиком, а не текст из мессенджера, который мог заменить символы.
  2. Удалён ::/0 из AllowedIPs. Соединение работает, но IPv6-трафик идёт мимо туннеля. Обнаруживается на любом сайте проверки утечек.
  3. Удалена строка DNS. Сайты открываются, но имена резолвит провайдер и видит список доменов, которые вы посещаете.
  4. Конфиг с сервера перенесён на телефон. Строки PostUp, PostDown, Table, SaveConfig приложения для Android и iPhone не принимают и сообщают о неизвестном атрибуте в секции Interface.
  5. MTU выставлен выше, чем позволяет сеть. Значение 1500 внутри туннеля означает фрагментацию: лёгкие страницы открываются, тяжёлые висят. MTU понижают, а не повышают.
  6. Опечатка в Endpoint. Один символ в домене или порту — и рукопожатия нет. Сверяйте с исходным файлом.
  7. Один конфиг на два устройства. Сервер помнит один Endpoint на ключ; когда телефон и ноутбук подключаются одновременно, они по очереди перебивают друг друга и оба теряют связь. Нужен отдельный конфиг на каждое устройство.
  8. Файл отредактирован в текстовом процессоре. Word и «Заметки» подменяют кавычки, добавляют невидимые символы и меняют кодировку. Правьте только в простом текстовом редакторе.

Если после правки туннель не поднимается, быстрее не искать ошибку, а получить исходный конфиг заново: у Muhomor VPN это делается на главной в разделе «Мой доступ» — файл повторно высылается на e-mail или в Telegram. Разбор остальных причин собран в статье «WireGuard не подключается».

Безопасность: приватный ключ и отдельный конфиг на устройство

Конфиг WireGuard — это и есть ваш доступ. Тот, у кого оказался файл или QR-код, подключится к серверу от вашего имени, займёт ваше место среди устройств, а его трафик пойдёт с того же выходного адреса, что и ваш. Относитесь к файлу как к паролю: не пересылайте его в общих чатах, не публикуйте скриншоты с QR-кодом, не храните в заметках, к которым есть доступ у других. Строго говоря, секреты — это PrivateKey и PresharedKey, а PublicKey сервера и Endpoint — нет, но проще считать секретным весь файл.

Второе правило — одно устройство, один конфиг. Так устроен протокол: сервер сопоставляет ключ с одним активным адресом. Muhomor VPN следует этому и выпускает для каждого устройства отдельный конфиг — до пяти устройств на одном доступе: телефон, ноутбук, планшет, роутер, телевизор. Управление в разделе «Устройства» на главной странице: добавить устройство или заменить конфиг. Замена — правильный ответ на любое подозрение, что файл утёк: старый ключ перестаёт действовать, новый есть только у вас.

Наконец, не выкладывайте конфиг целиком, когда просите помощи на форуме. Для диагностики достаточно структуры: секции, AllowedIPs, MTU, наличие строки DNS, а ключи и адреса замените на «xxx». Первоисточник по протоколу — сайт wireguard.com: там опубликованы описание протокола и справка по утилитам wg и wg-quick.

Что делать, если…

  • Статус «подключено», рукопожатие есть, а интернета нет. Смотрите на MTU (понизьте до 1380), на AllowedIPs (не сужен ли список случайно) и на строку DNS: без неё имена не резолвятся, хотя туннель поднят.
  • Рукопожатие не проходит. Сверьте Endpoint посимвольно, убедитесь, что ключи не повреждены и что часы на устройстве не сбиты: сильно неверное время иногда мешает рукопожатию. Помогает и смена сети — некоторые публичные Wi-Fi не пропускают UDP.
  • Дома работает, в мобильной сети рвётся. Проверьте, что есть строка PersistentKeepalive = 25, и попробуйте MTU 1280: операторы нередко режут крупные пакеты.
  • Телефон не принимает файл. Ищите строки PostUp, PostDown, Table, SaveConfig — в клиентском конфиге их нет, зато они есть в серверных и роутерных.
  • Конфиг потерялся. Не восстанавливайте его по памяти: закажите повторную отправку в разделе «Мой доступ» на главной или выпустите новый в разделе «Устройства».

Попробуйте Muhomor VPN — 3 дня бесплатно

WireGuard-конфиг придёт на e-mail за минуту. Без карты и автосписаний, до 5 устройств на одном доступе.

30 дней — 320 ₽60 дней — 610 ₽90 дней — 899 ₽оплата через Robokassa
Получить пробный доступ

Частые вопросы

Что означает AllowedIPs = 0.0.0.0/0, ::/0 в конфиге WireGuard?

Весь трафик устройства — и IPv4, и IPv6 — идёт через туннель. Если оставить только 0.0.0.0/0, IPv6-соединения пойдут напрямую с вашим реальным адресом.

Зачем нужен PersistentKeepalive = 25 и можно ли его убрать?

Пустой пакет каждые 25 секунд не даёт роутеру или оператору забыть UDP-сессию за NAT, иначе входящие данные начнут теряться. На телефоне лучше оставить, на стационарном подключении без NAT можно убрать.

Какой MTU ставить в WireGuard?

По умолчанию клиент подбирает MTU сам, обычно получается 1420. Менять стоит только при проблемах: если сайты открываются наполовину, понизьте до 1380 или 1280.

Можно ли использовать один конфиг WireGuard на двух устройствах?

Нет: сервер сопоставляет один ключ с одним адресом, и два устройства будут выбивать друг друга. Muhomor VPN выдаёт отдельный конфиг на каждое устройство — до пяти на одном доступе.

Почему телефон не импортирует конфиг WireGuard?

Чаще всего в файле есть строки PostUp, PostDown или Table, которые понимает только wg-quick в Linux. Удалите их или запросите клиентский конфиг у сервиса заново.

Что такое Endpoint в WireGuard?

Адрес и UDP-порт сервера в формате хост:порт, куда устройство отправляет зашифрованные пакеты. Менять его вручную не нужно — сервис выдаёт актуальный адрес в конфиге.