How to Connect to WiFi in Kali Linux: Methods and Solutions

operating system Kali Linux Traditionally associated with wireless network security audits, it requires a stable internet connection to function properly. Many users encounter problems with the graphical interface after installing the distribution, such as not displaying available access points, or missing network card drivers by default. This is due to the developers' specific focus on pentesting tools rather than everyday convenience.

To successfully connect, you need to understand the difference between the network card's normal operating mode and monitoring mode, which is often activated automatically by specialized utilities. In this article, we'll discuss current methods for setting up a connection through the graphical interface and the command line. nmcli and utilities wpa_supplicantYou will learn how to diagnose driver problems and restore the adapter to working order.

📊 What type of WiFi connection do you have in Kali?
Built-in laptop adapter
External USB adapter
Smartphone via USB (Tethering)
Wired Ethernet for driver installation

Before beginning any manipulations, ensure you have superuser rights, as managing network interfaces requires elevated privileges. All commands below should be entered in a terminal after checking the status of your network equipment.

Network interface and driver diagnostics

The first step should always be to check if the adapter is visible to the system. Unlike Windows, where devices often work out of the box, Linux-like systems, especially specialized distributions, may require manual initialization. Use the command ip link or outdated but informative iwconfigto see a list of all network interfaces. If you see an interface with a name like wlan0 or wlp2s0, which means the system physically sees the device.

However, the presence of an interface does not guarantee its functionality. It often happens that the driver is loaded but in an error state or conflicts with other kernel modules. For a detailed check, use the command lspci for internal cards or lsusb For external USB adapters. These utilities will show the chipset vendor and model, which is critical for finding proprietary drivers.

  • 🔍 Check the command output dmesg | grep firmware for microcode loading errors.
  • 🔍 Make sure the interface is not blocked programmatically by a command rfkill list.
  • 🔍 Compare the device's Vendor ID with the Linux supported chipset database.
⚠️ Attention: If the team rfkill shows the status "blocked: yes", no WiFi settings will help until you unlock the device with the command sudo rfkill unblock wifiThis is a common problem after an improper shutdown.

It's important to distinguish between software and hardware blocks. A software block can be removed using the commands described above, while a hardware block (hard block) usually means there's a physical switch or Fn key combination on the laptop case that disables power to the WiFi module. In some cases, the BIOS/UEFI may also disable wireless cards.

Connecting via the NetworkManager graphical interface

Modern versions Kali Linux use NetworkManager As the primary network management tool, it provides a user-friendly graphical interface in the system tray. This is the easiest way for beginners to connect to secure networks without entering complex commands. The network icon is typically located in the upper-right corner of the screen, next to the clock.

To connect, click the network icon, select the desired access point from the list, and enter the password. The system will automatically create a connection profile and attempt to obtain an IP address via DHCP. If the network is hidden (not broadcasting its SSID), select "Connect to Hidden Network" and manually enter the network name and encryption type.

If the graphical interface is not responding or the network icon is missing, the service may be NetworkManager stopped. You can start it with the command sudo systemctl start NetworkManagerIt is also worth checking whether it conflicts with other network managers, such as wicd or connman, which can be installed additionally.

The systemctl command Action Result
status NetworkManager Checking the status Shows whether the service is active.
start NetworkManager Starting the service Enables network management
restart NetworkManager Restart Updates the configuration
enable NetworkManager Autoload Run at system startup

Sometimes after a system update, NetworkManager settings may become corrupted. In this case, deleting cached profiles in the directory helps. /etc/NetworkManager/system-connections/However, before deleting files, be sure to back them up to avoid losing saved passwords for other networks.

Setting up WiFi via the terminal (nmcli)

For advanced users and system administrators, the preferred method is to use the command line utility. nmcli (Network Manager Command Line Interface). This tool provides complete control over network connections and is often the only viable option when the graphical interface freezes or malfunctions.

First, you need to enable the WiFi radio module. Even if the adapter is detected, it can be disabled programmatically. The command nmcli radio wifi on activates the wireless module. After this, you can scan for available networks using the command nmcli dev wifi list, which will output a table with the SSID, signal strength, and security status.

sudo nmcli dev wifi connect "Network_Name" password "Your_Password"

This command will automatically create a new connection and attempt to connect. If the network requires configuration (for example, a static IP), you can create a profile manually. Usage nmcli especially effective when configuring servers without a graphical shell or when managing remotely via SSH.

  • 🚀 Team nmcli connection show will display all saved connection profiles.
  • 🚀 To delete your old profile, use nmcli connection delete"Profile_Name".
  • 🚀 You can reconnect to the network using the command nmcli connection up"Profile_Name".

