Instale e use o NetworkManager (NMCLI) no Ubuntu/Debian
Para administradores de sistema, sua rotina diária gira em torno de configuração (provisionamento), manutenção, solução de problemas, monitoramento, segurança e gerenciamento de servidores em data centers. Este guia responde à questão que surge sobre como gerenciar ou administrar interfaces de rede Ubuntu/Debian usando algumas ferramentas padrão. Network Manager é uma ferramenta projetada para gerenciar redes em uma máquina. Possui muitas ferramentas que são usadas para gerenciar configurações de rede em quase todas as distribuições Linux. Esta ferramenta é a ferramenta de gerenciamento de rede padrão em sistemas Ubuntu. Ele fornece as seguintes ferramentas de gerenciamento de rede:
- Nmtui – esta ferramenta é executada em uma janela de terminal Linux. É uma ferramenta de gerenciamento de rede baseada em texto onde alterações podem ser feitas em uma rede inserindo dados e seleções de menu. Ele é usado para executar tarefas básicas de gerenciamento de rede e possui muitos recursos ausentes que estão disponíveis no NMCLI.
- Configuração do Gnome – na área de trabalho do Gnome é possível gerenciar a rede usando um aplicativo de rede do Gnome. Ele fornece gerenciamento básico de rede e é fácil de realizar configurações.
- nm-connection-editor – esta é uma ferramenta de gerenciamento de rede baseada em gráficos que permite acessar as opções de configuração do NetworkManager
- NMCLI - normalmente referido como Network Command-Line Interface é uma ferramenta de rede usada para gerenciar o NetworkManager e também mostrar o status de uma conexão de rede. É útil quando não é possível acessar o ambiente gráfico ou executar uma edição de servidor e fazer alterações na configuração da rede
O Network Manager é preferido devido aos seguintes recursos:
- Visualização de rede flexível
- Gerenciamento de rede abrangente
- Recursos integrados de análise de causa raiz
- Conteúdo totalmente personalizável
- Recursos integrados de pesquisa de dispositivos e interfaces
- Solução de problemas de rede com um único clique
- Amplos recursos de relatórios
- Múltiplas opções de integração
- Descoberta de rede cada vez maior
Ao final deste guia, você deverá ser capaz de instalar e usar o NetworkManager NMCLI no sistema Ubuntu/Debian.
Pré-requisitos
Para este guia, certifique-se de que seu sistema Ubuntu | Debian esteja atualizado e atualizado conforme abaixo.
sudo apt-get update && sudo apt-get upgrade
Passo 1 – Instale o NetworkManager no sistema Ubuntu | Debian
Por padrão, o NetworkManager existe em sistemas Ubuntu|Debian, mas caso você precise instalá-lo, demonstrarei duas maneiras de instalar o NetworkManager em seu sistema Ubuntu|Debian.
- Usando APT
- Usando Snap
1a) Instale o NetworkManager no sistema Ubuntu | Debian usando APT
O NetworkManager está disponível nos repositórios APT padrão dos sistemas Ubuntu | Debian e pode ser instalado conforme abaixo.
sudo apt-get install network-manager
Inicie e ative o Network Manager conforme abaixo.
sudo systemctl start NetworkManager.service
sudo systemctl enable NetworkManager.service
1b) Instale o NetworkManager no sistema Ubuntu | Debian usando Snap.
O NetworkManager também está disponível na loja Snap e pode ser instalado no sistema Ubuntu|Debian com o snap instalado e habilitado conforme abaixo.
sudo apt install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
Em seguida, instale o NetworkManager usando o comando:
snap install network-manager
Após esta instalação, todos os plugues e slots necessários serão conectados automaticamente. Verifique conforme abaixo.
snap connections network-manager
Saída de amostra:
Interface Plug Slot Notes
dbus network-manager:wpa - -
firewall-control network-manager:firewall-control :firewall-control -
hardware-observe network-manager:hardware-observe :hardware-observe -
login-session-observe network-manager:login-session-observe :login-session-observe -
modem-manager network-manager:modem-manager :modem-manager -
network network-manager:network :network -
network-manager - network-manager:service -
network-manager network-manager:nmcli - -
network-observe network-manager:network-observe :network-observe -
network-setup-control network-manager:network-setup-control :network-setup-control -
network-setup-observe network-manager:network-setup-observe :network-setup-observe -
ppp network-manager:ppp :ppp -
Assim que a instalação for concluída, o Network Manager será automaticamente iniciado e executado em segundo plano, verifique seu status usando o comando:
$ sudo systemctl status NetworkManager.service
● NetworkManager.service - Network Manager
Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-09-28 14:50:00 EAT; 1min ago
Docs: man:NetworkManager(8)
Main PID: 423 (NetworkManager)
Tasks: 3 (limit: 2404)
Memory: 13.6M
CPU: 303ms
CGroup: /system.slice/NetworkManager.service
└─423 /usr/sbin/NetworkManager --no-daemon
Sep 28 14:50:16 debian NetworkManager[423]: <info> [1632829816.7357] manager: NetworkManager state is now CONNECTED_LOCAL
Sep 28 14:50:16 debian NetworkManager[423]: <info> [1632829816.7434] manager: NetworkManager state is now CONNECTED_SITE
Sep 28 14:50:16 debian NetworkManager[423]: <info> [1632829816.7468] policy: set 'Wired connection 1' (enp0s3) as default for IPv4 routing and DNS
Passo 2 – Use NetworkManager NMCLI no sistema Ubuntu|Debian.
NMCLI é uma ferramenta utilitária de rede que nos permitirá gerenciar configurações de rede. Existem alguns comandos que podem ser usados para gerenciar uma rede.
Modificar conexões de rede
Usar o NMCLI para modificar conexões de rede exige que comecemos listando as conexões de rede, use o comando:
nmcli connection show
Saída de amostra:
AME UUID TYPE DEVICE
Wired connection 1 ac98eab7-1ad3-4cf0-93a0-210bfe3bb7e2 ethernet enp0s3
Exibir uma conexão ativa
O comando acima mostra todas as conexões, mas se você quiser ver as conexões ativas ou ativas você adicionará o sinalizador --active
ao comando acima;
nmcli connection show --active
Saída de amostra:
NAME UUID TYPE DEVICE
Wired connection 1 ac98eab7-1ad3-4cf0-93a0-210bfe3bb7e2 ethernet enp0s3
Com o nome do perfil de conexão, você pode visualizar informações adicionais conforme abaixo.
nmcli connection show "Wired connection 1"
Saída de amostra:
Adicionar e modificar conexões de rede usando NMCLI
Adicionar uma conexão de rede usando NMCLI
Usando NMCLI, pode-se adicionar novas conexões a um sistema Ubuntu|Debian usando a sintaxe abaixo.
sudo nmcli connection add type <network-type> ifname <connection-name>
Modifique uma conexão de rede existente usando NMCLI
Com o NMCLI, é possível fazer ajustes e configurações em uma conexão de rede existente, como alternar entre configurações estáticas e DHCP usando a sintaxe abaixo.
sudo nmcli connection modify <connection-id> <parameter> <value>
Agora vamos ver as configurações que podemos adicionar emodificar uma conexão usando NMCLI. Começaremos adicionando um perfil de conexão NetworkManager para nossa conexão. Para mim, é a conexão Ethernet e adicionarei um perfil de conexão com o nome My-New-Connection
nmcli connection add con-name My-New-Connection ifname enp0s3 type ethernet
Exemplo de saída:
Connection 'My-New-Connection' (a6b26540-4c06-4a80-a0fa-a2868e4006e5) successfully added.
Com o perfil de conexão adicionado, faremos os ajustes abaixo. Lembre-se de definir seu próprio endereço IP, gateway, servidor DNS, etc., usando uma sintaxe semelhante à que forneci.
Para definir o início automático da conexão de rede, use:
nmcli connection modify My-New-Connection connection.autoconnect yes
Por exemplo, modificaremos a conexão existente para um IP_Address estático e também alteraremos a sub-rede /24 sem esta especificação, atribuiremos um IP com a máscara padrão que poderá causar problemas posteriormente.
sudo nmcli connection modify My-New-Connection ipv4.address 192.168.100.157/24
2. Defina um endereço IPv6 estático com uma máscara de sub-rede /64
nmcli connection modify My-New-Connection ipv6.addresses 2001:db8:1::1/64
##For IPv4
nmcli connection modify My-New-Connection ipv4.gateway 192.168.100.1
##For IPv6
nmcli connection modify My-New-Connection ipv6.gateway 2001:db8:1::fffe
4. Definir um servidor DNS IPv4/IPv6
##For IPv4
nmcli connection modify My-New-Connection ipv4.dns "192.168.100.200"
##For IPv6
nmcli connection modify My-New-Connection ipv6.dns "2001:db8:1::ffbb"
##For IPv4
nmcli connection modify My-New-Connection ipv4.method auto
##For IPv6
nmcli connection modify My-New-Connection ipv6.method auto
Para que as alterações feitas tenham efeito, você precisa ativar o perfil.
$ nmcli connection up My-New-Connection
connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
Agora verifique as conexões ativas.
nmcli connection show --active
Verifique o conjunto IP_Address.
hostname -I
192.168.100.120 192.168.100.157
A partir da saída, tenho dois endereços IP, um IP primário e o IP secundário adicionado pelo novo perfil de conexão My-New-Connection. Você pode verificar as informações adicionais usando o comando ip a
conforme abaixo.
Gerenciar dispositivos usando NMCLI
A ferramenta utilitária NMCLI também pode ser usada para gerenciar dispositivos como:
Exibindo o status do dispositivo
sudo nmcli -p dev status
Saída de amostra:
Modificar uma configuração de dispositivo
Antes de poder modificar a configuração de um dispositivo, primeiro você precisará obter as informações do dispositivo.
sudo nmcli device show
Saída de amostra:
Com as informações do dispositivo, você pode modificar uma configuração do dispositivo usando a sintaxe abaixo.
$ sudo nmcli device modify <interface-name> <parameter> <value>
###OR
$ sudo nmcli dev mod <interface-name> <parameter> <value>
Lembre-se de que as alterações acima são temporárias e podem ser redefinidas para as configurações padrão usando o comando:
sudo nmcli dev reapply interface-name
Caso você não consiga usar o gerenciador de dispositivos NMCLI, encontre ajuda usando o comando:
sudo nmcli device help
Conclusão.
É isso! Vimos como instalar e usar o NetworkManager NMCLI no sistema Ubuntu/Debian. Espero que este guia tenha sido significativo para você. Presumo que agora você possa gerenciar sua conexão de rede e dispositivos de rede usando o NetworkManager NMCLI.
Ver mais:
- Como criar rede interna no Xen | XCP-ng
- Adicionar endereço IP secundário à interface de rede CentOS/RHEL
- Configure o servidor DNS escravo BIND no Debian