Как посмотреть пароль от Wi-Fi на компьютере с Linux: все способы

Забыли пароль от домашнего Wi-Fi, но он сохранён на вашем Linux-ПК? Не спешите сбрасывать роутер или звонить провайдеру. В большинстве дистрибутивов Linux — от Ubuntu и Debian до Arch Linux и Fedora — пароли от беспроводных сетей хранятся в системных файлах и могут быть извлечены даже без прав администратора. Главное — знать, где и как их искать.

В этой статье мы разберём 5 рабочих методов, включая команды для терминала, графические утилиты и ручной поиск в конфигурационных файлах. Вы узнаете, как получить пароль для текущего подключения, просмотреть все сохранённые сети, а также что делать, если система запрашивает sudo, а у вас нет прав суперпользователя. Инструкции актуальны для современных версий NetworkManager, Wicd и connman — самых распространённых менеджеров сетей в Linux.

1. Способ: через графический интерфейс NetworkManager (самый простой)

Если вы используете GNOME, KDE Plasma или другую популярную графическую оболочку, скорее всего, ваша система управляет Wi-Fi через NetworkManager. В этом случае пароль можно посмотреть без терминала — через стандартные настройки.

Откройте меню сетей в правом верхнем углу экрана (значок Wi-Fi) и выполните следующие шаги:

  • 📋 Найдите в списке свою сеть Wi-Fi и кликните по ней правой кнопкой мыши. Выберите пункт Изменить соединение или Edit Connections (в английской версии).
  • 🔑 В открывшемся окне перейдите на вкладку Безопасность Wi-Fi (или Wi-Fi Security).
  • 👁️ Поставьте галочку рядом с Показать пароль (или Show password). Пароль отобразится в поле Ключ.
⚠️ Внимание: В некоторых дистрибутивах (например, Linux Mint с Cinnamon) этот способ может не сработать, если вы не авторизованы как администратор. В таком случае используйте терминальные команды из следующих разделов.

Если пункта Изменить соединение нет в контекстном меню, попробуйте альтернативный путь:

  1. Откройте Настройки системыСеть (или Network).
  2. Найдите свою Wi-Fi сеть в списке и нажмите на шестерёнку настроек.
  3. Перейдите на вкладку Безопасность и активируйте отображение пароля.
📊 Какой дистрибутив Linux вы используете?
Ubuntu/Debian
Arch Linux/Manjaro
Fedora/RHEL
OpenSUSE
Другой

2. Способ: команда nmcli для NetworkManager (универсально)

Утилита nmcli — это консольный интерфейс для NetworkManager, который работает во всех дистрибутивах, где установлен этот менеджер (а это 90% современных Linux-систем). С её помощью можно узнать пароль за одну команду, даже не зная имени сети.

Откройте терминал (Ctrl+Alt+T) и выполните:

nmcli -s -g 802-11-wireless-security.psk device wifi show-password

Если команда не сработала, попробуйте альтернативный вариант (показывает пароль для текущего подключения):

nmcli -g 802-11-wireless-security.psk connection show "$(nmcli -t -f active,ssid dev wifi | grep '^yes' | cut -d':' -f2)"

Расшифровка команды:

  • 🔍 nmcli connection show — отображает информацию о сохранённых подключениях.
  • 📡 802-11-wireless-security.psk — параметр, в котором хранится пароль.
  • 🔄 $(...) — подставляет имя текущей активной сети.
⚠️ Внимание: Если вы увидели сообщение Error: no secrets, значит пароль не сохранён в системе (например, вы подключались через WPS или вводили его вручную при каждом подключении). В этом случае попробуйте метод с файлом /etc/NetworkManager/system-connections/ из раздела 4.

☑️ Подготовка к использованию nmcli

Выполнено: 0 / 4

3. Способ: просмотр всех сохранённых паролей Wi-Fi

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

