我正在使用最新版本的基于 Debian 的 Linux Kali。也许这是一个XY问题,因为主要问题是在我登录系统后,我得到一个空白屏幕和鼠标指针。互联网上有人建议我更改窗口管理器。
但我无法执行此操作,因为我无法连接到 wifi。
我找到了如何执行此操作的教程这里
我试图一步一步地做到这一点,但这对我来说不起作用。在作者写的那个教程中,我需要使用命令ip link set wlan0 ip
来打开 wifi 接口。在他的示例中,输出如下所示:
root@kali:~# ip link show w
lan0 4: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DORMANT qlen 1000
link/ether 00:60:64:37:4a:30 brd ff:ff:ff:ff:ff:ff
root@kali:~# ip link set wlan0 up
root@kali:~# ip link show wlan0
4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
link/ether 00:60:64:37:4a:30 brd ff:ff:ff:ff:ff:ff
另一方面,当我打电话时:
ip link set wlan0 up
ip link show wlan0
我得到:
4: wlan0: <NO_CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT qlen 1000
link/ether 00:60:64:37:4a:30 brd ff:ff:ff:ff:ff:ff
并在使用有效的网络详细信息运行 wpa 请求者之后
wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf
iw wlan0 link
仍然返回Not connected.
我该如何解决这个问题以及下一步该怎么做?
答案1
我假设wpa_supplicant
并iw
已安装。
要通过您连接到wifi,
wpa_supplicant
您需要创建一个wpa_supplicant.conf
文件nano /etc/wpa_supplicant.conf
包含以下几行:
network={ ssid="wifi_name" psk="wifi_key" }
或者您可以使用wpa_passphrase
创建配置文件(复制并粘贴):
wpa_passphrase "Your_SSID" Your_passwd
也可以wpa_supplicant.conf
直接写:
wpa_passphrase "Your_SSID" Your_passwd > /etc/wpa_supplicant.conf
要连接,请键入以下命令:
sudo ip link set wlan0 down
sudo ip link set wlan0 up
sudo wpa_supplicant -B -iwlan0 -c /etc/wpa_supplicant.conf -Dnl80211,wext
sudo dhclient wlan0
笔记:选项中的多个逗号分隔的驱动程序包装器使
-Dnl80211,wext
wpa_supplicant 使用第一个能够初始化接口的驱动程序包装器(请参阅 wpa_supplicant(8))。当使用使用不同驱动程序的多个或可移动(例如USB)无线设备时,这非常有用。
您可以在wpa_supplicant
没有wpa_supplicant.conf
文件的情况下进行连接:
wpa_supplicant -B -i wlan0 -c <(wpa_passphrase "Your_SSID" Your_passphrase) && dhclient wlan0
您可以访问官方Arch-linux 的文档 获取有关配置文件和参数的更多信息。
你可以通过以下方式连接
nmcli
nmcli d wifi connect Your_SSID password Your_Psswd_here ifname Your_interface
例子:
nmcli d wifi connect MYSSID password 12345678 ifname wlan0
- 您也可以通过以下方式连接
wpa_cli
:
打开终端并输入wpa_cli
要扫描,请输入:
scan
scan_results
创建网络:
add_network
这将输出一个数字,即网络ID,例如0
接下来,我们需要设置网络的SSID和PSK。
set_network 0 ssid "SSID_here"
set_network 0 psk "Passphrase_here"
无线连接后,它应该自动获取 IP 地址。如果没有,您可以运行dhclient
通过 DHCP 获取 IP 地址。
该dhclient
命令可以替换为 2 个ip
命令:
ip addr add IP-ADDRESSE/24 dev wlan0
ip route add default via ROUTE
iwctl
命令行工具。
这iwd
软件包提供iwctl
命令行工具。默认情况下不安装该软件包。为避免任何冲突,wpasupplicant.service
应停止/禁用该软件包。
欲了解更多详细信息,请参阅 U&L 上的这个答案:通过 iwd(Linux 无线守护进程)从 Linux 系统上的命令行连接到 wifi
进一步阅读:
答案2
要在 Debian 上安装 wpa_supplicant,请输入
sudo apt install wpasupplicant
在终端中。要创建wpa_supplicant.conf
文件,请输入
echo 'network={ssid="nameOfYourWiFiNetwork" psk="thePassword"}' >> /etc/wpa_supplicant.conf