I have the password for a wifi connection stored on my computer, using wicd. However, I am wanting to check what the password is but I don't know how to read this when not in reach of this network. I have found the relevant file for this network in /var/lib/wicd/configurations but I can't read the password from there. Within the wicd I can normally view the password in plaintext but only if the network is in the list of available networks. Any suggestions?
1 Answers
Wicd network connection manager store its configurations files under /etc/wicd/
, wifi key password are stored in wireless-settings.conf
but newer version of Wicd does hide the config files.
Used directory are (this may vary from a distro to an other):
/usr/lib/wicd/
for the libraries/usr/share/wicd/
for the shared config/etc/wicd/
for the main config/var/lib/wicd/
$HOME/.wicd/
- etc.
The following part of the code from wicd-daemon.py
do hide the config file (keys etc) by giving them a 0600
permission code which mean that only the owner of the file can read/write the files, root may see the files if the daemon is run as root user otherwise if the daemon is executed as a different user (wicd or else) only that user can see the files...
# Hide the files, so the keys aren't exposed.
print("chmoding configuration files 0600...")
os.chmod(app_conf.get_config(), 0o600)
os.chmod(wireless_conf, 0o600)
os.chmod(wired_conf, 0o600)
os.chmod(dhclient_conf, 0o644)
One solution is to browse the files as root or the user that is running the wicd daemon.
An other possible solution is to emulate the targeted wireless with the access point feature of any smartphone, you would use the same network name (SSID) on the phone as the one you want to recover, then use wicd gui to display the stored password.
Main man: (translated)
/etc/wicd/manager-settings.conf This file contains general Wicd settings. See the man page of this file for more information about it.
/etc/wicd/wired-settings.conf This file contains settings for the fixed interface. See the man page of this file for more information about it.
/etc/wicd/wireless-settings.conf This file contains settings related to the wireless interface. See the man page of this file for more information about it.
/etc/wicd/encryption/templates/ This directory contains various templates for encrypted (WEP, WPA, etc.) connections. If none of them meets your needs, you can make your own and add to this directory. If you do this, take it please contact the makers of Wicd (see below).
/var/lib/wicd/configurations/ This directory contains individual configuration files for each encrypted connection you make with Wicd.
/var/log/wicd/ This directory contains log files of Wicd's activities. Look in the log if you have problems with the connection or with other things.
Wireless-settings.conf man: (translated)
DESCRIPTION
This file contains configuration information for the wireless network interfaces in Wicd.
This file is here: /etc/wicd/wireless-settings.conf
SETTINGS
"bssid =" This value can be found with iwconfig (8).
"essid =" This value can be found with iwconfig (8).
"hidden =" This option sets whether the ESSID of the network is broadcast or not.
"channel =" Good channels depend on the country. This value can be found with iwconfig (8).
"mode =" This value can be found with iwconfig (8).
"enctype =" This can be the value of any encryption template that is in / etc / wicd / encryption / templates /.
"key =" Ensure that this file can only be read by root.
"encryption_method =" WEP | WPA | WPA2> This value can be found with iwconfig (8).
"automatic =" This option sets whether Wicd should connect to this network automatically.
"ip =" Use this option if you have a fixed IP address for your system.
"netmask =" This setting only applies if a fixed IP address is set above.
"broadcast =" This setting only applies if a fixed IP address is set above.
"gateway =" This setting only applies if a fixed IP address is set above.
"use_static_dns =" True = use fixed DNS servers instead of accepting what the dhcp server offers..TP
"use_global_dns =" True = use the global DNS servers that are in wicd-manager-settings.conf (5). This option only applies if "use_static_dns = True"
"dns1 =" Static DNS address as "use_static_dns = True" and "use_global_dns = False"
"dns2 =" Static DNS address as "use_static_dns = True" and "use_global_dns = False"
"dns3 =" Static DNS address as "use_static_dns = True" and "use_global_dns = False"
"use_settings_globally =" <0 | 1> Wicd keeps track of whether a connection should be established automatically based on bssid. This ensures that you do not accidentally connect to another network that is not yours but has the same essid - for example, there are a lot of commercial routers in use with "linksys" as the essid.
0 = Do not use global settings
1 = Use global settings
"beforescript =" This defines a script that must be started before Wicd connects. This script must be a Bourne compatible script and must be executable.
IMPORTANT - scripts must ONLY be writable by root and must be in a directory that is only writable by root.
"afterscript =" This defines a script to be started after Wicd has established a connection. This script must be a Bourne compatible script and must be executable.
IMPORTANT - scripts must ONLY be writable by root and must be in a directory that is only writable by root.
"predisconnectscript =" This defines a script that must be started before Wicd breaks the connection. This script must be a Bourne compatible script and must be executable.
IMPORTANT - scripts must ONLY be writable by root and must be in a directory that is only writable by root.
"postdisconnectscript =" This defines a script to be started after Wicd has disconnected. This script must be a Bourne compatible script and must be executable.
IMPORTANT - scripts must ONLY be writable by root and must be in a directory that is only writable by root.
The "use_settings_globally" option according to how individual networks are configuration stanza starts. If the option is "0" (do not use settings globally), then the stanza's top line will be the bssid of the access point (in this format):
[00: 15: 3E: 87: D3: 68]
If the "option is set to" 1 "(use settings globally), then the first line of the stanza will be in this format:
[essid: UA Public Wireless Network]

- 14,406
wicd
in my Kubuntu and the leftover configuration is still in/etc/wicd/wireless-settings.conf
– including the passphrases I used back then:passphrase
,apsk
andkey
entries. I think the newer documentation mentionskey
only and I don't want to break my current (wicd
-less) config by experimenting now. Maybe something has changed. I think you should check/etc/
anyway. – Kamil Maciorowski Dec 29 '19 at 16:59