Некоммерческий удостоверяющий центр Let’s Encrypt, контролируемый сообществом и предоставляющий сертификаты безвозмездно всем желающим, объявил о переходе на использование NTP-сервера ntpd-rs, написанного на языке Rust с оглядкой на обеспечение безопасности и стабильности. Проект распространяется под лицензиями Apache 2.0 и MIT, полностью поддерживает протоколы NTP и NTS (Network Time Security) на уровне клиента и сервера, и может использоваться в качестве замены NTP-серверам chrony, ntpd и NTPsec.
Пакет ntpd-rs заработан в рамках проекта Prossimo, развивающегося под эгидой организации ISRG (Internet Security Research Group), которая является учредителем проекта Let’s Encrypt и способствует продвижению HTTPS и развитию технологий для повышения защищённости интернета. Помимо ntpd-rs проектом также ведётся разработка TLS-библиотеки Rustls, DNS-сервера Hickory, обратного прокси River, утилиты sudo-rs и компонентов для ядра Linux на языке Rust.
Предполагается, что использование ntpd-rs повысит защищённость инфраструктуры Let’s Encrypt и снизит вероятность появления уязвимостей, вызванных ошибками при работе с памятью. Кроме того, безопасность и надёжность системы синхронизации точного времени важна так как манипуляции злоумышленников с установкой неверного времени могут использоваться для нарушения безопасности протоколов, учитывающих время, таких как TLS. Например, изменение времени может привести к неверной интерпретации данных о действии TLS-сертификатов.
Удостоверяющий центр Let’s Encrypt ежедневно генерирует более четырёх миллионов новых сертификатов. Число активных сертификатов составляет 372 млн (сертификат действует три месяца). Данные сертификаты охватывают более 128 млн зарегистрированных доменов и 428 млн полных доменных имён (FQDN). В апреле ntpd-rs был задействован в тестовом окружении Let’s Encrypt, а теперь на него переведены основные рабочие системы. В дальнейшем Let’s Encrypt планирует продолжить внедрение систем на языке Rust, в частности планируется заменить OpenSSL на Rustls,
в качестве DNS-сервера задействовать Hickory, Nginx заменить на River, а вместо sudo использовать sudo-rs.