
O sudocomando dá a um utilizador superusuário ou poderes de root. Sem dúvida, tu deu a eles o discurso “com grandes poderes vêm grandes responsabilidades”. Veja como verificar se eles ouviram ou não.
Índice
O comando sudo
O sudocomando significa “substitute user do”. Ele permite que uma pessoa autorizada execute um comando como se fosse outro utilizador. Ele pode receber parâmetros de linha de comando, um dos quais é o nome do utilizador com o qual tu deseja que o comando seja executado. A maneira mais comum sudoé omitir as opções de linha de comando e usar a ação padrão. isto executa efetivamente o comando como utilizador root.
Para usar sudodesta forma requer permissão especial. Apenas os privilegiados podem usar sudo. Ao instalar uma distribuição Linux moderna, tu é solicitado a configurar uma palavra-passe de root que pode ser usada com o sudo. A permissão para fazer isto é concedida ao utilizador comum que tu cria durante a instalação. esta é a maneira preferida de lidar com o acesso aos recursos do utilizador root. A maneira antiga era criar um utilizador root e fazer login como ele para administrar seu sistema.
Este era um cenário perigoso. Era fácil esquecer ou ter preguiça de fazer logout e voltar como seu utilizador regular quando tu não precisava mais de privilégios de root. Quaisquer erros cometidos na janela do terminal como root serão executados, não importa quão drásticos. As coisas que seriam bloqueadas pelo shell se um utilizador normal tentasse executá-las seriam executadas sem dúvida quando o root as solicitasse. Usar a conta root em vez de uma conta normal também é um risco de segurança.
O uso sudofocaliza a mente. tu está entrando nas mesmas águas perigosas, mas está conscientemente escolhendo fazê-lo e, esperançosamente, tomando muito cuidado. tu só invoca seu status de superusuário quando precisa fazer algo que precise deles.
Se tu abrir o acesso root para outros utilizadores, tu quer saber que eles estão tomando tanto cuidado com eles quanto tu. tu não quer que eles executem comandos de forma imprudente ou especulativa. A saúde e o bem-estar de sua instalação Linux dependem de utilizadores privilegiados se comportando com respeito e responsabilidade.
Aqui estão várias maneiras de monitorar seu uso de root.
O ficheiro auth.log
Algumas distribuições mantêm um log de autenticação, em um ficheiro chamado “auth.log”. Com o advento e a rápida adoção do systemd, a necessidade do ficheiro “auth.log” foi removida. O systemd-journaldaemon consolida os logs do sistema em um novo formato binário e journalctlfornece uma maneira de examinar ou interrogar os logs.
Se tu tiver um ficheiro “auth.log” em seu computador Linux, ele provavelmente estará no diretório “/var/log/”, embora em algumas distribuições o nome do ficheiro e o caminho sejam “/var/log/audit/audit .registro.”
tu pode abrir o ficheiro lessassim. Lembre-se de ajustar o caminho e o nome do ficheiro para se adequar à sua distribuição e esteja preparado caso seu Linux nem mesmo crie um ficheiro de autenticação.
Este comando funcionou no Ubuntu 22.04.
menos /var/log/auth.log

O ficheiro de log é aberto e tu pode rolar pelo ficheiro ou usar os recursos de pesquisa embutidos no less para procurar “sudo”.

Mesmo usando os recursos de pesquisa do less, pode levar algum tempo para localizar as sudoentradas de seu interesse.
Digamos que queremos ver para que um utilizador chamado maryusou sudo. Podemos pesquisar o ficheiro de log greppor linhas com “sudo” neles e, em seguida, canalizar a saída grepnovamente e procurar linhas com “mary” nelas.
Observe o sudoantes do grep e antes do nome do ficheiro de log.
sudo grep sudo /var/log/auth.log | grep "maria"

isto nos dá linhas que têm “sudo” e “mary” nelas.
Podemos ver que o utilizador maryrecebeu sudoprivilégios às 15:25 e às 15:27 ela está abrindo o fstabficheiro em um editor. este é o tipo de atividade que definitivamente merece um mergulho mais profundo, começando com um bate-papo com o utilizador.
Usando journalctl
O método preferencial em systmddistribuições Linux baseadas é usar o journalctlcomando para revisar os logs do sistema.
Se passarmos o nome de um programa para journalctlele, ele buscará nos ficheiros de log entradas que contenham referências a este programa. Por sudoser um binário localizado em “/usr/bin/sudo” podemos passar isto para journactl. A -eopção (final do pager) diz journalctlpara abrir o pager de ficheiro padrão. Normalmente isto será less. A ecrã é rolada automaticamente para baixo para mostrar as entradas mais recentes.
sudo journalctl -e /usr/bin/sudo

As entradas de log que apresentam sudosão listadas em menos.

Use a tecla “RightArrow” para rolar para a direita para ver o comando que foi usado com cada uma das invocações de sudo. (Ou estique a janela do terminal para que fique mais larga.)

E como a saída é exibida em less, tu pode pesquisar texto como nomes de comandos, nomes de utilizadores e carimbos de data/hora.
Usando o utilitário de logs do GNOME
Ambientes de área de trabalho gráficos geralmente incluem um meio de revisão de logs. Veremos o utilitário de logs do GNOME. Para acessar o utilitário de logs, pressione a tecla “Super” à esquerda da “barra de espaço”.
Digite “logs” no campo de pesquisa. O ícone “Registros” aparece.

clica no ícone para iniciar o aplicação “Logs”.

Clicar nas categorias na barra lateral filtrará as mensagens de log por tipo de mensagem. Para fazer seleções mais granulares, clica na categoria “Todos” na barra lateral e, em seguida, clica no ícone de lupa na barra de ferramentas. Digite algum texto de pesquisa. Vamos procurar por “sudo”.

A lista de eventos é filtrada para exibir apenas os eventos relacionados ao sudocomando. Um pequeno bloco cinza no final de cada linha contém o número de entradas naquela sessão de evento. clica em uma linha para expandi-la.

Clicamos na linha superior para ver os detalhes das 24 entradas naquela sessão.

Com um pouco de rolagem, podemos ver os mesmos eventos que vimos quando usamos o journalctlcomando. maryA sessão de edição inexplicável do utilizador no fstabficheiro é encontrada rapidamente. Poderíamos ter pesquisado por “mary”, mas isto incluiria outras entradas além do uso de sudo.
Nem todo mundo precisa de acesso root
Onde há um requisito genuíno e sensato, dar sudoprivilégios a outros utilizadores pode fazer sentido. Da mesma forma, só faz sentido verificar o uso – ou abuso – desses poderes, especialmente logo após eles terem sido concedidos.