AP Létrehozása -Ubuntu 22.04

Ebből a bejegyzésből megtudhatod, hogy egy alaptelepítés után, hogyan tudsz Ubuntu 22.04 rendszerből Wifi AP-t létrehozni.

Hálózat konfigurálása

A NetPlan ész az IfupDown hálózat konfigurációs eszközök. Az AP elkészítéséhez nekem egyszerűbb használni a hagyományos csomagot, így azt most visszaállítjuk.

apt install ifupdown bridge-utils
apt purge netplan.io
rm -rf /usr/share/netplan
rm -rf /etc/netplan

Ezt követően konfiguráljuk a hálózatunkat, nyissuk meg az alábbi állományt

nano /etc/network/interfaces

majd egészítsük ki a saját hálózatunk jellemzőivel, nálam ez így néz ki

auto lo
iface lo inet loopback

auto enp0s3
iface enp0s3 inet static
address 10.0.2.15
netmask 255.255.255.0
network 10.0.2.0
gateway 10.0.2.2
nameserver 8.8.8.8

## A saját interface nevünket adjuk meg. ##
## Mint látható csak a wifi adapter csatlakozásakor fog aktiválódni a beállítás ##
allow-hotplug <interface_name>
iface <interface_name> inet manual

auto br0
iface br0 inet static
bridge-ports <interface_name> #Wifi adapter neve
address 192.168.10.1
netmask 255.255.255.0
broadcast 192.16.10.255
gateway 192.168.10.1
dns-search intranet.lan
dns-nameservers 192.168.10.1
up route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.10.1
down route del -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.10.1

Mielőtt újra indítanánk a szolgáltatást, hozzuk létre a resolv.conf állományt, ami jelenleg a netplan miatt linkelve létezik az „/etc” konyvtárban.

rm /etc/resolv.conf
nano /etc/resolv.conf

Egészítsük ki az állományt

nameserver 8.8.8.8
nameserver 8.8.4.4

A hálózat tesztelése céljából ajánlott telepíteni a dnsutils csomagot

apt install dnsutils net-tools

DNSMasq telepítése

A dnsmasq csomag telepítése és konfigurálása egy egyszerű módja dhcp- és dns szerver létrehozásának. A terv az, hogy amikor a wifi adapterünket csatlakoztatjuk usb-n keresztül a szerverünkhöz, akkor akkor az kapjon egy statikus ip címet.

apt install dnsmasq

Hozzuk létre a konfigurációnkat

mv /etc/dnsmasq.conf /etc/dnsmasq.conf.ORIG
nano /etc/dnsmasq.conf

Másoljuk be az alábbi szekciót, természetesen az interface név helyére a sajátunkat írjuk

interface=br0
dhcp-range=192.168.10.100,192.168.10.254,255.255.255.0,24h
dhcp-option=3,192.168.10.1 # a 3-om a gateway
dhcp-option=6,192.168.10.1 # a 6, a dns kiszolgáló
server=8.8.8.8
server=8.8.4.4
log-dhcp
log-queries
listen-address=127.0.0.1
local=/intranet.lan/
addn-hosts=/etc/hosts.intranet.lan
log-queries
log-dhcp
log-facility=/var/log/dnsmasq.log

Generáljuk le a domain neveket

seq 100 254 | awk '{print("192.168.10."$1"\tdhcp-"$1".intranet.lan\tdhcp-"$1)}' > /etc/hosts.intranet.lan

A szolgáltatás azonban nem fog elindulni, mivel a systemd-resolved szolgáltatás jelenleg fut és használha az 53-as portot. Ez a szolgáltatás alapértelmezetten települ az ubuntu rendszerrel a névfeloldáshoz. Állítsuk le ezt a szolgáltatást

systemctl disable systemd-resolved
systemctl stop systemd-resolved
systemctl restart dnsmasq.service

Tűzfal szabályok

Engedélyezzük, hogy az ubuntu szerver átjáróként szolgáljon

nano /etc/sysctl.conf

Módosítsuk a beállítást, vegyük ki a kettőskeresztet a szöveg elől

net.ipv4.ip_forward=1

Ezt követően telepítsük a szükséges csomagokat

apt install iptables

Parancssorba adjuk ki az alábbi parancsokat. Figyeljünk oda, hogy az interface név azt az eszközt jelenti, amin keresztül a gép fizikailag kilát az internet felé. Ez esetben nekem az enp0s3 lesz.

iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o <interface_név> -j MASQUERADE

Amennyiben telepítjük az iptables-persistent csomagot, a jelenlegi beállításokat automatikusan elmenti. A konfiguráció helye a „/etc/iptables/” könyvtárban lesz, rules.v4 és rules.v6 állományok tartalmazzák a konfigurációkat.

AP konfigurálása

Telepítsük a szükséges csomagot, majd hozzuk létre a konfigurációt

apt install hostapd
nano /root/hostapd.conf

Illesszük be az alábbi konfigurációkat, természetesen módosítsuk az interfész nevet, essid nevet és a titkos kulcsot, a saját belátásunk szerint.

interface=<interface_name>
bridge=br0
ssid=<SSID name>
wpa_passphrase=<secret_ke>

country_code=HU
driver=nl80211

wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP

logger_syslog=0
logger_syslog_level=4
logger_stdout=-1
logger_stdout_level=0

hw_mode=a
wmm_enabled=1

# N
ieee80211n=1
require_ht=1
ht_capab=[MAX-AMSDU-3839][HT40+][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40]

# AC
ieee80211ac=1
require_vht=1
ieee80211d=0
ieee80211h=0
vht_capab=[SHORT-GI-80][SU-BEAMFORMEE]
vht_oper_chwidth=1
channel=36
vht_oper_centr_freq_seg0_idx=42


A konfiguráció indítása. A „-d” kapcsoó debug módban indítja a programot, amennyiben nincs hiba, ez a funkció elhagyható.

hostapd -d hostapd.conf

ASUS AC-53 WIFI adapter

Frissen vásároltam egy USB Wifi adaptert, melyet jelen pillanatban nem ismer fel automatikusan az Ubuntu 22.04 rendszer. Úgy gondoltam, hogy mellékelek egy kis segítséget azoknak, akik esetleg elakadtak az eszköz beüzemelésével.
Először telepítsük a szükséges csomagokat

apt update
apt install bc dkms git rsync
cd /tmp
git clone https://github.com/cilynx/rtl88x2bu
cd rtl88x2bu
VER=$(sed -n 's/\PACKAGE_VERSION="\(.*\)"/\1/p' dkms.conf)
sudo rsync -rvhP ./ /usr/src/rtl88x2bu-${VER}
sudo dkms add -m rtl88x2bu -v ${VER}
sudo dkms build -m rtl88x2bu -v ${VER}
sudo dkms install -m rtl88x2bu -v ${VER}
sudo modprobe 88x2bu

Ezt követően már működnie kell az eszköznek.
ASUS AC-53