FPI - Fórum para Provedores de Internet
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
FPI - Fórum para Provedores de Internet


Você não está conectado. Conecte-se ou registre-se

Instalação de um servidor NTP ( Network Time Protocol ou Protocolo de Tempo para Redes)

Ir para baixo  Mensagem [Página 1 de 1]

demattos

demattos
MODERADOR
MODERADOR

Bom desde ontem estava achando uma maneira de minhas RB sincronizarem suas datas e horas em meu servidor Linux local, então inciei minhas buscas em fazer um servidor NTP Network Time Protocol ou Protocolo de Tempo para Redes, ou seja, um protocolo que permite a sincronização dos relógios dos dispositivos de uma rede como servidores, rbs mikrotik, clientes windows , linux. Este tutorial pode ser aplicado em qualquer distro linux, unix e BSD, vamos ao que interessa.

Introdução

Uma característica básica e ao mesmo tempo importante do tempo é que ele sempre avança. O tempo não para e não volta para trás. Vários programas de computador fazem uso dessa característica e podem ter seu funcionamento comprometido se o relógio do computador inesperadamente passar a indicar um horário errado, especialmente se for um horário no passado. Isso se complica ainda mais na Internet, com vários computadores trocando informações entre si!

Infelizmente os relógios dos computadores são imprecisos e se adiantam ou se atrasam com o passar do tempo. É muito fácil também trocar seu horário para o passado ou para o futuro, mesmo acidentalmente.

O NTP é um protocolo para sincronização dos relógios dos computadores, ou seja, ele define um jeito para um grupo de computadores conversar entre si e acertar seus relógios, baseados em alguma fonte precisa de tempo, como os relógios atômicos do Observatório Nacional, que definem a Hora Legal Brasileira.

Em sua versão mais completa, o NTP é bastante robusto e preciso. Ele consulta vários outros computadores para saber a hora certa, e consegue distinguir os que falam a verdade e os que estão enganados. Ele também aprende se o relógio de seu computador é viciado em adiantar-se ou atrasar-se e usa essa informação para ajustá-lo constantemente.

Com o NTP é fácil manter o relógio do computador sempre com a hora certa, com exatidão de alguns milésimos de segundo, e só há vantagens em se fazer isso!

O NTP.br através de seus servidores públicos ajuda a manter seu computador sincronizado com a Hora Legal Brasileira e com o Tempo Universal Coordenado (UTC). Siga as instruções do seu equipamento ou sistema operacional e utilize os servidores do NTP.br, ou consulte os próximos itens, para algumas configurações mais comuns.

Os servidores do NTP.br são os seguintes:
Nome Endereço
a.st1.ntp.br 200.160.7.186 e 2001:12ff:0:7::186
b.st1.ntp.br 201.49.148.135
c.st1.ntp.br 200.186.125.195
d.st1.ntp.br 200.192.232.8
a.ntp.br 200.160.0.8 e 2001:12ff::8
b.ntp.br 200.189.40.8
c.ntp.br 200.192.232.8
gps.ntp.br 200.160.7.193 e 2001:12ff:0:7::193


Instalação para GNU/Linux e outros sistemas baseados em Unix.

Para GNU/Linux, FreeBSD, OpenBSD e outros sistemas baseados em Unix, utilize o método de instalação apropriado para sua distribuição. Para algumas distribuições a tabela abaixo indica uma das possíveis formas de instalação. Pode haver métodos alternativos para a instalação, por isso é recomendável consultar a documentação da sua distribuição.

Pode-se também realizar a instalação manual, baseada nos fontes. Se você estiver instalando o ntp com a finalidade de ser um servidor de tempo para sua rede, é recomendável fazer a instalação à partir dos fontes.

Sistema Instalação
Debian GNU/Linux e sistemas que usam apt (Ubuntu, Kurumin, Conectiva, etc) root@host# apt-get update
root@host# apt-get install ntp
RedHat GNU/Linux e sistemas que usam rpm (Fedora, etc): root@host# yum install ntp
Gentoo GNU/Linux: root@host# emerge sync
root@host# emerge ntp
Slackware GNU/Linux: root@host# slackpkg update
root@host# slackpkg install ntp
FreeBSD e OpenBSD # cd /usr/ports/net/ntp
# make install

