Como Activar Wi-Fi no Ubuntu Server 20.04 sem uma ligação Ethernet com fios

  • by

A maior parte dos computadores pessoais (portáteis ou desktop) que satisfaçam os requisitos mínimos de hardware podem executar o sistema operativo do servidor Linux. Não surpreende que muitas pessoas instalem os seus servidores domésticos em alguns computadores pessoais antigos mas ainda funcionais para auto-aprendizagem ou projectos paralelos.

Uma das opções comuns de executar um servidor Linux doméstico é aceder ao servidor através de uma rede doméstica Wi-Fi existente. O software de instalação do servidor Linux, em geral, não inclui pacotes de suporte de rede sem fios, pelo que depende do utilizador para activar a ligação Wi-Fi.

Neste post, mostrar-lhe-ei os passos para configurar e configurar o acesso Wi-Fi utilizando o suplicante WPA e o plano de rede no Ubuntu Server 20.04 sem ligação ethernet com fios.

Desde que o servidor não tenha ligação ethernet com fios, é necessário descarregar o pacote WPA supplicant (wpasupplicant) e duas das suas dependências (libnl-route-3-200, libpcsclite1) noutra máquina com ligação à Internet, depois transferi-los para o servidor utilizando uma unidade flash/externa.

wpasupplicant: suporte de cliente para WPA e WPA2 (IEEE 802.11i).

http://mirrors.kernel.org/ubuntu/pool/main/w/wpa/wpasupplicant_2.9-1ubuntu4_amd64.deb

libnl-route-3-200: biblioteca para lidar com tomadas netlink – interface de rota.

http://mirrors.kernel.org/ubuntu/pool/main/libn/libnl3/libnl-route-3-200_3.4.0-1_amd64.deb

libpcsclite1: middleware para aceder a um smart card usando PC/SC (biblioteca).

http://mirrors.kernel.org/ubuntu/pool/main/p/pcsc-lite/libpcsclite1_1.8.26-3_amd64.deb

P>Pode usar o seguinte comando para descarregar os pacotes se outra máquina também estiver a executar o Ubuntu Server 20.04 e não tiver instalado o pacote WPA supplicant:

sudo apt install -y --download-only wpasupplicant

Os ficheiros deb do wpasupplicant e as suas dependências são descarregados no seguinte directório por defeito:

/var/cache/apt/archives/

Se essa máquina estiver a executar o Ubuntu Server 20.04, mas já instalou o pacote de suplicantes WPA, pode usar dpkg-repack para recriar os ficheiros deb:

sudo apt install -y dpkg-repack
sudo dpkg-repack wpasupplicant libnl-route-3–200 libpcsclite1

Agora, copie estes três ficheiros deb para a sua unidade flash/externa.

Passo 2: Instalar o pacote de suplicantes WPA

P>Diga o nome do dispositivo para a unidade flash/externa (por exemplo USB stick) depois de o ligar ao servidor:

sudo fdisk -f

Um disco flash USB é normalmente listado em:

Criar um novo directório e montar a unidade flash/externa:

sudo mkdir /media/usb
sudo mount -t vfat /dev/sdb1 /media/usb

Instalar o pacote de replicantes WPA e as suas dependências:

cd /media/usb
sudo dpkg -i libnl-route-3–200_3.4.0–1_amd64.deb \
libpcsclite1_1.8.26–3_amd64.deb \
wpasupplicant_2.9–1ubuntu4_amd64.deb

Passo 3: Encontrar nome da interface sem fios

O kernel Linux lista nomes de interfaces de rede via symlinks em /sys/class/net, enquanto que as interfaces de rede sem fios são nomeadas wlp2s0wlp3s0, e assim por diante:

ls /sys/class/net | grep -i wlp

Existem muitas opções alternativas para encontrar a interface sem fios no Linux. Listo alguns exemplos abaixo:

# Use ip command: ip link or ip addr
ip link show | grep -i wlp | awk -F: '{print $2}' | xargs
ip addr show | grep -i wlp | awk -F: '{print $2}' | xargs# Use iw tool
iw dev | awk '$1=="Interface" {print $2}'# Use lshw to check wireless adapters
sudo lshw -C network \
| awk '/Wireless interface/,/logical name/ {print $3}' \
| tail -1

Passo 4: Criar um ficheiro de configuração NetPlan

Para configurar o netplan, fazer uma cópia do ficheiro de configuração existente, depois criar um novo em /etc/netplan/ com uma extensão .yaml:

sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00.bak
sudo vim /etc/netplan/00-installer-config.yaml

Para deixar a interface sem fios denominada wlp2s0 obter um endereço IP via DHCP, edite o ficheiro YAML com o seguinte:

network:
ethernetes: {}
wifis:
wlp2s0:
dhcp4: true
optional:true
access-points:
"network_ssid_name":
password: "**********"
version: 2
renderer: networkd

Para em vez disso definir um endereço IP estático:

network:
ethernetes: {}
wifis:
wlp2s0:
dhcp4: no
dhcp6: no
optional:true
addresses:
gateway4: 192.168.1.1
nameservers:
addresses:
access-points:
"network_ssid_name":
password: "**********"
version: 2
renderer: networkd

Ajustar o nome da interface sem fios, endereço IP estático, gateway, servidores de nomes e SSID/password Wi-Fi, conforme necessário.

Nota o optional: true declarações-chave que permitem o arranque sem esperar que essas interfaces sejam activadas por completo.

Passo 5: Aplicar a Configuração do Netplan

Após terminar de editar o ficheiro YAML do netplan, gerar a configuração backend a partir dele e verificar se a configuração fornecida cumpre os padrões definidos:

sudo netplan --debug generate

Se tudo estiver em ordem, aplicar a configuração fornecida para utilização:

sudo netplan apply

Agora, reiniciar o servidor:

sudo reboot

Notas finais

Se o nome da interface sem fios não for apresentado, o adaptador sem fios pode não ter sido reconhecido como dispositivo de rede de um servidor. Pode dirigir-se ao site de ajuda Ubuntu para obter a informação específica de resolução de problemas:

https://help.ubuntu.com/stable/ubuntu-help/net-wireless-troubleshooting-hardware-check.html.en

O ficheiro netplan YAML é muito exigente quanto a indentação, espaçamento, e sem separadores. Veja o seguinte link para ajuda adicional:

https://netplan.io/examples

Por favor, certifique-se de introduzir o SSID Wi-Fi e a palavra-chave correctos no ficheiro netplan YAML. O comando netplan apply será bem sucedido, mas a interface sem fios não será activada se fornecer um SSID ou palavra-passe Wi-Fi incorrecta.

Obrigado pela leitura!

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *