Мне нужен безошибочный и точный источник времени.
Если не считать настройки собственных атомных часов (разве это проще, чем кажется), как я могу это сделать?
Дело не в том, что я не доверяю пулам NTP; У меня нет уверенности в том, с кем я разговариваю.
Ответы:
В одном из предыдущих ответов упоминалась аутентификация MD5, но не упоминалась аутентификация pubkey, доступная в NTP4. Многие национальные лаборатории предоставляют услуги времени с поддержкой md5 / autokey.
Я не понимаю, какова ваша модель угрозы; если кто-то способен и хочет подделать ваш сигнал GPS, у вас больше проблем, чем сейчас. Тем не менее, вы можете объединить локальный рефлок с использованием GPS или CDMA, а затем увеличить этот сигнал времени с аутентифицированным временем из некоторых национальных лабораторий, которые предоставляют аутентифицированные сервисы времени. Таким образом, если ваш GPS-сигнал подделан, вы все равно можете рассчитывать на аутентифицированное время из национальных лабораторий.
GPS:
Всего за 40 долларов и немного пайки вы можете установить локальный источник времени GPS + PPS с оценочной платой Sure Electronics GPS. Время от времени вы можете найти CDMA-рефлок за довольно дешевую цену на ebay, если вы не можете получить сигнал GPS в своем дата-центре.
Служба аутентификации NTP:
NIST, NRC и INRIM (национальные лаборатории для США, Канады и Италии) предоставляют услуги времени с аутентификацией MD5. В отличие от NIST и INRIM, услуга CRC md5 не является бесплатной. Служба аутентификации Autokey доступна в OBSPM и INRIM (французская и итальянская национальные лаборатории), и они предоставляют эту услугу бесплатно. Конечно, есть и другие национальные лаборатории с проверенным временем, но вам нужно будет поискать их в Google.
Ссылки для аутентифицированного времени из национальных лабораторий:
NIST:
http://www.nist.gov/pml/div688/grp40/auth-ntp.cfm
NRC:
http://www.nrc-cnrc.gc.ca/eng/services/inms/calibration-services/time-frequency.html#Authenticated
OBSPM:
http://syrte.obspm.fr/informatique/ntp_infos.php
https://syrte.obspm.fr/informatique/ntp_keys.php
INRIM:
http://www.inrim.it/ntp/
http://www.inrim.it/ntp/auth_i.shtml
источник
Мой совет - доверять NTP - это ни в коем случае не безопасно, но я не знаю ни о каких основных направлениях атак, и это так же безопасно, как ваш выбор пиров (которые в равной степени безопасны, как ваше разрешение DNS и ваша маршрутизация Таблица).
Если вам нужно рассмотреть другие альтернативы, вот несколько (точность / безопасность в скобках):
Ваши собственные атомные часы в качестве источника PPS. (Über acurate. Черт, почти неоспоримый)
(Они доступны на eBay. Настроить не невозможно - есть много временных ботаников, у которых они есть, и ваш демон NTP может использовать их в качестве источника времени. Вам нужно будет обрабатывать дополнительные секунды .)
Приемник GPS. (Супер точный. Очень трудно подделать).
(Сигналы GPS МОГУТ быть переопределены / подделаны, но это специальная атака, которая потребует определенных усилий. Полный отказ системы GPS маловероятен, как и полное отключение.)
NTP (Очень точный. Поддельный с некоторыми усилиями)
(Шансы на то, что кто-то атакует вас через ваш источник времени, весьма невелики, и если вы настроите своего NTP-демона на несколько серверов пула, любые выбросы или ложные тикеры будут отброшены.
Обратите внимание, что это предполагает, что вы доверяете своему DNS, по крайней мере, настолько, насколько это возможно.)
Стабилизированный кварцевый генератор как источник PPS. (Не очень точно. Черт, почти неоспоримо)
(В зависимости от осциллятора это может быть не точнее, чем часы вашего компьютера. Ожидайте, что вам придется периодически корректировать время, и вам придется обрабатывать дополнительные секунды.)
Внутренние часы вашего компьютера. (Точнее, чем песочные часы. Черт, почти неоспоримо.)
(Для любого современного приложения, которое заботится о времени, это практически невозможно.)
источник
NTP не является безопасным протоколом (ну, есть механизм аутентификации, но он не очень широко используется, а аутентификация MD5 не очень безопасна) - независимо от того, с каким интернет-сервером времени вы разговариваете, вы на самом деле не знаете что ты с ними разговариваешь. За исключением надежности пулов (мне они не нравятся, потому что их страты повсюду, у NIST есть хорошие источники для интернет-NTP), интернет-NTP не отвечает вашим требованиям.
Аппаратные часы в локальной сети - это действительно единственный способ гарантировать, что ваше соединение не будет перехвачено - и даже тогда, только если безопасность вашей локальной сети сможет вас в этом убедиться.
источник
Ну что ж, купи майнберг с синхронизацией GPS. Это не слишком дорого. Вы должны быть в состоянии доверять этому до некоторой степени. http://www.meinberg.de . Или просто купите устройство синхронизации GPS и подключите его к серверу.
источник
В Интернете доступно любое количество безопасных источников времени. Большинство из них работают так:
Вы генерируете случайный вызов.
Вы отправляете вызов источнику времени.
Источник времени добавляет к вашему запросу метку времени, подписывает ее своим известным секретным ключом и отправляет обратно вам.
Вы подтверждаете подпись своим открытым ключом.
Теперь вы знаете, предполагая, что можете доверять этому источнику, что время в метке времени отражает время где-то между тем, когда вы сгенерировали запрос и когда вы получили ответ.
Verisign запускает такой сервис через HTTPS. URL есть
http://timestamp.verisign.com/scripts/timstamp.dll
. Globalsign также запускает один, URL-адресhttp://timestamp.globalsign.com/scripts/timstamp.dll
. Протокол указан в RFC 3161, а также реализован в OpenSSL .источник
reflects a time somewhere between when you generated the challenge and when you received the reply
временную метку - она может иметь время задержки 20 мс, 200 мс или 2000 мс (патологический случай). Единственная «точная» временная гарантия здесь состоит в том, что временная метка TSA является точной для того, когда TSA выпустил ее (не когда она была запрошена или получена клиентом)