我已经在我的虚拟机上使用 Kali 很长一段时间了,几天前我决定像我的主操作系统一样安装它。
Kali Linux安装流程
安装的时候是这么说的
The missing firmware files are: rtlwifi/rtl8723befw.bin
和
The missing firmware files are: rtl_nic/rtl8106e-1.fw
我已经完成安装并转到我的终端来 makeapt-get update
和apt-get upgrade
。一切都很顺利。然后我决定在尝试查找这些丢失的文件之前更新我的内核,因此我将apt-cache search linux-headers
标头安装到版本“4.9.0-kali4-amd64”,之后我apt-cache search linux-image
下载了正确的图像。所以我也安装了这两个。这部分就完成了。
丢失文件
没花太多时间就找到了这个包含所有固件的链接
因此,我已经使用以下命令轻松安装了:sudo dpkg -i DEB_FIRMWARE_PACKAGE
和sudo apt-get install -f
。再说一遍,一切都很顺利,没有任何错误或其他任何情况。
这是主要问题
在安装过程中,kali要求我使用有线还是无线连接,我用的是我家的Wifi,一切都很酷。安装后,我遇到了有时会出现大量数据包丢失的问题(已使用正确的固件修复)。另外,如果我距离路由器至少 2-3 米,我就无法连接到它。连接时间刚刚耗尽。 (与有线连接完美配合)。
我并不关心这个2-3m的距离,但几个小时后,我去了市中心,尝试连接到公共Wifi,我很震惊,因为除了我家的Wifi网络之外,我无法连接到任何Wifi网络。
几个命令的输出
(每个输出都是在使用我的家庭Wifi时完成的)
root@kali-Ansi17:~# ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether fc:3f:db:5c:bc:a6 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 232 bytes 18828 (18.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 232 bytes 18828 (18.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.26 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::aaa7:95ff:fecf:a879 prefixlen 64 scopeid 0x20<link>
ether a8:a7:95:cf:a8:79 txqueuelen 1000 (Ethernet)
RX packets 403073 bytes 512589056 (488.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 262552 bytes 30019878 (28.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
root@kali-Ansi17:~# iwconfig
wlan0 IEEE 802.11 ESSID:"DIR-300NRU"
Mode:Managed Frequency:2.462 GHz Access Point: 1C:7E:E5:D1:DE:3A
Bit Rate=54 Mb/s Tx-Power=20 dBm
Retry short limit:7 RTS thr=2347 B Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=46/70 Signal level=-64 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:3926 Missed beacon:0
lo no wireless extensions.
eth0 no wireless extensions.
root@kali-Ansi17:~# iwconfig wlan0
wlan0 IEEE 802.11 ESSID:"DIR-300NRU"
Mode:Managed Frequency:2.462 GHz Access Point: 1C:7E:E5:D1:DE:3A
Bit Rate=54 Mb/s Tx-Power=20 dBm
Retry short limit:7 RTS thr=2347 B Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=54/70 Signal level=-56 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:5911 Missed beacon:0
再多一点
root@kali-Ansi17:~# rfkill list
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
2: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
root@kali-Ansi17:~# lspci | grep -i network
02:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8723BE PCIe Wireless Network Adapter
root@kali-Ansi17:~# lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Rolling
Release: kali-rolling
Codename: kali-rolling
PS 另外,当系统运行时它会说:
[12.655203]蓝牙hci0:固件:无法加载rtl_bt/rtl8723b_config.bin(-2)
[12.655215]蓝牙:hci0:无法加载rtl_bt/8723b_config.bin
但这是关于蓝牙的,所以我不太关心。 (添加此内容是因为我读到 Wifi 的问题可能会出现,因为蓝牙的问题)。
答案1
去除firmware-realtek
软件包(该软件包属于 debian jessie)
安装内核头文件和开发工具:
apt install build-essential linux-headers-$(uname -r) git
然后安装司机:
git clone https://github.com/lwfinger/rtlwifi_new
cd rtlwifi_new
make
make install
加载模块
modprobe rtl8723be
故障排除
创建一个/etc/modprobe.d/rtl8723be.conf
包含以下内容的:
options rtl8723be fwlps=0
重新启动您的系统:
如果您的信号很差,则您的设备可能只连接了一根天线,并且自动模式不起作用。您可以使用
ant_sel=1
或ant_sel=2
内核选项强制天线。
如果无法正常工作,请使用以下ant_sel
选项重新加载驱动程序:
rmmod rtl8723be
modprobe rtl8723be ant_sel=1
再次强调,如果不能正常使用ant_sel=2
。
更新(来自评论)wifi 工作正常ant_sel=2
,您可以将此选项添加到您的/etc/modprobe.d/rtl8723be.conf
:
options rtl8723be fwlps=0 ant_sel=2
答案2
您可以通过在终端中使用以下命令来解决此问题: 首先输入以下命令:
sudo modprobe rtl8723be -rv
现在输入这个命令:
sudo modprobe rtl8723be -v ant_sel=2
该方法在kali 2018.2中运行良好。我使用的是惠普笔记本 af006ax。