Alguém está tentando invadir meu servidor? O que eu posso fazer?

12

Algumas semanas atrás, postei uma pergunta aqui sobre alguns sshproblemas que eu estava tendo com uma caixa do Ubuntu 12.04. Avanço rápido de hoje e estou tentando permitir que outra pessoa acesse a máquina, mas ela continua recebendo erros de senha. Saí var/logs/auth.logpara mais informações e descobri o seguinte:

May 11 19:45:33 myserver sshd[9264]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:38 myserver sshd[9267]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:44 myserver sshd[9270]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:49 myserver sshd[9274]: Did not receive identification string from 211.110.xxx.x

Eu tenho quase 10000 linhas que parecem dizer mais ou menos a mesma coisa (também existem 4 arquivos auth.log.gz, que eu suponho que sejam mais do mesmo?). Às vezes, há um nome de usuário aleatório anexado à solicitação,input_userauth_request: invalid user bash [preauth]

Não sei muito sobre servidores, mas parece que alguém está tentando obter acesso aos meus.

Pesquisei no Google como bloquear um endereço IP no Ubuntu e acabei com isso: iptables -A INPUT -s 211.110.xxx.x -j DROPmas, depois de executar esse comando e verificar os logs, ainda estou recebendo solicitações desse IP a cada 5 segundos.

Como posso descobrir mais sobre o que está acontecendo e lidar com essas solicitações constantes?

