Se descobrirmos que nosso servidor VPS está anormal, geralmente podemos analisá-lo a partir dos logs do servidor para ver se existe uma fonte de IP que não segue as “regras”. Por exemplo, podemos usar ferramentas de análise de log do servidor: ngxtop e GoAccess para analisar a origem do IP, número de conexões, solicitações de erro, navegadores, largura de banda do tráfego, etc.
Ao mesmo tempo, para alguns aplicativos de sites complexos, as causas das anormalidades também podem ser analisadas no tráfego de rede do servidor. Este artigo compartilhará duas ferramentas muito práticas de monitoramento de tráfego de rede de servidores: ntopng e Munin. ntopng é uma versão de nova geração do NTOP. A versão oficial original do NTOP não é mais atualizada. O novo ntopng é muito poderoso no monitoramento da transmissão de dados da rede e na solução de falhas da rede.
O ntopng analisa o tráfego da rede para determinar vários problemas na rede. Ele também pode monitorar se os hackers estão atacando a rede. Se a rede ficar lenta repentinamente, por meio dos pacotes de dados interceptados pelo Ntop, pode-se determinar que tipo de pacotes de dados ocupam um grande volume. quantidade de largura de banda, bem como o tempo de envio do pacote de dados, o atraso da transmissão do pacote de dados, o endereço de origem do pacote de dados, etc.
Outra excelente ferramenta de monitoramento de servidor, Munin, é uma ótima ferramenta de monitoramento de sistema semelhante à ferramenta RRD. Ela pode fornecer várias informações de desempenho do sistema, como disco, rede, processo, sistema e usuários. , para que você possa navegar por vários dados de monitoramento diretamente nas páginas da web. Munin também oferece suporte ao monitoramento no modo mestre-escravo.
Como webmaster de base, é muito útil dominar certas ferramentas para webmasters, especialmente quando seu servidor encontra um "ataque", essas "ferramentas afiadas" podem exercer suas capacidades defensivas.
- Ferramentas de análise de log do servidor: ngxtop e GoAccess - monitoramento em tempo real e gerenciamento visual para encontrar rapidamente a origem das exceções
- Instalação e configuração do Smokeping - ferramenta gratuita de monitoramento de desempenho de rede de código aberto, implantação visual mestre/escravo
- Três ferramentas de comando Rsync, SCP e Tar-solução rápida para realocação remota de sites VPS e sincronização de dados
1. Instalação e uso do ntopng
1.1 Preparação antes da instalação
Website oficial:
- HTTP://wuwuwu.yeartop.org/
Tomando o Ubuntu 16.04 como demonstração, atualize antes de iniciar a instalação:
sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now
1.2 Instalar o Ntopng
Basta usar o comando para instalá-lo diretamente:
sudo apt-get install ntopng
1.3 Configurar Ntopng
O arquivo de configuração está localizado em: /etc/ntopng.conf
.
sudo vim /etc/ntopng.conf
Modifique a configuração de acordo com suas necessidades:
# DO NOT REMOVE the following option, required for daemonization.
-e=
# * Interfaces to sniff on: one interface per line, prefix with -i=
# If none is specified, ntopng will try to auto-detect the best interface.
-i=eth0
# * Port on which ntopng will listen for the web-UI.
-w=3000
Salve o arquivo de configuração e reinicie ntopng
:
sudo systemctl restart ntopng
ntopng
também oferece muitas opções, você pode usar ntopng -h
para visualizar:
sudo ntopng -h
1.4 Porta aberta
Você precisa abrir a porta correspondente no firewall VPS. Por exemplo, se 3000 for usado acima, você precisará adicionar o seguinte às regras do firewall:
sudo ufw allow 3000
1.5 uso de Ntopng
Abra seu navegador, acesse o número da porta IP+ e você verá a interface de login do Ntopng. Use o nome de usuário padrão admin
e a senha admin
para fazer login.
Ntopng fornece gráficos de tráfego de rede muito bonitos.
Clique para visualizar a análise de dados de conexão em tempo real, incluindo endereço IP, velocidade de upload e download, protocolo, processo, etc.
Ntopng também possui vários gráficos para escolher, como gráficos de análise de tráfego listados de acordo com endereço IP, cliente de conexão de rede, sistema operacional, endereço Mac, etc.
Se você estiver interessado em uma determinada conexão, você pode clicar para entrar na página de visualização de detalhes, onde o Ntopng exibirá as informações detalhadas do servidor de conexão IP atual, como hora, protocolo, upload, download, Mac, etc. (Clique para ampliar)
Ntopng também possui alguns resumos estatísticos gerais, como estatísticas de ocupação portuária.
Há também um resumo das estatísticas do aplicativo.
Ele também fornece estatísticas e resumo do tráfego da placa de rede com base no tempo, variando de 5 minutos a 1 ano, incluindo estatísticas de tráfego em tempo real. Você só precisa clicar na linha do tempo que deseja exibir. (Clique para ampliar)
2. Instalação e uso do Munin
Website oficial:
- HTTP://木你-monitoring.org/
2.1 Instale rapidamente o Munin
Se o seu servidor foi configurado com ambiente Web, você só precisa instalar o Munin. Se for um sistema Debian ou Ubuntu: apt-get install munin munin-node
, se for um sistema Redhat ou CentOS. : yum install munin munin-node
.
Em seguida, abra o arquivo de configuração principal do munin: /etc/munin/munin.conf. htmldir /var/www/munin é o caminho para acesso à Web. Você pode especificar esses caminhos para um local onde o acesso à Web pode ser usado diretamente.
Depois de especificar o diretório de acesso à Web, você precisa definir as permissões do diretório para munin, caso contrário, munin não poderá gravar dados. Comando: chown -R munin:munin /home/wwwroot/monin
Por fim, espere meia hora, abra seu site e você poderá ver os dados do gráfico de monitoramento do munin.
2.2 Instalar manualmente o Munin
Se você não tiver um ambiente web instalado, como LNMP e Oneinstack, poderá instalar manualmente o Apache e o Munin. Aqui usamos CentOS e Fedora como demonstrações:
2.3 Instalar Repositório EPEL
Instale usando o seguinte comando:
RHEL/CentOS 7
------------------ RHEL/CentOS 7 - 64-Bit ------------------ # wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm # rpm -ivh epel-release-7-9.noarch.rpm
RHEL/CentOS 6
------------------ RHEL/CentOS 6 - 32-Bit ------------------ # wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm # rpm -ivh epel-release-6-8.noarch.rpm ------------------ RHEL/CentOS 6 - 64-Bit ------------------ # wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # rpm -ivh epel-release-6-8.noarch.rpm
RHEL/CentOS 5
------------------ RHEL/CentOS 5 - 32-Bit ------------------ # wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm # rpm -ivh epel-release-5-4.noarch.rpm ------------------ RHEL/CentOS 5 - 64-Bit ------------------ # wget http://download.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm # rpm -ivh epel-release-5-4.noarch.rpm
Depois de instalá-lo, atualize-o:
------------------ On RHEL and CentOS Only ------------------ # yum -y update
2.4 Instalar o Apache
Munin requer Apache ou Nginx para fornecer acesso HTML estático. Vamos instalar o Apache como exemplo:
------------------ On RHEL, CentOS and Fedora ------------------ # yum install httpd ------------------ On Fedora 22+ Releases ------------------ # dnf install httpd
Após a instalação do Apache, configure-o para iniciar automaticamente na inicialização.
------------------ On RHEL, CentOS and Fedora ------------------ # service httpd start # chkconfig --level 35 httpd on ------------------ On RHEL/CentOS 7 and Fedora 22+ ------------------ # systemctl enable httpd # systemctl start httpd
2.5 Instalar Munin e Munin-Node
Instale Munin e Munin-Node diretamente usando os seguintes comandos:
------------------ On RHEL, CentOS and Fedora ------------------ # yum -y install munin munin-node ------------------ On Fedora 22+ Releases ------------------ # dnf -y install munin munin-node
Após a instalação do Munin, você pode começar a editar o arquivo de configuração do Munin. A seguir está o diretório das funções relacionadas ao Munin:
/etc/munin/munin.conf : arquivo de configuração Munin.
/etc/cron.d/munin: arquivo de tempo Munin.
/etc/httpd/conf.d/munin.conf : arquivo de configuração Munin Apache.
/var/log/munin : log Munin.
/var/www/html/munin : diretório da web Munin.
/etc/munin/munin-node.conf : arquivo de configuração do nó escravo Munin.
/etc/munin/plugins.conf : arquivo de configuração de plug-ins Munin.
Finalmente, reinicie o Munin e configure-o para iniciar automaticamente na inicialização:
------------------ On RHEL, CentOS and Fedora ------------------ # service munin-node start # chkconfig --level 35 munin-node on ------------------ On RHEL/CentOS 7 and Fedora 22+ ------------------ # systemctl enable munin-node # systemctl start munin-node
Abra o navegador e você poderá ver o gráfico de dados monitorado por Munin.
2.6 Munin monitora o status de vários servidores
Insira seu outro host VPS, você só precisa instalar munin-node
:
# yum install munin-node # dnf install munin-node [On Fedora 22+ versions] # apt-get install munin-node [On Debian based systems]
Em seguida, abra /etc/munin/munin-node.conf
e adicione o IP do servidor host munin.
# vi /etc/munin/munin-node.conf
Suponha que o IP do seu servidor principal Munin seja 192.168.0.103 e o formato seja o seguinte:
# A list of addresses that are allowed to connect. allow ^127.0.0.1$ allow ^::1$ allow ^192.168.0.103$
Reinicie o cliente munin:
------------------ On RHEL, CentOS and Fedora ------------------ # service munin-node start # chkconfig --level 35 munin-node on ------------------ On RHEL/CentOS 7 and Fedora 22+ ------------------ # systemctl enable munin-node # systemctl start munin-node
Agora abra em seu servidor principal Munin: /etc/munin/munin.conf
Adicione seu nó cliente, principalmente o nome e endereço IP:
# a simple host tree [munin.wzfou.com] address 127.0.0.1 use_node_name yes [node.wzfou.com] address 192.168.0.15 use_node_name yes
Por fim, reinicie o servidor munin e abra http://munin.wzfou.com/munin
para ver o gráfico de dados de monitoramento dos nós mestre e escravo.
3. Resumo
Ntopng e Munin são ferramentas de monitoramento de rede muito boas. Ambos podem gerar gráficos para navegação online, mas cada ferramenta tem seu próprio foco. Pode-se dizer que o Ntopng é um monitoramento de nível profissional do tráfego de rede. . Conecte diversas informações do cliente, o que é muito útil para analisar ataques à rede.
Pode-se dizer que Munin é uma plataforma abrangente de monitoramento de desempenho de servidor. Além de obter informações como tráfego de rede, você também pode ver várias informações, como capacidade do disco rígido, leitura e gravação de IO, uso de CPU, uso de memória, etc. mais adequado para uso geral de monitor de servidores. Se não quiser tornar públicos os gráficos de dados gerados pelo Munin, você pode usar o Apache para definir uma senha de acesso.