sudo grep 'psk=' /etc/NetworkManager/system-connections/*

В результате вы получите список файлов с именами сетей и строками вида psk=ваш_пароль. Например:

/etc/NetworkManager/system-connections/MyWiFi.nmconnection:psk=12345678

Чтобы увидеть только пароли (без путей к файлам), добавьте | cut -d'=' -f2:

sudo grep 'psk=' /etc/NetworkManager/system-connections/* | cut -d'=' -f2

Если вы не хотите использовать sudo, можно просмотреть файлы вручную:

  1. Перейдите в папку: cd /etc/NetworkManager/system-connections/
  2. Посмотрите список сетей: ls
  3. Откройте нужный файл (например, nano MyWiFi.nmconnection) и найдите строку psk=.
Команда Что делает Требует sudo?
nmcli -s -g 802-11-wireless-security.psk device wifi show-password Показывает пароль текущей сети Нет
sudo grep 'psk=' /etc/NetworkManager/system-connections/* Выводит все сохранённые пароли Да
cat /etc/NetworkManager/system-connections/MyWiFi.nmconnection Показывает конфиг конкретной сети Нет (если файл доступен)
wpa_passphrase MyWiFi Генерирует хэш пароля (не показывает исходный) Нет

4. Способ: ручной поиск в конфигурационных файлах

Если команды не работают или вы предпочитаете "ручной" подход, пароли Wi-Fi хранятся в текстовых файлах с расширением .nmconnection. Вот как их найти:

  1. Откройте файловый менеджер с правами администратора (например, sudo nautilus в GNOME или sudo dolphin в KDE).
  2. Перейдите в папку /etc/NetworkManager/system-connections/.
  3. Найдите файл с именем вашей сети (например, MyHomeWiFi.nmconnection) и откройте его любым текстовым редактором.
  4. В секции [wi-fi-security] будет строка psk=ваш_пароль.

В некоторых дистрибутивах (например, Fedora с GNOME 40+) пароли могут храниться в зашифрованном виде в /var/lib/NetworkManager/. В этом случае без sudo их прочитать не получится.

Пример содержимого файла .nmconnection:

[connection]

id=MyWiFi

type=wifi

interface-name=wlp3s0

[wifi]

ssid=MyWiFi

[wifi-security]

key-mgmt=wpa-psk

psk=MySuperSecretPassword123

[ipv4]

method=auto

[ipv6]

method=auto

⚠️ Внимание: Не редактируйте эти файлы вручную, если не уверены в формате! Ошибка в синтаксисе может привести к потере подключения. Для изменений используйте nmtui или графический интерфейс NetworkManager.

5. Способ: для дистрибутивов без NetworkManager (Wicd, ConnMan)

Если ваш дистрибутив использует альтернативные менеджеры сетей (например, Wicd в AntiX или ConnMan в Sailfish OS), стандартные команды не сработают. Вот что делать в таких случаях:

Для Wicd:

Пароли хранятся в файле /etc/wicd/wireless-settings.conf. Откройте его:

sudo nano /etc/wicd/wireless-settings.conf

Ищите блоки вида:

[MyWiFi]

encryption = WPA2

key = s:ваш_пароль

Для ConnMan:

Используйте команду:

connmanctl services

Затем подключитесь к сети и запросите настройки:

connmanctl config <имя_сети> --passphrase

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

ps aux | grep -E 'network|wifi|conn'
Что делать, если пароль отображается в виде хэша?

Если вместо пароля вы видите строку вида psk=1234abcd5678..., это значит, что он зашифрован. Восстановить исходный пароль из такого хэша практически невозможно. Однако вы можете:

1. Подключиться к роутеру через Ethernet и поменять пароль в веб-интерфейсе (обычно 192.168.0.1 или 192.168.1.1).

2. Сбросить роутер к заводским настройкам (кнопка Reset на задней панели).

3. Использовать утилиту wpa_passphrase, чтобы сгенерировать новый хэш для известного вам пароля и сравнить его с сохранённым.

6. Способ: если вы не администратор (без sudo)

Что делать, если у вас нет прав sudo, а пароль нужен срочно? Есть несколько обходных путей:

  • 🔄 Попробуйте команду nmcli без sudo — иногда она показывает пароль текущей сети даже без прав администратора:
    nmcli -g 802-11-wireless-security.psk connection show "$(nmcli -t -f active,ssid dev wifi | grep '^yes' | cut -d':' -f2)"
  • 📁 Проверьте, не сохранён ли пароль в ~/.config/ или ~/.local/share/ — некоторые менеджеры (например, KWallet в KDE) хранят данные в пользовательских папках.
  • 🖥️ Если вы подключены к сети через Ethernet, войдите в веб-интерфейс роутера (обычно 192.168.0.1) и посмотрите пароль там. Логин/пароль для входа часто указаны на наклейке роутера.

Если ничего не помогает, остаётся два варианта:

  1. Попросить администратора системы выполнить команду с sudo.
  2. Подключиться к роутеру по кабелю и сбросить пароль Wi-Fi через веб-интерфейс.

Частые ошибки и их решения

При попытке посмотреть пароль вы можете столкнуться с типичными проблемами. Вот как их решить:

Ошибка Причина Решение
Error: no secrets Пароль не сохранён в системе (вводился вручную при каждом подключении). Посмотрите пароль на роутере или сбросьте его.
Permission denied Недостаточно прав для чтения файла. Используйте sudo или попросите администратора.
Файлы в /etc/NetworkManager/ пустые Ваш дистрибутив использует другой менеджер сетей (например, Wicd). Проверьте раздел 5 этой статьи.
nmcli: command not found NetworkManager не установлен. Установите его: sudo apt install network-manager (Debian/Ubuntu) или sudo pacman -S networkmanager (Arch).

Если вы видите сообщение Device 'wlp3s0' is not active, это значит, что Wi-Fi адаптер отключён. Активируйте его командой:

sudo ip link set wlp3s0 up

(Замените wlp3s0 на имя вашего адаптера — посмотрите его командой ip a.)

FAQ: ответы на частые вопросы

Можно ли узнать пароль от Wi-Fi, к которому подключался другой пользователь на этом же ПК?

Да, если у вас есть права sudo. Пароли хранятся в системных файлах (/etc/NetworkManager/), и любой администратор может их просмотреть. Без sudo вы увидите только сети, к которым подключались под своим пользователем.

Я изменил пароль на роутере, но Linux всё равно подключается со старым. Почему?

Это значит, что система сохранила старый пароль в кэше. Обновите его:

  1. Откройте настройки сети и "забудьте" эту сеть.
  2. Подключитесь заново, введя новый пароль.

Или выполните в терминале:

nmcli connection delete "ИмяСети"
Как посмотреть пароль от Wi-Fi на Linux, если я подключаюсь через WPS?

Если вы подключались через WPS (кнопка на роутере), пароль не сохраняется в системе. Вам придётся:

  • Либо войти в веб-интерфейс роутера и посмотреть пароль там.
  • Либо сбросить роутер и настроить его заново.
Работают ли эти методы на Android или Windows?

Нет, эти инструкции только для Linux. Для Windows используйте netsh wlan show profile, а для Android потребуются root-права и файловый менеджер (пароли хранятся в /data/misc/wifi/WifiConfigStore.xml).

Можно ли экспортировать все пароли Wi-Fi в файл для резервной копии?

Да. Скопируйте всю папку с конфигами:

sudo cp -r /etc/NetworkManager/system-connections/ ~/wifi_backup/

Чтобы восстановить позже:

sudo cp -r ~/wifi_backup/* /etc/NetworkManager/system-connections/

sudo chmod 600 /etc/NetworkManager/system-connections/*

sudo systemctl restart NetworkManager