Como descobrir o que ou quem está usando minha largura de banda?

16

Para ser honesto, sou pobre em administração de servidores, mas meu chefe me pediu ajuda. Seu servidor tem uma largura de banda limitada de 2GB / dia e hoje ele recebeu um aviso da empresa que ele ultrapassou e usou ... 24GB.

Como é impossível porque ele era assim, ele me perguntou se eu posso rastrear o problema. Não tenho ideia de onde começar ou o que fazer.

Qualquer informação seria útil para descobrir o que está errado.

A máquina está funcionando no Ubuntu 12.04. O mais curioso é que, de acordo com os diagramas recebidos do hoster, apenas a transferência de saída foi usada.

EDITAR

Obrigado por sugestões, eu vou rodar o tcpdump e tentar examinar o resultado

    
por kamil 16.07.2012 / 00:41

8 respostas

1

Depois de pesquisar por um bom tempo qual é o problema (mais de 60 GB de largura de banda em alguns dias), descobri que meu servidor era uma fonte de ataque DDOS.

Primeiro de tudo, eu tentei instalar o Oracle DB nele, então eu criei o usuário oracle. Hackers de alguma forma conseguiram quebrar o passe para aquele usuário (acho que eu deveria tornar mais difícil :(), eles criaram um diretório oculto sob o Oracle home, com um crontab lá, que manualmente executava alguns deamons que inundavam o servidor de destino.

Além disso, os hackers criaram 2 novos usuários no meu servidor: avahi e colord. O que devo fazer sobre eles? Eu googled e parece que o software com o mesmo nome não é perigoso, mas eu apaguei esses usuários (e oracle também).

Futheremore eu deletei o oracle inteiro para casa, com tudo nele.

Acho que preciso proteger mais o meu servidor, pois ele pode ser atacado novamente. Obrigado a todos pela ajuda!

    
por 17.07.2012 / 10:16
17

Para monitoramento imediato, você pode usar iftop . Isso mostrará as conexões atualmente ativas e a largura de banda que estão usando. Depois de identificar uma conexão de alto tráfego, localize o número da porta local e use netstat para descobrir a qual processo a conexão pertence.

sudo netstat -tpn | grep 12345

Para um monitoramento de longo prazo, eu sugeriria algo como darkstat . Isso pode fornecer um detalhamento por host e porta, o que pode permitir que você descubra com o que o tráfego está relacionado.

    
por 16.07.2012 / 00:58
7

Eu recomendaria instalar o ntop.

link

Coloque isso em um local de gateway / roteador do host e observe o tráfego por um dia / semana. O Ntop fornece uma interface do usuário da web onde você pode obter um detalhamento por IP / porta / protocolo.

    
por 16.07.2012 / 01:39
2

Bem, uma captura de pacotes é tipicamente o primeiro lugar para começar em situações como essas. Certifique-se de que o tcpdump esteja instalado ( $ sudo apt-get install tcpdump ) e, em seguida, execute o seguinte:

$ sudo tcpdump -w packet.log

Isto irá escrever um log de todos os pacotes para packet.log . Deixe isso funcionar por alguns minutos, depois baixe o arquivo e inspecione usando o Wireshark . Se o tráfego misterioso ainda estiver acontecendo, deve ser bastante óbvio com uma rápida olhada nos dados de captura de pacotes.

    
por 16.07.2012 / 00:48
2

Dê uma olhada no tcpdump . Ele pode despejar todo o tráfego de rede (não apenas o tcp como o nome sugere), que você pode ler com um aplicativo como o Wireshark. No Wireshark é muito fácil filtrar certos tipos de dados e até mesmo traçar gráficos da E / S da rede.

Outra ferramenta útil pode ser o netstat, que exibe uma lista de conexões de rede em andamento. Talvez existam conexões que não deveriam estar lá. O tcpdump é muito mais útil (capture alguns minutos e, em seguida, verifique se você já pode ver a origem), mas o netstat pode fornecer uma visão geral rápida.

Ao ler isso, meus primeiros pensamentos são que você tem malware em seu servidor ou que está sendo usado para ataques de amplificação. Mas, para examinar isso, você precisará executar o tcpdump primeiro.

Edit: Note que o tcpdump provavelmente precisa ser executado como root, talvez você precise usar sudo tcpdump .

Outra edição: Como não consigo encontrar uma boa página da Web para vincular os ataques de amplificação em geral, aqui está uma versão curta:

Protocolos como o DNS são executados no UDP. O tráfego UDP é sem conexão e, portanto, é muito fácil falsificar o endereço IP de outra pessoa. Como uma resposta de DNS geralmente é maior que a consulta, isso pode ser usado para um ataque de DoS. O invasor envia uma consulta solicitando todos os registros que o servidor DNS possui em um determinado nome e informa ao servidor DNS que a solicitação se originou de X. Esse X é o destino que o invasor deseja fazer DoS. O servidor DNS então responde gentilmente, enviando a resposta (grande, digamos, 4kB) para o X.

Isso é amplificação porque o invasor envia menos dados do que X realmente recebe. O DNS não é o único protocolo com o qual isso é possível.

    
por 16.07.2012 / 00:48
1

A melhor ferramenta para isso é provavelmente iftop , e facilmente acessível via sudo apt- instale o iftop. Ele exibirá a saída de acordo com os nomes de host / IP do culpado:

             191Mb      381Mb                 572Mb       763Mb             954Mb
└────────────┴──────────┴─────────────────────┴───────────┴──────────────────────
box4.local            => box-2.local                      91.0Mb  27.0Mb  15.1Mb
                      <=                                  1.59Mb   761kb   452kb
box4.local            => box.local                         560b   26.8kb  27.7kb
                      <=                                   880b   31.3kb  32.1kb
box4.local            => userify.com                         0b   11.4kb  8.01kb
                      <=                                  1.17kb  2.39kb  1.75kb
box4.local            => b.resolvers.Level3.net              0b     58b    168b
                      <=                                     0b     83b    288b
box4.local            => stackoverflow.com                   0b     42b     21b
                      <=                                     0b     42b     21b
box4.local            => 224.0.0.251                         0b      0b    179b
                      <=                                     0b      0b      0b
224.0.0.251           => box-2.local                         0b      0b      0b
                      <=                                     0b      0b     36b
224.0.0.251           => box.local                           0b      0b      0b
                      <=                                     0b      0b     35b


─────────────────────────────────────────────────────────────────────────────────
TX:           cum:   37.9MB   peak:   91.0Mb     rates:   91.0Mb  27.1Mb  15.2Mb
RX:                  1.19MB           1.89Mb              1.59Mb   795kb   486kb
TOTAL:               39.1MB           92.6Mb              92.6Mb  27.9Mb  15.6Mb

Não se esqueça dos clássicos e poderosos utilitários sar e netstat no antigo * nix!

Outra ótima ferramenta é nload , uma ótima ferramenta para monitorar largura de banda em tempo real e facilmente instalado no Ubuntu ou Debian com o sudo apt-get install nload.

Device eth0 [10.10.10.5] (1/2):
=====================================================================================
Incoming:


                               .         ...|
                               #         ####|
                           .. |#|  ...   #####.         ..          Curr: 2.07 MBit/s
                          ###.###  #### #######|.     . ##      |   Avg: 1.41 MBit/s
                         ########|#########################.   ###  Min: 1.12 kBit/s
             ........    ###################################  .###  Max: 4.49 MBit/s
           .##########. |###################################|#####  Ttl: 1.94 GByte
Outgoing:
            ##########  ###########    ###########################
            ##########  ###########    ###########################
            ##########. ###########   .###########################
            ########### ###########  #############################
            ########### ###########..#############################
           ############ ##########################################
           ############ ##########################################
           ############ ##########################################  Curr: 63.88 MBit/s
           ############ ##########################################  Avg: 32.04 MBit/s
           ############ ##########################################  Min: 0.00 Bit/s
           ############ ##########################################  Max: 93.23 MBit/s
         ############## ##########################################  Ttl: 2.49 GByte
    
por 10.04.2014 / 00:43
0

Capturar todos os pacotes enviados em um dia quando você exceder sua cota de largura de banda provavelmente não é a abordagem mais sensata - como você obterá os dados do sistema para análise?

Qual acesso você tem na caixa? Quais portas estão abertas? Você verificou os logs dos serviços em execução? Algo como awstats resumirá logs de FTP, HTTP e SMTP (assumindo que esses servidores estejam configurados para registrar os dados em logs). O OTOH mrtg registrará e rastreará o uso da rede pelo terminal / porta.

    
por 16.07.2012 / 11:33
0

se você acha que o hull de largura de banda é o apache, tive sucesso com essa ferramenta no passado

topo do apache

link

    
por 16.07.2012 / 13:11

Tags