As distribuições acima podem ter métodos alternativos para a instalação, verifique a documentação de sua distribuição. Para outras distribuições verifique o método de instalação recomendado na documentação.

Após instalar o ntp, crie o arquivo ntp.drift com o comando:


# touch /etc/ntp.drift

Se a hora de seu computador estiver com um erro maior do que 16min o ntp pode não funcionar. Se for o caso, ajuste a hora manualmente, antes de iniciar o ntpd. Ou então execute o ntpd com os parâmetros abaixo, para um primeiro ajuste, e depois inicie o serviço:

# ntpd -q -g

Substitua o conteúdo do arquivo de configuração padrão /etc/ntp.conf pela configuração abaixo.

# "memoria" para o escorregamento de frequencia do micro
# pode ser necessario criar esse arquivo manualmente com
# o comando touch ntp.drift
driftfile /etc/ntp.drift

# estatisticas do ntp que permitem verificar o historico
# de funcionamento e gerar graficos
statsdir /var/log/ntpstats/
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

# servidores publicos do projeto ntp.br
server a.st1.ntp.br iburst
server b.st1.ntp.br iburst
server c.st1.ntp.br iburst
server d.st1.ntp.br iburst
server gps.ntp.br iburst
server a.ntp.br iburst
server b.ntp.br iburst
server c.ntp.br iburst

# outros servidores
# server outro-servidor.dominio.br iburst

# configuracoes de restricao de acesso
restrict default kod notrap nomodify nopeer
restrict -6 default kod notrap nomodify nopeer

Após modificar a configuração é preciso reiniciar o ntpd.
Verifique sua instalação.

Assista a um mini tutorial em vídeo que mostra a instalação num sistema Debian GNU/Linux:



Instalação do NTP à partir dos fontes

A instalação à partir dos fontes permite trabalhar com a última versão do ntp. Permite também ter certeza de que se está rodando o software padrão, sem modificações de terceiros. Verifique no site do NTP http://www.ntp.org/downloads.html qual o link para o download da versão mais recente. Na época em que essa página foi escrita a versão mais recente era 4.2.4p4.

Faça o download do arquivo, descompacte-o, entre na pasta criada e então rode o script de configuração, compile e instale:


root@servidor# wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.4p4.tar.gz
root@servidor# tar zxvf ntp-4.2.4p4.tar.gz
root@servidor# cd ntp-4.2.4p4
root@servidor:~/ntp-4.2.4p4# ./configure
root@servidor:~/ntp-4.2.4p4# make
root@servidor:~/ntp-4.2.4p4# make install

Substitua o conteúdo do arquivo de configuração padrão /etc/ntp.conf pela configuração abaixo.


root@servidor:~/ntp-4.2.4p4# wget http://www.ntp.br/xnix/ntp.conf
root@servidor:~/ntp-4.2.4p4# cp ./ntp.conf /etc/ntp.conf

# "memoria" para o escorregamento de frequencia do micro
# pode ser necessario criar esse arquivo manualmente com
# o comando touch ntp.drift
driftfile /etc/ntp.drift

# estatisticas do ntp que permitem verificar o historico
# de funcionamento e gerar graficos
statsdir /var/log/ntpstats/
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

# servidores publicos do projeto ntp.br
server a.st1.ntp.br iburst
server b.st1.ntp.br iburst
server c.st1.ntp.br iburst
server d.st1.ntp.br iburst
server gps.ntp.br iburst
server a.ntp.br iburst
server b.ntp.br iburst
server c.ntp.br iburst

# outros servidores
# server outro-servidor.dominio.br iburst

# configuracoes de restricao de acesso
restrict default kod notrap nomodify nopeer
restrict -6 default kod notrap nomodify nopeer

A hora do seu computador pode ser ajustada inicialmente com o seguinte comando:


