Eu entendo onde encontrar os logs, mas nem sempre tenho certeza do que eles significam . E não consigo encontrar exatamente um guia abrangente sobre logs sshd explicando o que eles significam.
Estou particularmente preocupado com este conjunto de tentativas de log:
Feb 03 01:08:47 malan-server sshd[8110]: Invalid user centos from 193.106.58.90 port 34574
Feb 03 01:08:47 malan-server sshd[8110]: pam_tally(sshd:auth): pam_get_uid; no such user
Feb 03 01:08:47 malan-server sshd[8110]: pam_unix(sshd:auth): check pass; user unknown
Feb 03 01:08:47 malan-server sshd[8110]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=193.106.58.90
Feb 03 01:08:48 malan-server sshd[8110]: Failed password for invalid user centos from 193.106.58.90 port 34574 ssh2
Feb 03 01:08:49 malan-server sshd[8110]: Connection closed by invalid user centos 193.106.58.90 port 34574 [preauth]
Feb 03 01:14:30 malan-server sshd[8114]: Invalid user centos from 193.106.58.90 port 39249
Feb 03 01:14:30 malan-server sshd[8114]: pam_tally(sshd:auth): pam_get_uid; no such user
Feb 03 01:14:30 malan-server sshd[8114]: pam_unix(sshd:auth): check pass; user unknown
Feb 03 01:14:30 malan-server sshd[8114]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=193.106.58.90
Feb 03 01:14:32 malan-server sshd[8114]: Failed password for invalid user centos from 193.106.58.90 port 39249 ssh2
Feb 03 01:14:34 malan-server sshd[8114]: Connection closed by invalid user centos 193.106.58.90 port 39249 [preauth]
Feb 03 01:20:18 malan-server sshd[8118]: Invalid user centos from 193.106.58.90 port 43934
Feb 03 01:20:18 malan-server sshd[8118]: pam_tally(sshd:auth): pam_get_uid; no such user
Feb 03 01:20:18 malan-server sshd[8118]: pam_unix(sshd:auth): check pass; user unknown
Feb 03 01:20:18 malan-server sshd[8118]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=193.106.58.90
Feb 03 01:20:20 malan-server sshd[8118]: Failed password for invalid user centos from 193.106.58.90 port 43934 ssh2
Feb 03 01:20:22 malan-server sshd[8118]: Connection closed by invalid user centos 193.106.58.90 port 43934 [preauth]
Feb 03 01:26:06 malan-server sshd[8121]: Invalid user centos from 193.106.58.90 port 48611
Feb 03 01:26:06 malan-server sshd[8121]: pam_tally(sshd:auth): pam_get_uid; no such user
Feb 03 01:26:06 malan-server sshd[8121]: pam_unix(sshd:auth): check pass; user unknown
Feb 03 01:26:06 malan-server sshd[8121]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=193.106.58.90
Feb 03 01:26:08 malan-server sshd[8121]: Failed password for invalid user centos from 193.106.58.90 port 48611 ssh2
Feb 03 01:26:08 malan-server sshd[8121]: Connection closed by invalid user centos 193.106.58.90 port 48611 [preauth]
Há muitos naquele dia do mesmo endereço IP, 193.106.58.90
em Kiev, Ucrânia .
Outro conjunto de logs de aparência assustadora são estes:
Feb 04 19:58:29 malan-server sshd[9725]: Bad protocol version identification 'RFB 003.003' from 142.44.253.51 port 36772
Feb 04 23:47:52 malan-server sshd[9762]: Bad protocol version identification 'REMOTE HI_SRDK_DEV_GetHddInfo MCTP/1.0' from 162.207.145.58 port 48248
Feb 05 06:40:36 malan-server sshd[9836]: Bad protocol version identification 'REMOTE HI_SRDK_DEV_GetHddInfo MCTP/1.0' from 186.4.174.94 port 34515
Feb 05 07:59:13 malan-server sshd[9850]: Bad protocol version identification 'GET / HTTP/1.1' from 209.17.97.34 port 43944
Feb 05 09:09:48 malan-server sshd[9863]: Bad protocol version identification 'REMOTE HI_SRDK_DEV_GetHddInfo MCTP/1.0' from 98.150.93.187 port 60182
Feb 05 14:09:45 malan-server sshd[9911]: Did not receive identification string from 191.232.54.97 port 63982
Feb 05 14:09:45 malan-server sshd[9912]: Bad protocol version identification '\003' from 191.232.54.97 port 64044
Feb 05 14:09:45 malan-server sshd[9913]: Bad protocol version identification '\003' from 191.232.54.97 port 64136
Feb 05 14:33:37 malan-server sshd[9919]: Bad protocol version identification '' from 198.108.67.48 port 56086
O que isso significa?
Entendo que a Internet é um lugar muito ruim e assustador, onde endereços IP voltados para o público são constantemente bombardeados com ataques de bots. Mas eu tenho meu roteador configurado para encaminhar conexões na porta 9000 para a porta 22 do meu servidor, então não tenho certeza de como ainda existem ataques de bots. Parecia improvável para mim que eles estariam verificando todas as 65.535 portas possíveis.
Vou escrever uma lista de perguntas:
- Acabei de escolher uma porta que é muito fácil de adivinhar? Qual seria um número de porta melhor?
- O que os números de porta nesses logs sshd significam? Como eles podem ter acesso à porta 44493 se meu roteador está configurado apenas para encaminhar a porta 9000 para a porta 22? Parece óbvio para mim que o número da porta listado não é a mesma coisa que a porta do computador voltada para fora, porque só acesso pela porta 9000, mas o número da porta listado para meus próprios logins externos não é 9000.
- O que
[preauth]
significa? - O que
Bad protocol version identification 'REMOTE HI_SRDK_DEV_GetHddInfo MCTP/1.0' from 162.207.145.58 port 48248
significa?
Não há uma boa porta para usar, apenas boas configurações SSH. Se você desabilitar logins baseados em senha e permitir apenas autenticação baseada em chave, você não correrá muito risco com essas tentativas de força bruta. Você pode adicionar port-knocking, mas isso é segurança por obscuridade.
Os números de porta listados à direita dos logs são as portas de origem; eles são alocados dinamicamente e estão no sistema de origem, não no sistema de destino.
[preauth]
significa que o evento registrado aconteceu antes da conexão ser autenticada — ou seja , neste caso, a conexão é fechada antes de ser autenticada.Todos os logs do seu segundo conjunto de logs correspondem ao tráfego não SSH enviado ao seu daemon. Você verá isso acontecer bastante, especialmente porque você está ouvindo em uma porta não padrão - vários scanners enviarão solicitações sem saber o que está ouvindo na outra extremidade.
A varredura de grandes porções da Internet, em várias portas, não demora muito se você tiver sistemas bem conectados para varredura ou um grande número de hosts comprometidos em uma botnet. Veja
massscan
um exemplo de uma ferramenta de varredura em massa. Há também listas de endereços IP e portas abertas conhecidas que circulam; então basta uma varredura para encontrar sua porta aberta 9000.Curto de um guia abrangente para logs sshd, mas abordando seus pontos:
Existem "apenas" 65.535 portas, e os scanners são bons em localizá-las, então, uma vez que você passou da porta 22 para evitar as verificações mais simples, não há muito benefício em escolher uma porta arbitrária em vez de outra.
Os números de porta após os IPs, como
209.17.97.34 port 43944
indicam a porta do lado da fonte que provavelmente foi escolhida arbitrariamente pelo kernel desse lado. Não significa quase nada para você.É a abreviação de "pré (antes) autenticação"; ssh executa em estágios, e este é um. Existem outras perguntas semelhantes aqui na U&L .
Uma rápida pesquisa no Google revelou essa estranha consulta nos logs do servidor REMOTE HI_SRDK_DEV_GetHddInfo no Stack Overflow - reforçando a ideia de que este é um scanner procurando por "oportunidades".
Bem, seu material de protocolo ruim está procurando por gravadores de vídeo digital Kguard vulneráveis ao CVE-2015-4464. Eles simplesmente assumem o padrão para a porta 9000 ..
https://dl.packetstormsecurity.net/1506-exploits/kdvr-authorization.txt