Existe uma maneira fácil de encontrar o que meu servidor “faz”?

0

Eu recebi acesso a alguns servidores Linux para ajudar a adicionar capacidade a uma rede. Agora gostaria de saber se há mais maneiras de examinar o servidor do que apenas executar top e ver o que está sendo executado?

Se eu quiser ter uma boa visão geral enquanto estiver logado via ssh, existe uma maneira informativa de obter uma visão geral rápida de quais serviços e daemons estão sendo executados e o que eles estão fazendo?

    
por Niklas Rosencrantz 12.07.2017 / 10:04

3 respostas

4

Você pode considerar usar htop em vez de top para uma saída mais gráfica.

Em seguida, você pode usar lsof -p <pid> para ver quais arquivos são abertos por um serviço, incluindo arquivos de rede. lsof tem uma grande variedade de opções, sugiro que você consulte man 8 lsof .

Em seguida, você pode usar iptop para ver as conexões de rede atuais. Novamente, essas ferramentas oferecem muitas opções, como mostrar os endereços IP resolvidos da máquina remota à qual seu servidor está conectado ou seus nomes de domínio.

monitorix mostra a média e o uso da carga do sistema, alocação de memória, integridade do driver de disco, serviços do sistema, portas de rede, estatísticas de correio.

Se você estiver preocupado com a segurança, o Mecanismo Suricata é "capaz de detecção de intrusão em tempo real (IDS), prevenção de intrusão em linha (IPS) ), monitoramento de segurança de rede (NSM) e processamento pcap offline ". É gratuito e de código aberto.

Para uma ferramenta completa para monitorar quase tudo na máquina, existe Collectl , uma ferramenta completa para monitorar e coletar informações sobre o sistema Linux recursos como uso da CPU, memória, rede, inodes, processos, nfs, tcp, sockets. Em francês, usamos a expressão 'usine à gaz', traduzida para 'sistema labiríntico' para essas ferramentas, mas parece muito eficaz.

    
por 12.07.2017 / 10:42
1

Você realmente deve checar toda a porta tcp / udp se quiser saber o que seu servidor está servindo:

netstat -ltu  

l para ouvir
t para o tcp
u para o udp

Também para saber quais serviços são iniciados no momento da inicialização:

service --status-all

e com systemd

systemctl list-units
    
por 12.07.2017 / 14:49
1

Meu primeiro comando seria

>netstat -lpunt

Isso lista todas as portas de escuta, com o id do processo proprietário um nome de programa.

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      18637/mysqld

Oh, olhe. está executando o mysql. Dê uma olhada nos nomes de banco de dados definidos.

tcp6       0      0 :::8084                 :::*                    LISTEN      18034/java

Java. Pode ser tomcat ...

>ps ax | grep 18034
18034 ?        Ssl    0:34 /usr/lib/jvm/jre/bin/java -classpath /usr/share/tomcat/bin/bootstrap.jar:/usr/share/tomca

sim é. Vá em / usr / share / tomcat e veja quais arquivos .war existem.

tcp6       0      0 :::80                   :::*                    LISTEN      20336/httpd

Apache. Encontre os arquivos de definição do site.

... e assim por diante. Gernally, os servidores publicam seus serviços por IP, então os soquetes de escuta são um bom lugar para começar.

Se a máquina estiver "ocupada",

iotop -o -d 10

mostrará a você quais processos estão realmente martelando os discos.

    
por 19.07.2017 / 13:32