Errors when connecting via nmcli are often associated with the wrong security type. If automatic detection does not work, specify the parameter manually by adding wifi-sec.key-mgmt wpa-psk to the connection command. This forces the manager to use the standard WPA-Personal protocol.

Using wpa_supplicant and wpa_cli

In situations where NetworkManager fails or is missing, a fundamental utility comes to the rescue wpa_supplicantIt operates at a lower level and is responsible for negotiating security parameters with the access point. This method requires more manual work, but it provides insight into how the authentication process works in WPA/WPA2 networks.

The process begins with creating a configuration file. You can generate a password hash using the utility wpa_passphrase, so as not to store the password in plaintext, although for home use this is not critical. The configuration is usually located in /etc/wpa_supplicant/wpa_supp.conf.

⚠️ Attention: Before launch wpa_supplicant Make sure that other network managers (NetworkManager, systemd-networkd) are stopped, otherwise there will be a conflict over interface management and the connection will not take place.

To start the process, a command is used where the driver is specified (usually nl80211) and the interface name. After successfully associating with the access point, you need to obtain an IP address. A daemon is most often used for this. dhcpcd or utility dhclient.

sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supp.conf

sudo dhclient wlan0

For interactive connection control you can use wpa_cliThis tool allows you to switch between networks, change passwords, and monitor connection status in real time without restarting services. It's especially useful for debugging roaming issues or unstable signal strength.

Problems with Realtek drivers

Adapters based on Realtek chips (RTL8812AU, RTL8814AU) often require drivers to be compiled from source code. Standard kernel drivers may not support monitor mode or may be unstable. It is recommended to use the aircrack-ng or dkms repository to install the latest driver versions.

Monitoring mode and compatibility issues

One of the specific problems Kali Linux is that many users use it for WiFi auditing, which involves putting the card into monitoring mode (monitor mode). After working in this mode, the card often cannot return to normal control mode (managed mode), which makes it impossible to connect to the Internet.

To restore the adapter to working order, you need to stop processes using the network and change the interface mode. A simple interface reboot often helps, but if the driver freezes, unloading and reloading the kernel module may be necessary.

  • 🛠 Check the current mode with the command iwconfig (search for "Mode:Monitor").
  • 🛠 Stop the network: sudo systemctl stop NetworkManager.
  • 🛠 Change mode: sudo ip link set wlan0 down then sudo iw dev wlan0 set type managed.

There are also compatibility issues between the new WiFi 6 (802.11ax) standards and older drivers. If the router is configured only for WPA3 mode or uses encryption that your adapter doesn't support, connecting will be impossible. In such cases, it's recommended to temporarily change the router's settings to enable WPA2/WPA Mixed Mode support.

External USB adapters popular among security professionals (for example, those based on Atheros or Ralink chips) may require power saving to be disabled. The system may attempt to "sleep" the device to conserve power, leading to connection interruptions. This can be disabled via kernel module parameters in the file /etc/modprobe.d/.

☑️ Diagnosing WiFi problems

Completed: 0 / 4

Frequently Asked Questions (FAQ)

Why doesn't Kali Linux see my WiFi adapter?

Most likely, the drivers for your network card are missing from the kernel or not installed. Use the command lsusb or lspci to determine the chipset model, then find the corresponding driver package (often this is firmware-realtek or firmware-atheros) and install it by connecting via Ethernet or USB modem.

How to connect to a hidden network (Hidden SSID)?

In the GUI, select "Connect to Hidden Network" and enter the exact network name (SSID), case-sensitive. In the command line nmcli add parameter hidden yes when creating a connection: nmcli con add type wifi con-name"MyNet" ifname wlan0 ssid"MyHiddenNet" hidden yes wifi-sec.key-mgmt wpa-psk wifi-sec.psk"password".

Can Kali Linux be used as a regular OS with WiFi?

Yes, but this is not recommended by the developers. Kali is designed for penetration testing. For everyday use, distributions like Debian, Ubuntu, or Mint are better suited, as they offer better support for proprietary drivers and multimedia. Kali tools can then be installed on top of them.

What to do if the WiFi password is not accepted?

Make sure your keyboard layout matches the one you used to enter your password. Try creating a text file with the password and copying it to eliminate typos. Also, check if MAC address filtering is enabled on your router, which is blocking new devices.