iwd (Magyar)
Az iwd (iNet wireless daemon) egy Intel által írt vezeték nélküli szolgáltatás Linux-alapú operációs rendszerek számára. A projekt alapvető célja az erőforrás‑felhasználás optimalizálása azáltal, hogy nem támaszkodik külső függvénykönyvtárakra, hanem a Linux Kernel által biztosított funkciókat a lehető legnagyobb mértékben használja ki.
Az iwd teljesen önállóan, vagy hálózatkezelő alkalmazások sokaságával is működhet, mint például a ConnMan, a systemd-networkd és a NetworkManager.
Telepítés
Telepítse fel a számítógépre az iwd szoftvercsomagot.
Opcionálisan, feltelepíthetők harmadik féltől származó grafikus felhasználói felülettel rendelkező front-end alkalmazások is, és terminál felhasználói felülettel rendelkező front-end alkalmazások is:
- impala — Az iwd alkalmazás TUI (Terminal User Interface) felülettel rendelkező változata.
- iwdgui — Az iwd alkalmazás GUI (Graphical User Interface) felülettel rendelkező front-end változata.
- iwgtk — Egy GUI felülettel rendelkező iwd front-end változat, amely egy indikátor (tálca) ikont is magába foglal.
- iwmenu — Menüvezérelt kezelőfelület az iwd alkalmazáshoz.
- iwqt — Egy iwd hálózati kisalkalmazás a Linux-alapú operációs rendszerek számára.
Használat
Az iwd szoftvercsomag biztosítja az iwctl kliensprogramot, az iwd szolgáltatást és az iwmon Wi-Fi monitoring programot.
Indítsa el/engedélyezze az iwd.service szolgáltatást annak érdekében, hogy az iwd irányítható legyen az iwctl parancson keresztül, vagy az Ön előnyben részesített iwd front-end kezelőfelületén keresztül.
network vagy a wheel felhasználói csoport tagjai jogosultak az iwd használatára. Az iwctl vagy más front-end kezelőfelületek használatához Önnek valamelyik csoportba fel kell vennie az Ön saját felhasználóját.iwctl
Az interaktív parancssor elérése érdekében a parancssorban futtassa a következő parancsot:
$ iwctl
A fenti parancs futtatása után [iwd]# előtaggal megjelenik az interaktív parancssor.
- A
Tabbillentyű megnyomásával Ön aziwctlparancssorban automatikusan kiegészítheti a parancsokat, eszközneveket és SSID azonosítókat. - Az interaktív parancssorból való kilépés érdekében küldjön EOF jelet a
Ctrl+dbillentyűkombinációval. - Az összes parancs használható parancssori argumentumként is, interaktív parancssor megnyitása nélkül. Például:
iwctl device wlan0 show.
Az összes létező parancs kilistázása érdekében a következő parancsot kell futtatni:
[iwd]# help
Csatlakozás egy hálózathoz
Először, ha Ön nem ismeri a vezeték nélküli eszközének a nevét, akkor listázza ki az összes Wi-Fi eszközt:
[iwd]# device list
Ha az eszköz vagy a hozzá tartozó adapter ki van kapcsolva, akkor kapcsolja azt be:
[iwd]# device Wi‑Fi_interfész_neve set-property Powered on
[iwd]# adapter adapter_neve set-property Powered on
Ezután a Wi-Fi hálózatok keresésének elindítása érdekében (vegye figyelembe, hogy ez a parancs nem fog semmilyen kimenetet adni):
[iwd]# station Wi‑Fi_interfész_neve scan
Ezután Ön kilistázhatja az összes elérhető Wi-Fi hálózatot:
[iwd]# station Wi‑Fi_interfész_neve get-networks
Végül, a Wi-Fi hálózathoz való csatlakozás érdekében futtassa a következő parancsot:
[iwd]# station Wi‑Fi_interfész_neve connect SSID
Ha a hálózat rejtett:
[iwd]# station Wi‑Fi_interfész_neve connect-hidden SSID
Ha szükséges jelszó a kapcsolódáshoz (és az nincs már eltárolva valamelyik profilban, amelyet az iwd automatikusan ellenőriz), akkor Önnek meg kell adnia azt. Alternatívaként megadhatja a jelszót parancssori argumentumként is:
$ iwctl --passphrase jelszó station Wi‑Fi_interfész_neve connect SSID
- Az
iwda/var/lib/iwdkönyvtárban automatikusan eltárolja a Wi-Fi hálózatok jelszavait, és a jövőben ezen eltárolt jelszavak segítségével automatikusan csatlakozik. Rászletek a #Hálózat beállítása című leírásban. - Ha egy hálózat SSID azonosítója szóközt tartalmaz, akkor a hálózat nevét idézőjelek közé kell tenni a csatlakozáskor.
- Az iwd csak 8 és 63 közötti ASCII-karakterből álló PSK jelszavakat támogat. Ha ezek a követelmények nem teljesülnek, akkor a következő hibaüzenet jelenik meg:
PMK generation failed. Ensure Crypto Engine is properly configured.
Csatlakozás egy hálózathoz WPS/WSC használatával
Ha az Ön hálózata úgy van beállítva, hogy egy gomb megnyomásával tud csatlakozni a hálózathoz (részletek a Wikipedia:Wi-Fi Protected Setup Wikipédia leírásban), akkor először ellenőrizze le, hogy az Ön hálózati eszköze is támogatja-e ezt az eljárást.
[iwd]# wsc list
Majd, feltéve, hogy az Ön Wi-Fi eszköze megjelent a fenti listában, futtassa a következő parancsot:
[iwd]# wsc Wi-Fi_interfész_neve push-button
Majd nyomja meg a gombot az routeren. Az eljárás akkor is működik, amikor a gomb korábban, kevesebb mint 2 perccel ezelőtt lett megnyomva.
Ha a hálózat PIN-kód megadását igényli a csatlakozáshoz, akkor ellenőrizze a help parancs kimenetét annak érdekében, hogy megtudja, vajon milyen opciókat kell megadni a wsc parancshoz a megfelelő PIN érvényesítése érdekében.
Lekapcsolódás egy hálózatról
A hálózatról lekapcsolódás érdekében a következő parancsot kell futtatni:
[iwd]# station Wi-Fi_interfész_neve disconnect
Eszközinformációk és kapcsolatinformációk megjelenítése
A Wi-Fi eszköz részleteinek megjelenítése érdekében, például a MAC-cím megjelenítése érdekében, a következő parancsot kell futtatni:
[iwd]# device Wi-Fi_interfész_neve show
A Wi-Fi eszköz kapcsolatállapotának megjelenítése érdekében, beleértve a csatlakoztatott hálózatot is, a következő parancsot kell futtatni:
[iwd]# station Wi-Fi_interfész_neve show
Ismert hálózatok kezelése
A korábban csatlakoztatott hálózatok listájának megjelenítése érdekében a következő parancsot kell futtatni:
[iwd]# known-networks list
Egy ismert hálózat elfelejtése érdekében a következő parancsot kell futtatni:
[iwd]# known-networks SSID forget
iwgtk
Alternatív megoldásként az iwgtkAUR program egy grafikus felületet biztosít, amelyen keresztül vezérelhető az iwd program.
Az iwgtk argumentumok nélküli futtatása megnyitja az alkalmazás ablakát, amelyben az adapterek és eszközök kikapcsolhatók és bekapcsolhatók, üzemmódjuk módosítható, megtekinthetők az elérhető hálózatok, csatlakozni lehet az elérhető hálózatokhoz, valamint kezelhetők az ismert hálózatok.
Tálcaikon
Az iwgtk program tálcaikon szolgáltatásának az elindítása érdekében futtassa a következő parancsot:
$ iwgtk -i
Ha a tálcaikon nem jelenik meg, akkor az Ön operációs rendszerének a tálcája nagy valószínűséggel nem támogatja a StatusNotifierItem API interfészt. Ebben az esetben Önnek futtatnia kell egy kompatibilitási réteget, például a snixembed-gitAUR szoftvercsomagot.
A következő operációsrendszer-tálcák támogatják a StatusNotifierItem API interfészt, ezért, gyárilag azonnal működőképesek:
- KDE Plasma
- swaybar
- lxqt-panel
- xfce4-panel
A következő tálcák egyedül az XEmbed protokollt támogatják, ezért szükséges a snixembed-gitAUR használata:
- AwesomeWM
- i3bar
- stalonetray
Automatikus indítás
Az iwgtk program leggyakoribban úgy van használva, hogy minden alkalommal, amikor Ön bejelentkezik az asztali környezetébe, akkor az iwgtk program elindítja a tálcaikon szolgáltatást. Ha az Ön asztali környezete támogatja az XDG Autostart szabványt, akkor az elindítás automatikusan megtörténik az iwgtk-indicator.desktop fájl révén, amelyet az AUR szoftvercsomag a /etc/xdg/autostart/ könyvtárba helyez el.
Alternatív megoldásként az AUR szoftvercsomag biztosít egy systemd unit-fájlt a tálcaikon szolgáltatás elindítása érdekében. Ha az Ön asztali környezete támogatja a systemd graphical-session.target unit-fájlját, akkor az iwgtk program automatikusan elindítható a systemd segítségével az iwgtk.service user unit-fájl engedélyezése által.
Hálózat beállítása
Alapértelmezés szerint az iwd program a hálózati beállítást a /var/lib/iwd könyvtárban tárolja. A beállításfájl neve hálózat.típus, ahol a hálózat a hálózat SSID azonosítója, a .típus pedig a hálózat típusa, amely lehet .open, .psk vagy .8021x. A fájl a PreSharedKey titkosított formáját, valamint opcionálisan a Passphrase szöveges változatát tárolja, és a felhasználó is létrehozhatja az iwctl használata nélkül. A fájl az adott hálózat SSID azonosítójához tartozó egyéb beállítások tárolására is használható. További beállításokért tekintse meg az iwd.network(5) man súgót.
WPA-PSK
Egy minimális példafájl arra vonatkozóan, hogy miként lehet egy WPA-PSK vagy WPA2-PSK biztonságú hálózatra felcsatlakozni, amely hálózatnak az SSID azonosítója "spaceship" és a hálózat jelszava "test1234":
/var/lib/iwd/spaceship.psk
[Security] PreSharedKey=aafb192ce2da24d8c7805c956136f45dd612103f086034c402ed266355297295
- _ jelek egyikét tartalmazza. Ha az név bármilyen más karaktert tartalmaz, akkor a név helyett egy = karakterrel kezdődő, hexadecimálisan kódolt (kisbetűs hexadecimális számokkal) SSID-verziót kell használni.A jelszóból történő megosztott kulcs (pre-shared key) kiszámítása érdekében az alábbi kettő módszer egyikét lehet használni:
- Írja be a jelszót ember által olvasható szöveg formájában a beállításfájlba:
/var/lib/iwd/spaceship.psk
[Security] Passphrase=test1234
- A megosztott kulcs (pre-shared key) az első hálózatra történő csatlakozáskor kerül hozzáfűzésre a fájlhoz:
/var/lib/iwd/spaceship.psk
[Security] Passphrase=test1234 PreSharedKey=aafb192ce2da24d8c7805c956136f45dd612103f086034c402ed266355297295
- Vagy a megosztott kulcs (pre-shared key) kiszámítható az SSID azonosító és a jelszó alapján a wpa_passphrase (a wpa_supplicant szoftvercsomagból) vagy a wpa-pskAUR segítségével. További részletekért tekintse meg a wpa_supplicant#Connecting with wpa_passphrase című leírást.
WPA Enterprise
EAP-PWD
Egy EAP-PWD védelemmel ellátott vállalati hozzáférési ponthoz való csatlakozás érdekében a /var/lib/iwd könyvtárban az alábbi tartalommal Önnek létre kell hoznia egy essid.8021x nevű fájlt:
/var/lib/iwd/essid.8021x
[Security] EAP-Method=PWD EAP-Identity=az_Ön_enterprise_email_címe_ide_kerül EAP-Password=az_Ön_jelszava_ide_kerül [Settings] AutoConnect=true
Amennyiben Ön nem szeretné, hogy a hozzáférési ponthoz automatikusan csatlakozzon, akkor beállíthatja az AutoConnect opciót False értékre, és manuális úton, kézzel csatlakozhat a hozzáférési ponthoz az iwctl program segítségével. Ugyanez vonatkozik a jelszóra is: Ha nem szeretné azt olvasható formában tárolni, akkor hagyja ki az opciót a fájlból, és egyszerűen csatlakozzon a vállalati hozzáférési ponthoz.
AutoConnect=false opciót.EAP-PEAP
Mint az EAP-PWD esetében, Önnek létre kell hoznia egy essid.8021x fájlt a fent említett könyvtárban. Mielőtt elkezdené a beállításfájl megírását, ez egy jó alkalom arra, hogy megtudja, vajon melyik CA tanúsítványt használja az Ön szervezete. Íme egy példa a beállításfájlra, amely MSCHAPv2 jelszóalapú hitelesítést használ:
/var/lib/iwd/essid.8021x
[Security] EAP-Method=PEAP EAP-Identity=anonymous@realm.edu EAP-PEAP-CACert=/path/to/root.crt EAP-PEAP-ServerDomainMask=radius.realm.edu EAP-PEAP-Phase2-Method=MSCHAPV2 EAP-PEAP-Phase2-Identity=johndoe@realm.edu EAP-PEAP-Phase2-Password=hunter2 [Settings] AutoConnect=true
Az MsCHAPv2 jelszavakat titkosított hash formájában is tárolni lehet. A megfelelő md4 hash kiszámítóható a következő módon:
$ iconv -t utf16le | openssl md4 -provider legacy
A jelszó beírása után helyezzen el egy EOF jelet a Ctrl+d billentyűkombináció megnyomásával, de ne nyomja meg az Enter billentyűt. Az így kapott hash értéket az EAP-PEAP-Phase2-Password-Hash kulcsban kell tárolni.
TTLS-PAP
Mint az EAP-PWD esetében, Önnek létre kell hoznia egy essid.8021x fájlt a fent említett könyvtárban. Mielőtt elkezdené a beállításfájl megírását, ez egy jó alkalom arra, hogy megtudja, vajon melyik CA tanúsítványt használja az Ön szervezete. Íme egy példa a beállításfájlra, amely PAP jelszóalapú hitelesítést használ:
/var/lib/iwd/essid.8021x
[Security] EAP-Method=TTLS EAP-Identity=anonymous@uni-beispiel.de EAP-TTLS-CACert=cert.pem EAP-TTLS-ServerDomainMask=*.uni-beispiel.de EAP-TTLS-Phase2-Method=Tunneled-PAP EAP-TTLS-Phase2-Identity=user EAP-TTLS-Phase2-Password=password [Settings] AutoConnect=true
EAP-TLS
Az EAP-TLS x509 ügyféltanúsítványokat használ az Ön hitelesítésére. Az ssh kulcsokhoz hasonlóan ezek a ügyféltanúsítványok nyilvános kulcsú kriptográfiát alkalmaznak, így a Wi-Fi hitelesítési szervernek soha nem kell titkot kapnia, és Önnek sem kell jelszót másolnia és újra felhasználnia az eszközök között. Általában minden eszköz külön tanúsítványt használ, amelyet (legalábbis elméletben) vissza lehet vonni anélkül, hogy Önnek jelszót kellene változtatnia vagy más eszközeit megzavarnia.
Ahogy a többi vállalati módszernél, Önnek itt is szükséges ismernie a szervezete által használt CA tanúsítványt (cacert.pem), amely arra szolgál, hogy az Ön eszköze számára bizonyítsa, hogy tényleg a megfelelő helyhez csatlakozik. Önnek szüksége van továbbá az ügyfél tanúsítványra, amely Önt képviseli, és minden kapcsolódáskor feltöltésre kerül (client-cert.pem), valamint Önnek szüksége van a hozzá tartozó privát kulcsra (client-key.pem), amely igazolja, hogy Ön valóban birtokolja az adott ügyféltanúsítványt.
Ön megadhatja a szükséges tanúsítvány elérési útvonalát, vagy beágyazhatja a tanúsítványt az Ön beállításába.
Miután összegyűjtötte a hitelesítő adatokat, helyezze el a következő lenti sorokat a /var/lib/iwd/essid.8021x fájlba:
/var/lib/iwd/essid.8021x
[Security] EAP-Method=TLS EAP-TLS-CACert=/path/to/cacert.pem EAP-Identity=your_enterprise_email EAP-TLS-ClientCert=/path/to/client-cert.pem EAP-TLS-ClientKey=/path/to/client-key.pem #EAP-TLS-ClientKeyPassphrase=key-passphrase # Ha a client-key.pem fájl titkosítva van, akkor adja meg a fájlhoz tartozó jelszót. [Settings] AutoConnect=true
eduroam
Az egyik lehetséges módszer az iwd program segítségével történő az eduroam Wi-Fi hozzáférési szolgáltatáshoz való felcsatlakozásra itt található. Hozza létre a következő fájlt, és töltse ki a szükséges értékeket:
/var/lib/iwd/eduroam.8021x
[Security] EAP-Method=PEAP EAP-Identity=anonymous@university.domain EAP-PEAP-Phase2-Method=MSCHAPV2 EAP-PEAP-Phase2-Identity=username@university.domain EAP-PEAP-Phase2-Password=password [Settings] AutoConnect=true
Ha a fenti megoldás nem működik, akkor az eduroam kínál egy beállítást segítő segédprogramot (CAT). Ha az Ön szervezete rendelkezik profillal a CAT-ben, akkor az eduroam szolgáltatáshoz való csatlakozás elérhető a Linux szkript letöltésével és annak futtatásával python segítségével. Ha az Ön szervezete nem támogatja a CAT-et, akkor manuális úton, kézzel kell létrehoznia a beállításfájlt az adminisztrátorok által megadott paraméterek felhasználásával (az alábbi táblázat hasznos lehet ebben). Lehetséges a szükséges beállítások kinyerése a generált beállításból, beleértve a tanúsítványt és a szerver domain maszkot. Emellett néhány intézmény áttér az EAP-TLS hitelesítési protokollra, és kiszervezi a client-cert.pem létrehozását a SecureW2 számára, amely esetben az ő programjukat is használnia kell a klienstanúsítvány létrehozásához.
A következő táblázat az iwd beállítási opciók és az eduroam CAT telepítési szkriptváltozók közötti megfeleltetést tartalmazza.
| Iwd beállítási opció | CAT szkriptváltozó |
|---|---|
| essid | A Config.ssids egyike.
|
EAP-Method |
Config.eap_outer
|
EAP-Identity |
Config.anonymous_identity
|
EAP-method-CACert |
A Config.CA tartalma, egy abszolút elérési út egy .pem fájlhoz, amely tartalmazza a Config.CA fájlt, vagy egy beágyazott tanúsítvány.
|
EAP-method-ServerDomainMask |
A Config.servers egyike.
|
EAP-method-Phase2-Method |
Config.eap_inner, kivéve ha értéke PAP, ebben az esetben helyette a Tunneled-PAP használatos.
|
EAP-method-Phase2-Identity |
username@Config.user_realm
|
Ahol a method az EAP-Method tartalma, és értéke TLS, TTLS vagy PEAP lehet. Miután Ön minden szükséges információt kinyert és átalakított az iwd beállítás megfelelőjére, azokat Ön elhelyezheti egy essid.8021x nevű beállításfájlban, ahogyan azt az előző módszerekben leírtuk.
- Az
EAP-Identitymezőt lehet, hogy az Ön eduroam szolgáltatója nem igényli. Ebben az esetben ebben a mezőben Önnek azanonymous@Config.user_realmértéket kell használnia. - Ha az Ön
EAP-method-ServerDomainMaskértékeDNS:előtaggal kezdődik, akkor Ön egyedül az előtag utáni részt használja.
Egyéb esetek
További például szolgáló tesztesetek találhatók meg a tesztesetek között az upstream kódtárolójában.
Beágyazott tanúsítványok
A PEM fájl (tanúsítványok és kulcsok) abszolút elérési útvonalának megadása helyett maga a PEM közvetlenül beilleszthető a hálózati beállításfájlba.
Beágyazott PEM bárhol megjelenhet a beállításfájlban a következő formátum használatával:
[@pem@my_ca_cert] ----- BEGIN CERTIFICATE ----- PEM data ----- END CERTIFICATE -----
Ahol a my_ca_cert bármilyen név lehet, amely nevet Ön a tanúsítvány azonosítására használhat a beállításfájlban.
Ezután, az érték elé beillesztve az embed: előtagot, a beágyazott tanúsítvány bárhol használható a beállításfájlban, ahol tanúsítvány elérési útvonal szükséges.
EAP-TTLS-CACert=embed:my_ca_cert
Ez a beillesztési módszer nem korlátozódik kizárólag a CA tanúsítványokra. Ügyféltanúsítványok, ügyfélkulcsok (titkosítottak vagy nem titkosítottak), valamint tanúsítványláncok is beilleszthetők.
WPA titkosítási protocol a vezetékes ethernet kapcsolaton keresztül
Vezetékes ethernet kapcsolaton keresztül történő WPA titkosítási protocol használata érdekében hozzon létre egy beállításfájl a fentiek szerint,
de helyezze a fájlt a /var/lib/ead könyvtárba.
Ezután, indítsa el/engedélyezze az ead.service szolgáltatást.
Opcionális beállítás
A fő beállításhoz használható a /etc/iwd/main.conf fájl. Tekintse meg az iwd.config(5) man súgót.
Egy adott hálózat automatikus úton történő felcsatlakozásának a letiltása
Hozza létre vagy szerkessze a már meglévő /var/lib/iwd/network.type fájl. Adja hozzá a következő szakaszt:
/var/lib/iwd/spaceship.psk (például)
[Settings] AutoConnect=false
Elérhető hálózatok időszakos keresésének a letiltása
Alapértelmezés szerint, amikor az iwd program bontott hálózati kapcsolat állapotban van, akkor időszakosan elérhető hálózatokat szokott keresni. Az időszakos keresés letiltása érdekében (annak érdekében, hogy mindig manuális úton, kézzel történjen a hálózatkeresés), hozza létre / szerkessze a /etc/iwd/main.conf fájlt, és adja hozzá a következő szakaszt:
/etc/iwd/main.conf
[Scan] DisablePeriodicScan=true
Beépített hálózati beállítás engedélyezése
A 0.19 programverziótól kezdve az iwd a beépített DHCP kliensprogrammal vagy statikus beállítással képes IP-cím(ek) kiosztására és útvonalak beállítására. Ez jó alternatívája az önálló DHCP kliensprogramoknak.
Az iwd program hálózati beállításfunkciójának aktiválása érdekében hozza létre / szerkessze a /etc/iwd/main.conf fájlt, és adja hozzá a következő szakaszt:
/etc/iwd/main.conf
[General] EnableNetworkConfiguration=true
Lehetőség van az útvonal metrikájának beállítására a RoutePriorityOffset használatával:
/etc/iwd/main.conf
[Network] RoutePriorityOffset=300
IPv6 támogatás
Az 1.10 verziótól kezdve az iwd program támogatja az IPv6 protokollt, de alapértelmezés szerint az IPv6 protokoll le van tiltva a 2.0 alatti iwd programverziókban. A 2.0 programverziótól kezdve engedélyezve van alapértelmezés szerint.
Az IPv6 protokoll letiltása érdekében adja hozzá a következő sorokat a beállításfájlhoz:
/etc/iwd/main.conf
[Network] EnableIPv6=false
Az 1.10 és 2.0 közötti iwd programverziókban az IPv6 protokoll engedélyezése érdekében:
/etc/iwd/main.conf
[Network] EnableIPv6=true
Ez a beállítás szükséges ahhoz, hogy Ön akár DHCPv6 protokollt, akár statikus IPv6 beállítást kívánjon használni. Hálózatonként külön is beállítható.
Statikus IP-cím beállítása a hálózat beállításfájlban
Adja hozzá a következő szakaszt a /var/lib/iwd/network.type fájlhoz. Például:
/var/lib/iwd/spaceship.psk
[IPv4] Address=192.168.1.10 Netmask=255.255.255.0 Gateway=192.168.1.1 Broadcast=192.168.1.255 DNS=192.168.1.1
DNS-kezelő kiválasztása
Jelenleg az iwd kettő DNS-kezelőt támogat (systemd-resolved és resolvconf).
A systemd-resolved esetében, adja hozzá a következő szakaszt a /etc/iwd/main.conf fájlhoz:
/etc/iwd/main.conf
[Network] NameResolvingService=systemd
A resolvconf esetében, adja hozzá a következő szakaszt a /etc/iwd/main.conf fájlhoz:
/etc/iwd/main.conf
[Network] NameResolvingService=resolvconf
Annak engedélyezése, hogy bármely felhasználó olvashassa az állapotinformációkat
Ha azt szeretné, hogy bármely felhasználó olvashassa az állapotinformációkat, de bármely felhasználó ne módosíthassa a beállításokat, akkor Ön létrehozhatja a következő D-Bus beállításfájlt:
/etc/dbus-1/system.d/iwd-allow-read.conf
<!-- Allow any user to read iwd status information. Overrides some part
of /usr/share/dbus-1/system.d/iwd-dbus.conf. -->
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy context="default">
<deny send_destination="net.connman.iwd"/>
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.Properties" send_member="GetAll" />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.Properties" send_member="Get" />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.ObjectManager" send_member="GetManagedObjects" />
<allow send_destination="net.connman.iwd" send_interface="net.connman.iwd.Device" send_member="RegisterSignalLevelAgent" />
<allow send_destination="net.connman.iwd" send_interface="net.connman.iwd.Device" send_member="UnregisterSignalLevelAgent" />
</policy>
</busconfig>
Titkosított hálózati profilok
Alapértelmezés szerint az iwd titkosítatlanul tárolja a hálózati hitelesítő adatokat a rendszeren. Az 1.25 programverziótól kezdve az iwd kísérleti támogatást nyújt titkosított profilok létrehozásához a systemd programot használó operációs rendszerek számára.
Először hozzon létre egy titkosított hitelesítő adatot. Az alábbi példa a systemd-creds használatával létrehoz egy iwd-secret nevű titkosított hitelesítő adatot, amely a rendszer Trusted Platform Module moduljához van kötve, és amely modult a titkosított profilok létrehozásához fognak használni a felhasználók:
# systemd-ask-password -n | systemd-creds --tpm2-device=auto --name=iwd-secret encrypt - /etc/credstore.encrypted/iwd-secret.cred
Ezután adja hozzá a LoadCredentialEncrypted opciót az iwd szolgáltatáshoz egy létrehozott beilleszthető kódrészletfájl segítségével.
/etc/systemd/system/iwd.service.d/use-creds.conf
[Service] LoadCredentialEncrypted=iwd-secret:/etc/credstore.encrypted/iwd-secret.cred
Végül, adja hozzá a SystemdEncrypt opciót az iwd beállításfájlhoz, ahol az érték a megnevezett hitelesítő adat lesz. Ezután töltse újra a systemd kezelőt, és indítsa újra az iwd szolgáltatást.
/etc/iwd/main.conf
[General] ... SystemdEncrypt=iwd-secret
- A rendszerben jelenleg található profilok automatikusan titkosítva lesznek. Ezen a ponton nincs szükség további lépésekre, és minden jövőbeni profil is automatikusan titkosítva lesz.
- A fenti példában a titkosított hitelesítőadat implicit módon a TPM PCR 7-hez van kötve. Ezért, ha a biztonságos bootolás állapota vagy a firmware tanúsítványai megváltoznak, akkor az adott bootolási munkamenetben nem lesz lehetséges hálózatokhoz csatlakozni.
Hibaelhárítás
Részletes TLS hibakeresés
A részletes TLS hibakeresés hasznos lehet, amikor Önnek problémája van az MSCHAPv2 vagy a TTLS beállításával. Az alábbi környezeti változó beállítható egy beilleszthető kódrészletfájl segítségével:
/etc/systemd/system/iwd.service.d/tls-debug.conf
[Service] Environment=IWD_TLS_DEBUG=TRUE
Később a journalctl -u iwd.service parancsot root felhasználói jogosultsággal futtatva ellenőrizze le az iwd program naplóit.
Bootolás után az iwd.service újraindítása
A felhasználók néhány számítógépen arról számoltak be, hogy a bootolást követően az iwd.service újraindítása szükséges a működés érdekében. Részletek az FS#63912 hibajelentésben és a 251432-es fórumszálban. Az újraindítás szükségessége valószínűleg azért fordul elő, mert az iwd hamarabb indul el, mint ahogy a vezeték nélküli hálózati kártya bekapcsolna.
Kerülő megoldás gyanánt a systemctl list-units --type=device | grep wlan0 paranccsal keresse meg azt az unit-fájlt, amelyre várni kell, majd bővítse az unit-fájlt a következő sorok szerint:
/etc/systemd/system/iwd.service.d/override.conf
[Unit] After=sys-XXXX-net-wlan0.device Wants=sys-XXXX-net-wlan0.device
Ezután, töltse be újra a systemd manager beállítását.
Ha a fenti megoldás nem működik, akkor próbálja meg a következőt is:
[Service] ExecStartPre=ip link set wlan0 up
Nem nevezi át az udev a vezeték nélküli hálózati eszközt
Az 1.0 verziótól kezdve az iwd program letiltja a hálózati interfész átnevezését kiszámítható hálózati interfésznevekre. Az iwd program telepíti a következő systemd.link(5) beállításfájlt, amely fájl megakadályozza, hogy az udev átnevezze az interfészt egy kiszámítható, stabil névre (például wlp#s#):
/usr/lib/systemd/network/80-iwd.link
[Match] Type=wlan [Link] NamePolicy=keep kernel
Ennek eredményeként a vezeték nélküli kapcsolat wlan# neve megmarad a bootolás után. Ez megoldotta az iwd és az udev közötti versenyhelyzetet az interfész átnevezésében, ahogyan azt az iwd udev interfész átnevezés című leírás magyarázza.
Ha a fenti megoldás problémát okoz, akkor próbálja meg elmaszkolni a szóban forgó beállításfájlt a következő parancs futtatásával:
# ln -s /dev/null /etc/systemd/network/80-iwd.link
Nincs DHCP AP módban
Előfordulhat az a helyzet, hogy a kliensprogramok nem kapnak IP-címet DHCP protokollon keresztül, amikor az iwd programhoz csatlakoznak AP módban. Ezért a kezelt interfészeken engedélyezni szükséges az iwd által történő hálózati beállítást:
/etc/iwd/main.conf
[General] EnableNetworkConfiguration=True
Ha még nem létezik a fent említett fájl, akkor létre kell azt hozni.
Folyamatosan bontja a hálózati kapcsolatot a Wi-Fi az iwd program összeomlása miatt
Wi-Fi használatakor néhány felhasználó kapcsolatmegszakadásokat tapasztal: Az operációs rendszer folyamatosan újracsatlakozik, de végül stabilizálódik a helyzet és sikerül a hálózatra történő csatlakozás.
A felhasználók összeomlásokat jelentettek (ebben a leírásban) az iwd.service esetében a journal naplóban.
A fő probléma az, hogy több, egymással ütköző szolgáltatás kezeli a hálózati kapcsolatokat. Ellenőrizze le, hogy ne legyenek egyszerre engedélyezve a szolgáltatások, így a probléma megoldható.
Hiba a kliensprogram privát kulcsának betöltésekor
Az iwd program a kulcsfájlok betöltése érdekében igényli a pkcs8_key_parser kernelmodult. Bootoláskor ezt a systemd-modules-load.service(8) tölti be a /usr/lib/modules-load.d/pkcs8.conf használatával, de a betöltés nem történik meg, amennyiben az iwd most lett telepítve.
Ha olyan üzenetek jelennek meg a naplóban, mint például az Error loading client private key /útvonal/a/kulcshoz, amikor WPA Enterprise hálózatokhoz próbál csatlakozni, akkor manuális úton, kézzel töltse be a modult:
# modprobe pkcs8_key_parser
Folyamatosan átbarangol más ismert hozzáférési pontokra az iwd program
Ha a hálózati kapcsolat túl gyenge, akkor az iwd program más, ismert hozzáférési pontokra (AP) vált át.
Ez a rendszernaplóban wlan0: deauthenticating from xx:xx:xx:xx:xx:xx by local choice (Reason: 3=DEAUTH_LEAVING) formában jelenik meg.
A kapcsolat jelerősségét megtekintheti a következő parancs futtatásával:
iwctl station wlan0 show | grep RSSI
Ön megnövelheti a küszöbértéket annak érdekében, hogy ezáltal gyengébb hálózati kapcsolatot is engedélyezzen. Alapértelmezés szerint a RoamThreshold -70, míg a RoamThreshold5G -76.
/etc/iwd/main.conf
[General] RoamThreshold=-75 RoamThreshold5G=-80
Nem kerül elküldésre a gépnév a DHCP kérésben
Állítsa be a SendHostname értéket a hálózat beállításfájljában. Nem a /etc/iwd/main.conf fájlban kell ezt megtenni.
/var/lib/iwd/SomeNetwork.psk
... [IPv4] SendHostname=true
/etc/resolv.conf: Read-only file system
Amikor a resolvconf DNS feloldási módszer van használatban, akkor előfordulhat, hogy problémát okoz a /etc/resolv.conf fájlba való írás, és a rendszer csak olvasható fájlrendszerre panaszkodik:
$ journalctl -u iwd.service
Jun 14 14:08:12 host iwd[1170270]: event: state, old: disconnected, new: autoconnect_quick Jun 14 14:08:12 host iwd[1170270]: udev interface=wlan0 ifindex=6 Jun 14 14:08:13 host iwd[1170270]: event: connect-info, ssid: <redacted>, bss: <redacted>, signal: -63, load: 0/255 Jun 14 14:08:13 host iwd[1170270]: event: state, old: autoconnect_quick, new: connecting (auto) Jun 14 14:08:13 host iwd[1170270]: event: state, old: connecting (auto), new: connecting (netconfig) Jun 14 14:08:14 host iwd[1170315]: cp: cannot create regular file '/etc/resolv.conf.bak': Read-only file system Jun 14 14:08:14 host iwd[1170316]: /usr/lib/resolvconf/libc: line 257: /etc/resolv.conf: Read-only file system Jun 14 14:08:16 host iwd[1170366]: cp: cannot create regular file '/etc/resolv.conf.bak': Read-only file system Jun 14 14:08:16 host iwd[1170367]: /usr/lib/resolvconf/libc: line 257: /etc/resolv.conf: Read-only file system Jun 14 14:08:16 host iwd[1170270]: event: state, old: connecting (netconfig), new: connected
A probléma megoldása érdekében bővítse az iwd.service systemd unit-fájl beállítását egy beilleszthető kódrészletfájl hozzáadásával:
/etc/systemd/system/iwd.service.d/50-resolvconf.conf
[Service] RuntimeDirectory=resolvconf ReadWritePaths=/etc/resolv.conf
A fenti bővítés lehetővé teszi, hogy az iwd.service system unit-fájl frissítse a /etc/resolv.conf fájlt. A változtatás érvénybelépése érdekében indítsa újra az iwd.service szolgáltatást.
További olvasnivaló a témában
- Getting Started with iwd
- Network Configuration Settings
- More Examples for WPA Enterprise
- The IWD thread on the Arch Linux Forums
- 2017 Update on new WiFi daemon for Linux by Marcel Holtmann - YouTube
- The New Wi-Fi Experience for Linux - Marcel Holtmann, Intel - YouTube
- How to set up a simple access point with iwd