После более года разработки опубликован выпуск сервера синхронизации точного времени NTPsec 1.2.4. Проект был создан как форк эталонной реализации протокола NTPv4 (NTP Classic 4.3.34), сфокусированный на переработке кодовой базы с целью повышения безопасности. Исходный код NTPsec распространяется под лицензиями BSD, MIT и NTP.
NTPsec развивается под руководством Эрика Реймонда (Eric S. Raymond) при участии некоторых разработчиков оригинального NTP Classic, инженеров из компаний Hewlett Packard и Akamai Technologies, а также проектов GPSD и RTEMS. Из отличий от NTP Classic выделяется добавление поддержки протокола NTS (Network Time Security), сокращение размера кодовой базы более чем в два раза (удалены устаревшие возможности и неактуальные платформы), реализация режима автономной работы, задействование методов предотвращения атак (например, фильтрация системных вызовов), переход на защищённые функции для работы с памятью и строками.
В новой версии:
- Добавлена настройка «extra port xxxx» для приёма запросов на дополнительном сетевом порту, помимо основного порта, настраиваемого через «nts port xxxx». Дополнительный порт может быть полезен для обхода блокировок обращения к внешним NTP-серверам, выставленных на межсетевых экранах.
- Добавлена поддержка сборки на Linux-системах с архитектурой armhf.
- Обеспечена поддержка работы ntpd на системах в режиме FIPS.
- Система сборки Waf обновлена до версии 2.1.4. В Debian установка утилит, написанных на Python, таких как ntpq и ntpmon, теперь осуществляется в каталог «/usr/local/lib/python3.xx/site-packages», а не в «/usr/local/lib/python3.xx/dist-packages». В команде «waf install» включено тестирвоание устанавливаемых исполняемых файлов, а через команду «waf configure —enable-Werror» теперь можно включить обработку предупреждений компилятора как ошибок.
- В качестве минимальной версии Python заявлен выпуск 2.7. Поддержку Python 2 планирую прекратить в следующей версии.
- По умолчанию применена опция «—disable-fuzz», отключающая механизм «Clock fuzzing» (внесение миллисекундных случайных смещений в отдаваемое клиентам время, не влияющих на общую точность, но не позволяющих злоумышленникам предсказать фактическое значение времени).
- Удалены остатки кода, связанного с работой в режимах broadcast и multicast.
- В ntpdig добавлена опция для привязки к указанному IP-адресу.
- В конфигурацию NTS-KE добавлена опция для настройки списка предпочтительных алгоритмов шифрования для TLS.
- Вместо ntp_adjtime задействован вызов ntp_gettime.
Источник: http://www.opennet.ru/opennews/art.shtml?num=63103