SSH é um protocolo de rede criptográfico que permite controlar e modifica um computador remoto pela Internet. Este protocolo garante a segurança mesmo através de uma rede vulnerável. A maioria dos distritos Linux usa OpenSSH, um projeto de código aberto que implementa o protocolo SSH.
Neste guia, demonstraremos como verificar se o SSH está sendo executado no Linux.
SSH em execução no Linux
Existem vários métodos para detectar se o ssh está atualmente em execução no sistema.
Observe que o SSH é dividido em duas seções em termos de funcionalidade: o cliente SSH e o servidor SSH. O cliente se conecta ao servidor usando o protocolo SSH. Uma chave SSH é a medida de segurança padrão para proteger a conexão.
Se o SSH estiver instalado e ativado, é provável que o servidor SSH esteja em funcionamento e funcionamento no sistema, aguardando uma solicitação de conexão SSH. Podemos detectar se o servidor SSH está em execução, mas não fornece informações se uma conexão SSH estiver ativa. Podemos verificar se a porta ssh estiver aberta no momento.
Processo SSH
Este é o primeiro passo para verificar se o SSH está em execução atualmente. Estamos procurando o status do processo SSHD. Detalhes deste guia trabalhando com processos Linux.
Use o comando PS para listar todos os processos e filtrar a saída usando o Grep para verificar se o processo SSH está em execução.
$ ps aux | Grep sshd
Dependendo do estado do processo, a saída será diferente.
Porta ssh
Todo processo/serviço no Linux recebe sua porta dedicada para se comunicar pela rede. SSH, por padrão, está configurado para usar a porta 22 para comunicação remota. Observe que é possível configurar uma porta diferente para SSH. É uma boa medida de segurança para evitar vários ataques, por exemplo, DDOs ou força bruta.
Mesmo que um programa seja dedicado a uma porta específica, a porta não estará aberta se o programa não estiver em execução. Podemos usar esse truque para verificar se o SSH está executando. Se a porta estiver aberta, o ssh estará em funcionamento.
Para verificar a lista de portas abertas, usaremos a ferramenta NetStat. É uma ferramenta dedicada para imprimir várias informações de rede, como conexões de rede, tabelas de roteamento, estatísticas de interface etc. Este guia demonstra o uso aprofundado do NetStat.
O comando a seguir verificará se o SSH está ouvindo a porta 22. Se o SSH estiver configurado para ouvir uma porta diferente, use essa porta.
$ netstat -plant | Grep: 22
Um método alternativo para verificar portas abertas está verificando o arquivo de porta. O comando a seguir imprimirá a lista de todos os arquivos de porta abertos.
$ lsof -i
Outro método é telnet para a porta SSH.
$ Telnet localhost 22
Dependendo se a porta 22 está aberta, a saída variará.
Serviço SSH
Status do serviço SSH
O serviço SSH gerencia o estado do recurso. O comando a seguir imprimirá o status do serviço SSH.
$ sudo systemctl status sshd
$ service status sshd
Parando SSH
Por padrão, o SSH está configurado para começar na inicialização. Se não for necessário ter ssh no momento, então podemos impedi -lo. Observe que requer a conta raiz ou o usuário sem raios com privilégio de sudo para alterar o serviço.
O comando seguinte interromperá o serviço SSH.
$ sudo systemctl pare sshd
$ sudo service sshd parada
Iniciando ssh
Se o SSH não estiver em funcionamento, inicie o serviço SSH. Deve carregar todos os componentes e pronto para aceitar conexões SSH.
$ sudo systemctl start sshd
$ sudo serviço sshd start
Habilitando/desativando SSH
Se um serviço estiver ativado, significa que o sistema iniciará o serviço na inicialização. O sistema não iniciará um serviço desativado na inicialização.
O comando a seguir desativará o serviço SSH. Observe que, para usar o SSH depois, o serviço deve ser iniciado manualmente.
$ sudo systemctl desativando sshd
O comando a seguir marcará o serviço SSH “habilitado”.
$ sudo systemctl habilitar sshd
Pensamentos finais
SSH é um recurso poderoso que torna o gerenciamento remoto muito mais simples. Sua natureza e simplicidade segura inerentes a tornam o padrão da indústria para gerenciamento de sistema remoto. SSH é parte integrante da vida cotidiana de um administrador de um sistema.
Trabalhando com vários sistemas remotos? Em seguida, considere usar Ansible para gerenciar todos eles. Ansible é um sistema de gerenciamento de configuração que usa o SSH para conectar e gerenciar vários sistemas remotos. É uma estrutura robusta para gerenciar todos os seus sistemas remotos de um lugar.
Computação feliz!