[GTER] OffTopic - NTPD vs OpenNTPD

Patrick Tracanelli eksffa at freebsdbrasil.com.br
Wed Feb 11 12:17:47 -02 2015


> On 10/02/2015, at 21:47, Neerlan Amorim <neerlan at gmail.com> wrote:
> 
> Pretendo colocar um serviço de time na rede do provedor e gostaria de
> saber qual deles seria mais indicado nos quesitos:
> 
> 1º Segurança
> 2º Segurança
> 3º Performance ;-)
> 
> Enfatizei segurança devido a moda de ataques de amplificação.
> 
> []’s

O OpenNTPD como tudo que passa pelo crivo do Theo de Raadt, tem a mesma excelência de código e segurança dos outros software mantidos pelo OpenBSD. No entanto a feature-set do OpenNTPD ainda é inferior a maioria dos outros. Contraditório com a segurança, dentre os recursos ausentes no OpenNTPD estão controle de autorização, ACL, chaves e seeds.

O OpenNTP só tem múltiplos servidores pra reference clock, sensores e weightening.

No NTP do FreeBSD por exemplo voce tem Autenticação, Keying, Monitoramento, Access Control, Auto NTP Deploy, Reference Clock, Poll Interval Control, Filtros. No Linux voce também tem um superset dos mesmos recursos.

Mas na prática como sua preocupação primária e secundária são segurança, nenhum dos problemas gerados por NTP recentemente foram baseados em exploração de falhas de segurança. Foram sempre misconfiguration, default configuration e principalmente ausência de BCP, filtros ingress adequados.

E colocar o OpenNTPD não vai resolver nenhum problema de segurança que não existe, de fato, sendo explorado no daemon. Ou seja sem fazer o dever de casa o OpenNTPd vai estar tão exposto e vulnerável a mesma taxonomia de amplificação quanto qualquer outro NTP.

Ou pior, ja que a ausência de filtro ingress (aka um firewall mínimo controlando acesso a seus NTP, snmp e outros protocolos frágeis à amplificação) não consegue sequer ser mitigada server-side ja que o OpenNTPD não tem ACLs.

Vai te sobrar TCP Wrappers hehehe ;-) Woops, não é TCP… é não te sobra nada hehehe :P

Ou seja, muda o foco Neerlan. Os cuidados a serem tomados são mais na infra e operacionais do que com a escolha do daemon.

Provavelmente o que voce ja tem na base do seu sistema ja te atende. Ja quanto a performance, bom, servir o time response é de menos. Sincronizar, fazer referência de relógio e balancear, o OpenNTPD tende a esperar o retorno de todos os servidores pra isso, tanto que quando voce sobe o OpenNTPd ele demora um pouco pra começar servir respostas (tem 2 flags no ntpd pra forçar ou desligar isso), enquanto no do FreeBSD por exemplo ele aguarda um número impar >=3 de respostas pra iniciar as respostas. Ambos depois recalculam com as respostas das consultas seguintes.

Mas isso também pouco importa pois no final estamos falando de quanto tempo leva pra começar servidor apos startup, e como todo daemon, você não vai se preocupar com isso pq não vai restartar o serviço frequentemente. Por ultimo se com 1 único core você não conseguir responder centenas de queries NTP simultâneas, tem algo errado na latencia da sua rede ou na conf do NTPD, a obrigação do daemon é tão pouca que a performance raramente será questionada. Seja qual for o daemon.

--
Patrick Tracanelli

FreeBSD Brasil LTDA.
Tel.: (31) 3516-0800
316601 at sip.freebsdbrasil.com.br
http://www.freebsdbrasil.com.br
"Long live Hanin Elias, Kim Deal!"




More information about the gter mailing list