#/usr/local/bin/ntpd -q -g

Isso permite que o ntp ajuste seu relógio mesmo que ele tenha um erro de tempo absurdamente alto (maior que 16 min). O daemon ntp pode ser executado então:


#/usr/local/bin/ntpd

Arquivos de inicialização apropriados podem ser criados conforme o padrão de sua distribuição.

Assista a um mini tutorial em vídeo mostrando essa instalação:


Ferramentas de Monitoração

O ntp traz consigo algumas ferramentas que permitem monitorar seu funcionamento. A mais importante é o ntpq. A seguir são apresentados dois comandos do ntpq que permitem visualizar algumas variáveis importantes do ntp:

ntpq -c pe

Se for obtida uma resposta como:


server:/home/moreiras# ntpq -c pe
ntpq: read: Connection refused

Significa que o serviço ntp não está funcionando. Uma reposta normal se parece com essa:


remote refid st t when poll reach delay offset jitter
================================================================================
+a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521
+b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229
*c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424

Pode-se ver os 3 servidores do projeto ntp.br:

remote refid st t when poll reach delay offset jitter
================================================================================
+a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521
+b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229
*c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424

O * em c.ntp.br significa que ele foi escolhido como system peer, ou seja, a principal referência na sincronização do sistema. Os + em a.ntp.br e b.ntp.br, significa que eles também estão sendo usados, mas com peso menor, para obter a hora certa.
Pode-se observar também o offset, ou deslocamento, delay, ou atraso, e o jitter, ou variação, todos em milisegundos:

remote refid st t when poll reach delay offset jitter
================================================================================
+a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521
+b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229
*c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424

O atraso significa o tempo de ida e volta dos pacotes. O valor do atraso não é tão importante, mas o ntp é sensível à simetria da rede. Ou seja, o ntp espera que o tempo de ida dos pacotes seja igual ao da volta. Isso geralmente está relacionado a atrasos pequenos.
O deslocamento significa o quanto o relógio local tem de ser adiantado ou atrasado para se igualar ao relógio do servidor. Quanto menor o valor, melhor. Valores de alguns milisegundos podem ser considerados normais.
A variação é calculada à partir de diversas medidas de deslocamento. Representa o quanto essas medidas variam entre si. Valores pequenos são melhores. Valores grandes podem indicar problemas de conectividade.
A variável reach é um número octal que indica o resultado das últimas 8 tentativas de acesso ao servidor.

remote refid st t when poll reach delay offset jitter
================================================================================
+a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521
+b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229
*c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424

O valor 377 indica que as últimas 8 consultas ao servidor obtiveram sucesso. Outros valores indicam falhas.

ntpq -c rl

Uma reposta normal se parece com essa:


server:/home/moreiras# ntpq -c rl

assID=0 status=0654 leap_none, sync_ntp, 5 events, event_peer/strat_chg,
version="ntpd 4.2.2p4@1.1585-o Sun Mar 4 13:21:35 UTC 2007 (1)",
processor="i686", system="Linux/2.6.9-023stab043.1-smp", leap=00,
stratum=3, precision=-20, rootdelay=224.336, rootdispersion=35.121,
peer=4764, refid=200.192.232.8,
reftime=cb30d5b2.559c02d8 Thu, Jan 10 2008 15:34:42.334, poll=7,
clock=cb30d6d8.ee2e88ee Thu, Jan 10 2008 15:39:36.930, state=4,
offset=10.396, frequency=0.000, jitter=14.973, noise=8.978,
stability=0.000, tai=0

Dentre as várias informações obtidas, pode-se destacar a versão do ntp, em verde; o estrato, em vermelho (3 é o nível esperado, já que os servidores públicos do ntp.br são estrato 2); e o deslocamento, em milisegundos, em azul, que indica quanto o relógio local tem de ser adiantado ou atrasado para chegar à hora certa.

Fonte: http://www.ntp.br
Testado e funcionando em um Linux CentOS

Abraco a todos

http://www.criciumanet.com.br

Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos