Introdução
Neste laboratório, você aprenderá como verificar se um servidor SSH está em execução em um sistema Linux. Você usará o comando systemctl status ssh para verificar o estado de execução do serviço, o comando ss -tuln para verificar se a porta SSH está aberta e escutando, e o comando cat /etc/ssh/sshd_config para inspecionar o arquivo de configuração do servidor SSH. Essas etapas são fundamentais para solucionar problemas e verificar a funcionalidade do servidor SSH.
Verificar o serviço SSH com systemctl status ssh
Nesta etapa, você aprenderá como verificar o status do serviço SSH em seu sistema Linux. SSH (Secure Shell) é um protocolo usado para conectar-se com segurança a um computador remoto. É uma ferramenta fundamental para administração de sistemas e desenvolvimento.
No Linux, serviços como o SSH são frequentemente gerenciados pelo systemd, um gerenciador de sistema e serviços. O comando systemctl é usado para interagir com o systemd.
Para verificar o status do serviço SSH, você usará o comando systemctl status seguido pelo nome do serviço, que é ssh.
Abra seu terminal, caso ainda não esteja aberto. Você pode encontrar o ícone do Xfce Terminal no lado esquerdo da sua área de trabalho.
Digite o seguinte comando no terminal e pressione Enter:
systemctl status ssh
Você verá uma saída semelhante a esta:
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since ...
Docs: man:sshd(8)
man:ssh(1)
Main PID: ... (sshd)
Tasks: 1 (limit: ...)
Memory: ...
CPU: ...
CGroup: /system.slice/ssh.service
└─... /usr/sbin/sshd -D
...
Vamos analisar as partes importantes da saída:
● ssh.service: Este é o nome do serviço.Loaded: loaded (...): Indica que o arquivo de configuração do serviço foi carregado pelosystemd.Active: active (running): Esta é a parte mais importante. Ela informa que o serviço SSH está atualmente em execução. Se estivesse parado, mostraria algo comoinactive (dead).since ...: Mostra quando o serviço foi iniciado.Main PID: ... (sshd): O ID do processo (Process ID) do processo daemon SSH principal (sshd).
Este comando é essencial para solucionar problemas de conectividade de rede ou verificar se um serviço está em execução conforme o esperado.
Clique em Continuar para prosseguir para a próxima etapa.
Verificar a porta SSH com ss -tuln
Nesta etapa, você aprenderá como verificar quais portas de rede estão abertas e escutando em seu sistema. Isso é crucial para entender como serviços como o SSH são acessíveis.
O comando ss é um utilitário para investigar sockets. Sockets são pontos finais para enviar e receber dados através de uma rede. Usaremos ss com várias opções para filtrar a saída:
-t: Exibe sockets TCP. SSH usa o protocolo TCP.-u: Exibe sockets UDP.-l: Exibe sockets escutando (listening). Estes são sockets que estão esperando por conexões de entrada.-n: Não resolve nomes de serviços. Isso mostra números de porta em vez de nomes comosshouhttp.
Combine essas opções para ver todas as portas TCP e UDP escutando com seus valores numéricos.
Digite o seguinte comando em seu terminal e pressione Enter:
ss -tuln
Você verá uma saída listando várias portas escutando. Procure a linha relacionada ao SSH, que normalmente escuta na porta 22. A saída pode ser semelhante a esta (a ordem exata e outras portas podem variar):
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 [::]:22 [::]:*
udp UNCONN 0 0 127.0.0.53%lo:53 0.0.0.0:*
udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:*
Nesta saída:
Netid: O protocolo de rede (tcp ou udp).State: O estado do socket (LISTEN significa que está esperando por conexões).Local Address:Port: O endereço IP local e o número da porta em que o serviço está escutando.0.0.0.0significa que está escutando em todos os endereços IPv4 disponíveis, e[::]significa que está escutando em todos os endereços IPv6 disponíveis.Peer Address:Port: O endereço e a porta da conexão remota (para sockets escutando, isso é*).
Você deve ver linhas indicando que a porta TCP 22 está no estado LISTEN. Isso confirma que o serviço SSH está em execução e pronto para aceitar conexões na porta SSH padrão.
Entender como verificar portas abertas é uma habilidade fundamental para solução de problemas de rede e segurança.
Clique em Continuar para passar para a próxima etapa.
Inspecionar a configuração SSH com cat /etc/ssh/sshd_config
Nesta etapa final, você examinará o arquivo de configuração principal para o servidor SSH. Este arquivo contém configurações que controlam como o serviço SSH se comporta, como a porta em que ele escuta, quais usuários podem se conectar e opções de segurança.
O arquivo de configuração para o daemon SSH (sshd) está normalmente localizado em /etc/ssh/sshd_config. O diretório /etc é onde os arquivos de configuração do sistema são armazenados.
Para visualizar o conteúdo deste arquivo, você pode usar o comando cat. cat é um comando simples que lê arquivos sequencialmente e os imprime na saída padrão (seu terminal).
Digite o seguinte comando em seu terminal e pressione Enter:
cat /etc/ssh/sshd_config
Você verá todo o conteúdo do arquivo sshd_config impresso em seu terminal. A saída conterá muitas linhas, algumas começando com # (que são comentários e são ignorados pelo sistema) e outras definindo opções de configuração.
Procure linhas que não estejam comentadas (não começam com #). Algumas diretivas importantes que você pode ver incluem:
Port 22: Isso especifica a porta em que o servidor SSH escuta. Por padrão, é 22.ListenAddress 0.0.0.0: Especifica o endereço IPv4 em que o servidor escuta.ListenAddress ::: Especifica o endereço IPv6 em que o servidor escuta.PermitRootLogin prohibit-password: Controla se o usuário root pode fazer login diretamente via SSH.PasswordAuthentication yes: Controla se a autenticação por senha é permitida.
## This is the sshd server system configuration file.
## See sshd_config(5) for more information.
## The systemd service file for sshd uses EnvironmentFile to load
## the SSHD_CONFIG environment variable, setting this to /etc/ssh/sshd_config.
## ...
Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key
## Ciphers and keying
#...
## Authentication:
LoginGraceTime 2m
PermitRootLogin prohibit-password
StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
#PubkeyAuthentication yes
## Expect .ssh/authorized_keys2 to be disregarded by default in future.
#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
#IgnoreRhosts yes
#RhostsRSAAuthentication no
#HostbasedAuthentication no
#...
PasswordAuthentication yes
#PermitEmptyPasswords no
ChallengeResponseAuthentication no
#...
Ler arquivos de configuração como este é uma habilidade fundamental para entender e gerenciar serviços Linux. Embora você não modifique o arquivo neste laboratório, saber onde ele está e como visualizar seu conteúdo é muito útil.
Você agora verificou com sucesso o status do serviço SSH, verificou sua porta de escuta e inspecionou seu arquivo de configuração. Você ganhou experiência valiosa com comandos Linux fundamentais para gerenciamento de serviços e inspeção de rede.
Clique em Continuar para concluir o laboratório e ver seu progresso!
Resumo
Neste laboratório, você aprendeu como verificar se um servidor SSH está em execução em um sistema Linux. Você usou o comando systemctl status ssh para verificar o estado ativo do serviço e entender detalhes importantes, como seu status carregado, estado ativo e ID do processo. Este comando é crucial para confirmar se o serviço SSH está operacional.
Você também aprendeu como verificar a porta SSH usando o comando ss -tuln e inspecionar o arquivo de configuração SSH localizado em /etc/ssh/sshd_config usando o comando cat. Essas etapas fornecem mais informações sobre a configuração de rede e as configurações do servidor SSH.



