wpa_supplicant 介紹 (譯文)

網址:
http://www.linuxfromscratch.org/blfs/view/svn/basicnet/wpa_supplicant.html

  • WPA Supplicant 的介紹
    WPA Supplicant 是一個WPA(WiFi Protected Access)和IEEE 802.1x客戶端。它使用WPA加密協議和可擴展加密協議(EAP)的密匙通過加密服務的認證。另外,它控制無線網卡的漫遊和IEEE 802.11 認證/協會。這對於受密碼保護 的無線接入點是非常有效的。
    這個軟件包已經在LES-7.9平臺下建立和正常工作的
  • 軟件包的信息:
Download (HTTP): http://hostap.epitest.fi/releases/wpa_supplicant-2.5.tar.gz
Download MD5 sum: 96ff75c3a514f1f324560a2376f13110
Download size: 2.5 MB
Estimated disk space required: 31 MB
Estimated build time: 0.4 SBU (includes optional gui)
[*] Networking support  --->                              [CONFIG_NET]
  [*] Wireless  --->                                      [CONFIG_WIRELESS]
    <*/M> cfg80211 - wireless configuration API           [CONFIG_CFG80211]
    [*]     cfg80211 wireless extensions compatibility    [CONFIG_CFG80211_WEXT]
    <*/M> Generic IEEE 802.11 Networking Stack (mac80211) [CONFIG_MAC80211]
Device Drivers  --->
  [*] Network device support  --->                        [CONFIG_NETDEVICES]
    [*] Wireless LAN  --->                                [CONFIG_WLAN]