user2936314
fonte
Denyhosts é grande, mas nota que é um projeto morto :( você deve olhar em usar iptables askubuntu.com/questions/433924/...
amc

Respostas:

14

Pelo que você descreve, parece um ataque automatizado ao seu servidor. A maioria dos ataques ocorre, a menos que o atacante o conheça pessoalmente e esteja com rancor ...

De qualquer forma, convém procurar denyhosts, que você pode obter dos repositórios de costume. Ele pode analisar tentativas repetidas e bloqueará o endereço IP. Você ainda pode receber algo em seus logs, mas pelo menos isso ajudará a atenuar qualquer problema de segurança.

Quanto a obter mais informações, eu realmente não me incomodaria. A menos que sejam amadores, eles usarão um servidor remoto para fazer seu trabalho sujo, o que não dirá nada sobre quem eles realmente são. Sua melhor aposta é encontrar o administrador do intervalo de IPs (WHOIS é seu amigo aqui) e informar que você está recebendo muitas tentativas de acesso desse IP. Eles podem ser bons o suficiente para fazer algo sobre isso.

Drac Noc
fonte
3
+1. Você abriu uma porta para a Internet externa: as pessoas estão tentando obter acesso, mas falham. Isso é mais ou menos normal, como de costume. Se você tiver acesso a um roteador upstream, poderá configurá-lo para eliminar as conexões do 211.110.xxx.x, para que seus próprios arquivos de log não sejam poluídos de maneira tão grave.
11447 Jos
Adicionei denyhosts e agora os logs são exibidos refused connect from...., mas estou curioso para saber se receber essas solicitações sem sentido a cada 5 segundos pode ser um problema para o desempenho do servidor posteriormente? Como sei se tenho acesso a um roteador upstream? Eu apenas tenho acesso root
user2936314
2
Por roteador upstream, quero dizer um roteador de gateway em sua própria rede doméstica ou corporativa que você administra. Se você não sabe, provavelmente não tem acesso a ele. Deixar cair pacotes dificilmente é um problema de desempenho.
1155 Jos
2
Obter uma solicitação de um IP a cada 5 segundos não afetará seu desempenho por nenhuma medida significativa.
Drac Noc
3
Para os servidores que estão expostos à rede (bem, para todos os servidores ssh realmente) você deve definir PermitRootLogin noe PasswordAuthentication noem / etc / ssh / sshd_config
unhammer
3

Você não deseja ver essas tentativas de logon com falha nos seus logs, portanto, você deve filtrar esse IP na rede.

Se você possui um firewall de roteador ou hardware próprio (não o do servidor), use-o para bloquear este IP. Você também pode pedir ao seu provedor de internet para bloqueá-lo.

Se o servidor for VPS, peça ao seu provedor VPS para bloquear este IP. Na maioria dos casos, eles não rejeitam seu pedido de ajuda, pois isso não lhes custa nada.

Ataques de IP único podem ser facilmente mitigados em comparação com ataques provenientes de muitos IPs diferentes. Para se proteger contra ataques distribuídos, você precisa de um serviço especial do provedor de rede que deve pagar. No nível do servidor, você pode lutar com Denyhosts ou Fail2ban. O Fail2ban protege não apenas o ssh, mas outros serviços. Ele usa um pouco mais de memória. Fail2ban usa iptables para bloquear IPs e DenyHosts usa o arquivo hosts.deny, ambos usam logs para encontrar tentativas maliciosas. Você também pode configurar o iptables para tentativas ssh de limitação de taxa que não dependem de logs.

vladiz
fonte
Existe uma maneira de parar o log deste IP de dentro da minha máquina?
User2936314
Não é uma boa ideia filtrar seus logs. Você nunca sabe, eles podem ter sorte e você precisará de um histórico completo do que aconteceu.
Drac Noc
@ user2936314 Não é uma boa ideia, é melhor você mudar a porta ssh. Alterar a porta não é a solução perfeita, mas você se livra de muitos bots. Alguns deles são mais inteligentes e procuram portas abertas. Eu tive o mesmo problema e o fail2ban estava bloqueando 20 IPs por dia. Depois de alterar a porta SSH eu observar diminuição significativa de tentativas ssh maliciosos
vladiz
Vocês são todos incríveis. Leitura recomendada para introdução ao administrador do servidor ubuntu? Estou lendo A interface de programação do Linux, mas não parece que esse tipo de coisa seja muito abordada
user2936314
1
@ user2936314 Verifique a documentação oficial , o guia do servidor para Ubuntu 12.04 ou a versão que você precisa.
Vladiz 13/05
0

Todas as boas respostas acima, no entanto ...

Você escreveu "Estou tentando permitir que outra pessoa acesse a máquina, mas ela continua recebendo erros de senha"

Como a maioria de nós possui um IP dinâmico com um tempo de concessão de DNS de provedor limitado, a maioria de nós usa um serviço DNS dinâmico para acessar nosso servidor quando estiver em trânsito. Será que seu usuário remoto também está usando esse serviço para chegar até você e esse é o endereço da PIO que você está vendo?

BTW - muitos hackers de "escutas portuárias" dependem de você fazer o que muitos usuários de servidor doméstico fazem, ou seja, eles não alteram o ID de login do estado de entrega padrão. (geralmente "admin" !!) e apenas ative todas as combinações possíveis da senha

David Walker
fonte
Pensei nesse caso quando notei os logs pela primeira vez. Eu verifiquei com a pessoa que eu sei que estava tentando acessar a máquina e o IP dele não correspondia ao dos registros. Eu sei que ele também não tenta entrar a cada 5 segundos há dias. Bom ponto sobre ips dinâmicos, no entanto, estou um pouco preocupado com o denyhostsfato de que vou acabar me bloqueando se / quando meu IP mudar. Parece que meu fim de semana será gasto passando por isso [ askubuntu.com/questions/2271/how-to-harden-an-ssh-server] e os documentos
user2936314
0

Acho que você descobrirá que 99% das tentativas de hackers vêm da China. Isto é o que eu encontrei. É inútil relatar um IP chinês para hackers, pois provavelmente é sancionado pelo Estado. Não bloqueio apenas o IP, bloqueio o intervalo em que o IP está. Use a opção "sub-rede" no seu roteador ou com o IPTables na sua caixa Linux, use a sub-rede ou "/ bits" (por exemplo: / 24). Esta página fornece uma lista de bloqueios de IP por país (há um arquivo tar.gz com todos): http://www.ipdeny.com/ipblocks/data/countries . A página da web WHOIS https://whois-search.com/ fornece um bom começo para qual país procurar.

Wazza65
fonte
-1

1º. A menos que você nunca precise abrir portas padrão para o servidor na rede. Configure o roteador para abrir uma porta aleatória como 53846 e encaminhá-lo para a porta 22 da máquina.

Os hackers de oportunidade podem verificar uma ampla variedade de endereços IP em busca de portas conhecidas como 22 e tentar explorar.

2nd bateu de volta. Nmap-lo e descobrir o que ele está executando. Em seguida, tente obter acesso ao dele. Assim como o fogo de retorno. Se ele souber que você está com ele, a bainha pode parar.

Você também pode pingá-lo como um louco como um tiro de aviso.

3º. Se você quiser se divertir, pode abrir a conta de convidado. Verifique se não há privilégios. Limite-o ao diretório pessoal dos convidados. Se você quer ser fofo, pode configurar uma estrutura de diretório raiz falsa para dar uma volta. Defina a senha como uma senha comum ou sem senha.

Então você pode usar o comando write e perguntar a ele por que ele insiste em martelar seu servidor.

Don
fonte
(1) apenas obscurece as rotas de acesso, mas não as protege. (2) é ilegal na maioria das jurisdições. (3) é arriscado, porque a configuração incorreta acontece e podem existir vulnerabilidades de escalação de privilégios, e provavelmente sem sentido, pois a maioria dos ataques é automatizada para executar em intervalos de endereços IP, como você mesmo indica.
David Foerster