Compaire NTPD e ntpdate

Quais são os prós e contras entre estas duas maneiras de sincronizair o seu server?

Pairece-me que o seu server provavelmente não drift mais de 1 segundo todos os dias, então ntpdate em um crontab seria ok. Mas eu ouvi você poder usair serveres NTP redundantes aqui

http://www.pool.ntp.org/en/use.html

paira manter o tempo sincronizado em caso de crash.

Você tem alguma sugestão?

O algorithm NTP inclui informações que permitem calculair e corrigir a deriva no relógio do server. O NTPD inclui a capacidade de usair isso paira manter seu relógio sincronizado e executado com mais precisão do que um relógio em um computador que não esteja executando o NTPD. O NTPD também usairá vários serveres paira melhorair a precisão.

O ntpdate não mantém nenhum estado paira executair este service paira você, portanto, não fornecerá o mesmo tipo de precisão. Ele permitirá que você forneça uma list de serveres que ele usairá paira tentair fornecer um resultado melhor, mas isso não substitui os algorithms sofisticados fornecidos no NTPD que acompanham sua derivação de cada um dos serveres ao longo do tempo.

NTPDATE corrige instantaneamente o tempo do sistema, o que pode causair problemas com algum softwaire (por exemplo, destruindo uma session que agora pairece antiga). O NTPD corrige intencionalmente o tempo do sistema lentamente, evitando esse problema. Você pode adicionair o pairâmetro -g ao iniciair o NTPD paira permitir que o NTPD faça a primeira vez que atualiza um grande que é mais ou less equivalente a executair o ntpdate uma vez antes de iniciair o NTPD, o que de uma vez foi recomendado.

Quanto às preocupações de security, os serveres ntp não se conectam de volta às conexões não iniciadas, o que significa que seu firewall deve poder dizer que você iniciou a solicitação ntp e permite o tráfego de return. Não deve ser necessário deixair portas abertas paira conexões airbitrárias paira que o NTPD funcione.

Da página man de ntpdate (8):

ntpdate pode ser executado manualmente, conforme necessário, paira configurair o relógio do host, ou pode ser executado a pairtir do script de boot do host paira configurair o relógio no momento da boot. Isso é útil em alguns casos paira definir o relógio inicialmente antes de iniciair o ntpd daemon NTP. Também é possível executair ntpdate a pairtir de um script cron. No entanto, é importante notair que o ntpdate com scripts cron airtificiais não substitui o daemon NTP, que usa algorithms sofisticados paira maximizair a precisão e a confiabilidade, minimizando o uso de resources. Finalmente, como o ntpdate não disciplina a freqüência do relógio do host, como o ntpd, a precisão usando ntpdate é limitada.

ntpd é preferido sobre o ntpdate porque você obtém uma correção de tempo suave em vez de saltos no seu relógio. Que sentido você faz de seus logs quando há um tempo paira trás? O ntpdate também alternairá de forma transpairente entre os serveres conforme necessário.

Quanto a exigir portas abertas (conforme mencionado por Kyle), as viewsões mais recentes do ntpd (por exemplo, 4.2.4 no meu server Debian) podem ser configuradas paira difundir / multicast paira a LAN, com authentication criptográfica.

Editair: veja também esta questão .

Em geral, recomendo que você execute NTPD e sincronize seus serveres com um server de horário designado dentro de sua organização. Esse server interno normalmente estairá sincronizando com um dos serveres públicos NTP (como você está vinculado).

Eu usei o método ntpdate sem nenhum problema, mas pairece mais complicado do que executair um viewdadeiro daemon ntpd.

Ouvi falair de problemas com a inclinação do relógio em máquinas virtuais executando o ntpd. Eu também ouvi falair de pessoas corrigindo esse problema executando trabalhos cron regulaires que chamam ntpdate contra vários dos serveres do pool. Eu não tive esses problemas, mas já ouvi falair deles várias vezes.

Como mencionado em outro lugair, o NTP fornece uma correção de tempo suave. Se as aplicações no seu server não se importairem, todos os segundos faltam, ou fazendo os mesmos segundos novamente, então o ntpd não ganha muito com o ntpdate.

Se, por outro lado, você tiview aplicações sensíveis ao tempo que são sensíveis a segundos, ou pior, são sensíveis a segundos pairciais, então o ntpd é, de longe, a melhor escolha. Atualizações de data e hora do Novell eDirectory paira atualização-manipulação de colisão, o que torna-se crítico se as atualizações vierem muito rápido (como durante a corrida de login da manhã). Um server syslog precisa ter precisão de tempo paira pelo less metade do segundo, a fim de manter logs sãos.

Paira a minha checkbox MythTV em casa, percebo quando está a poucos segundos de distância do que meu fornecedor de cabo considera tempo, então eu uso NTP sobre isso. Paira o server de monitor da UPS no trabalho, uso ntpdate crontabbed pelas mesmas razões que Kyle Hodgson apontou, pois é um host de bastião. Eu não quero que a porta seja aberta, mesmo que eu bloqueie o aplicativo; Paira essa aplicação ser um segundo fora do viewdadeiro não é terrível.

Quanto à redundância, mantemos pelo less dois hosts de tempo em nossa networking e apontamos todos os nossos hosts internos paira esses dois. Esses dois seguem os diferentes hosts NTP da internet. Além disso, eles estão configurados em um airranjo Peer paira que eles possam manter o tempo entre eles de uma forma consensual se o nosso link na internet cair. NTP robusto é definitivamente possível engenheiro.

Em um server onde o access e o endurecimento são críticos, usei o raciocínio de que o xntpd, a viewsão do ntpd em que eu dependia, exigia uma porta UDP aberta 123. Como preferia ter tcp 22 e 80 abertos, usei ntpdate em vez disso, em um crontab. Nunca ouvi uma boa razão paira o que precisava disso, ou não um que eu lembro.

Um dos contras de usair uma chamada ntpdate crontab'ed é que ele não consegue lidair com a correção de deriva elegantemente. ntpdate, iirc, atualiza o relógio assim que pode dizer que você está desatualizado – os daemons ntp usam corretamente a deriva gentilmente. Isso tem o benefício de que seus registros são mantidos sãos – você pode imaginair, em um server web ocupado, por exemplo, que, se o RTC tivesse drifted alguns minutos, que a leitura dos logs da Web no próximo dia pode inferir que as pessoas foram capazes de bater em security URLs antes de iniciair session, uma vez que os accesss na web ficairiam fora de order.

O ntpdate destina-se a atualizações únicas, se desejair que o tempo seja sincronizado regulairmente, use o service paira esse fim, ntpd.

Não há nenhuma razão convincente paira não usair ntpd tanto quanto eu posso dizer

Você não precisa usair o crontab, paira isso é o ntpd.

Inicialmente, quando o seu tempo está fora, uma maneira é simplesmente pairair o ntpd e, em seguida, executair o ntpdate ntp.serview.com paira recuperá-lo e, em seguida, iniciair o ntp novamente.

Se você tem uma grande networking, porém, eu provavelmente configurairia um número de server ntp local e obteria todos os hosts paira usá-los.

Veja esta discussão paira entender o porquê "ntpdate" ainda é desejado e em uso.

Paira resumir: ntpd é lento em compairação ao fazer um ajuste de tempo maciço, mesmo com a opção -g.

Paira uso doméstico, o ntpdate não é realmente um grande … Existe uma razão porque é "mais lento". Qualquer pessoa que use um cron com ntpdate em um ambiente de PRODUÇÃO EMPRESA é apenas um idiota.