打開子菜單並且選擇支持你的硬件的選項,使用命令lspci或者lsusb (在[pciutils-3.4.1]下載(http://www.linuxfromscratch.org/blfs/view/svn/general/pciutils.html))可以查看你的硬件配置

  • WPA Supplicant 的安裝
    首先需要創建一個初始化配置文件,你可以閱讀可用的選項說明文檔 wpa_supplicant/README和 wpa_supplicant/defconfig 。創建一個可以通過下列命令設置WiFi的配置文件:
cat > wpa_supplicant.config << "EOF"
CONFIG_BACKEND=file
CONFIG_CTRL_IFACE=y
CONFIG_DEBUG_FILE=y
CONFIG_DEBUG_SYSLOG=y
CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
CONFIG_DRIVER_NL80211=y
CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_WIRED=y
CONFIG_EAP_GTC=y
CONFIG_EAP_LEAP=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_OTP=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TLS=y
CONFIG_EAP_TTLS=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_IPV6=y
CONFIG_LIBNL32=y
CONFIG_PEERKEY=y
CONFIG_PKCS12=y
CONFIG_READLINE=y
CONFIG_SMARTCARD=y
CONFIG_WPS=y
CFLAGS += -I/usr/include/libnl3
EOF

如果你希望使用WPA Supplicant 的NetworkManager-1.2.0 確保你已經安裝了D-Bus-1.10.8 and libxml2-2.9.3,然後通過以下命令添加相應的選項進入WPA Supplicant 的構建配置文件中:

cat >> wpa_supplicant/.config << "EOF"
CONFIG_CTRL_IFACE_DBUS=y
CONFIG_CTRL_IFACE_DBUS_NEW=y
CONFIG_CTRL_IFACE_DBUS_INTRO=y
EOF

通過運行以下命令安裝WPA Supplicant

cd wpa_supplicant &&
make BINDIR=/sbin LIBDIR=/lib

如果你已經安裝了Qt-4.8.7並且希望構建一個WPA Supplicant 的GUI 程序,運行以下命令:

pushd wpa_gui-qt4 &&
qmake wpa_gui.pro &&
make &&
popd

這個軟件包沒有附帶一個測試套件。
現在,取得root權限:

install -v -m755 wpa_{cli,passphrase,supplicant} /sbin/ &&
install -v -m644 doc/docbook/wpa_supplicant.conf.5 /usr/share/man/man5/ &&
install -v -m644 doc/docbook/wpa_{cli,passphrase,supplicant}.8 /usr/share/man/man8/

如果你已經構建一個支持D-bus的WPA Supplicant 你將需要安裝D-bus的配置文件,取得root權限後通過下列命令安裝他們:

install -v -m644 dbus/fi.{epitest.hostap.WPASupplicant,w1.wpa_supplicant1}.service \
                 /usr/share/dbus-1/system-services/ &&
install -v -m644 dbus/dbus-wpa_supplicant.conf \
                 /etc/dbus-1/system.d/wpa_supplicant.conf

如果你已經構建一個GUI 的WPA Supplicant 程序,取得root權限後通過以下命令安裝它:

install -v -m755 wpa_gui-qt4/wpa_gui /usr/bin/ &&
install -v -m644 doc/docbook/wpa_gui.8 /usr/share/man/man8/ &&
install -v -m644 wpa_gui-qt4/wpa_gui.desktop /usr/share/applications/ &&
install -v -m644 wpa_gui-qt4/icons/wpa_gui.svg /usr/share/pixmaps/

Note
在你使用WPA Supplicant D-Bus 接口前需要重啓系統D-Bus 守護進程
Note
該軟件安裝在桌面文件系統中的 /usr/share/applications .你可以通過更新/usr/share/applications/mimeinfo.cache來提高系統性能和內存使用率。執行更新前需要安裝 desktop-file-utils-0.22 並且在取得root權限後執行以下命令:

update-desktop-database
  • 配置 wpa_supplicant
    配置文件位置:
    /etc/sysconfig/wpa_supplicant-*.conf

  • 配置信息
    使用密碼連接一個接入點時需要將預先共享的密碼插入到/etc/sysconfig/wpa_supplicant-wifi0.conf中,其中的“SSID”是接入點或路由發射者的ID字符串,取得root權限後執行下列命令:

wpa_passphrase SSID SECRET_PASSWORD > /etc/sysconfig/wpa_supplicant-wifi0.conf

/etc/sysconfig/wpa_supplicant-wifi0.conf 可以掌握接入點服務器的細節信息。當wpa_supplicant開啓時,它將會掃描這些可見的SSID並且選擇正確的密碼連接。
如果你想要連接一個沒有密碼保護的接入點,插入以下的實體到/etc/sysconfig/wpa_supplicant-wifi0.conf,將“Some-SSID”取代爲你將要接入的接入點ID。

network={
  ssid="Some-SSID"
  key_mgmt=NONE
}

有很多調整如何連接每個接入點的選項,在wpa_supplicant/wpa_supplicant.conf文件的源碼樹中有詳細的描述。

  • 連接上一個接入點
    如果你想在開機時使用wpa_supplicant配置網絡接口,你需要安裝腳本 /lib/services/wpa (在 blfs-bootscripts-20160415 軟件包中)
make install-service-wpa

如果你的路由服務器或者接入點(AP)使用DHCP協議分配 IP 地址,你可以安裝DHCP-4.3.4 客戶端並且使用它制動獲取網絡IP地址。取得root權限後執行以下命令創建/etc/sysconfig/ifconfig-wifi0:

cat > /etc/sysconfig/ifconfig.wifi0 << "EOF"
ONBOOT="yes"
IFACE="wlan0"
SERVICE="wpa"

# Additional arguments to wpa_supplicant
WPA_ARGS=""

WPA_SERVICE="dhclient"
DHCP_START=""
DHCP_STOP=""

# Set PRINTIP="yes" to have the script print
# the DHCP assigned IP address
PRINTIP="no"

# Set PRINTALL="yes" to print the DHCP assigned values for
# IP, SM, DG, and 1st NS. This requires PRINTIP="yes".
PRINTALL="no"
EOF

如果你更喜歡安裝dhcpcd-6.10.3 客戶端,那就取得root權限後執行以下命令創建/etc/sysconfig/ifconfig-wifi0:

cat > /etc/sysconfig/ifconfig.wifi0 << "EOF"
ONBOOT="yes"
IFACE="wlan0"
SERVICE="wpa"

# Additional arguments to wpa_supplicant
WPA_ARGS=""

WPA_SERVICE="dhcpcd"
DHCP_START="-b -q <insert appropriate start options here>"
DHCP_STOP="-k <insert additional stop options here>"
EOF

另外,如果你在本地網絡中使用靜態IP地址,那就取得root權限後執行以下命令創建/etc/sysconfig/ifconfig-wifi0:

cat > /etc/sysconfig/ifconfig.wifi0 << "EOF"
ONBOOT="yes"
IFACE="wlan0"
SERVICE="wpa"

# Additional arguments to wpa_supplicant
WPA_ARGS=""

WPA_SERVICE="ipv4-static"
IP="192.168.1.1"
GATEWAY="192.168.1.2"
PREFIX="24"
BROADCAST="192.168.1.255"
EOF

你可以在取得root權限後通過執行以下命令連接到無線接入點:

ifup wifi0

用“wlan0“正確的無線接口名稱代替配置文件名稱中的”wifi0“,請特別注意:配置文件wpa_supplicant-.conf 和ifconfig. 中的”*“需要使用相同的名稱,即都包含”WiFi0“在它們的名稱中。

  • 安裝目錄
    安裝程序:wpa_gui, wpa_supplicant, wpa_passphrase and wpa_cli
    安裝庫:None
    安裝目錄:None
    簡要描述:

    • wpa_gui wpa_supplicant : 圖像化交互界面
    • wpa_supplicant :可以連接到密碼保護的接入點的一個守護進程
    • wpa_passphrase :生成wpa_supplicant可以解析的包含SSID 和密碼的簡單配置文件
    • wpa_cli :用於控制一個運行中的wpa_supplicant守護進程的命令行接口
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章