ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Anton Farygin <rider@basealt.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>,
	Andrey Savchenko <bircoph@altlinux.org>
Subject: Re: [devel] Q: trustworhtiness of chrony
Date: Tue, 14 Aug 2018 14:56:48 +0300
Message-ID: <cb361929-2970-bf6d-4c76-8991e2da15d7@basealt.ru> (raw)
In-Reply-To: <20180814143114.365690229320119998d2889d@altlinux.org>

14.08.2018 14:31, Andrey Savchenko пишет:
> On Mon, 13 Aug 2018 15:32:43 +0300 Dmitry V. Levin wrote:
>> On Mon, Aug 13, 2018 at 03:25:33PM +0300, Andrey Savchenko wrote:
>>> On Mon, 13 Aug 2018 14:59:04 +0300 Dmitry V. Levin wrote:
>>>> On Mon, Aug 13, 2018 at 02:52:13PM +0300, Yuri Sedunov wrote:
>>>>> У кого-то часы отстают?
>>>>>
>>>>> ...
>>>>> check OK
>>>>> 2018-Aug-13 11:27:30 :: [x86_64-i586] plan: #4 +4 -4 =11420
>>>>> arepo/x86_64-i586/rpms/i586-libappstream-glib-devel-0.7.12-alt1.i586.rpm: BUILDTIME in the future: Mon Aug 13 11:28:15 UTC 2018
>>>>> sisyphus_check: check-buildtime ERROR: buildtime violation
>>>>> arepo/x86_64-i586/rpms/i586-libappstream-glib-0.7.12-alt1.i586.rpm: BUILDTIME in the future: Mon Aug 13 11:28:13 UTC 2018
>>>>> sisyphus_check: check-buildtime ERROR: buildtime violation
>>>>> 2018-Aug-13 11:28:13 :: [x86_64-i586] sisyphus_check FAILED
>>>>> 2018-Aug-13 11:28:13 :: [x86_64-i586] build FAILED
>>>>> 2018-Aug-13 11:28:13 :: task #211319 for sisyphus FAILED
>>>> Да, один из сборочных узлов опять заресетился, время на нём сбилось,
>>>> ntpd подправляет его каждые несколько минут на несколько секунд,
>>>> процесс сходящийся.
>>> А можно поставить chrony и плавно поправить через tike skew без
>>> всяких скачков и прочего безобразия. Мало того, при запуске он сам
>>> умеет использовать поправку на вычисленную на основе собранных
>>> ранее данных систематическую погрешность системных часов. На
>> Кто-нибудь читал исходный код chrony,
>> что этот исходный код представляет из себя по сравнению с openntpd,
>> им вообще можно пользоваться там, где нужно минимизировать риск
>> исполнения произвольного кода?
> Для минимизации рисков в chrony предусмотрено использование
> seccomp. Не знаю, есть ли в openntpd такая функциональность.
> У chrony предусмотрено более десятка опций конфигурации, так что
> можно собрать chrony-minimal, если очень хочется.
>
> Что касается аудита кода. Чем конкретно вызвана эта необходимость?
> chrony можно настроить для использования внутреннего ntp-сервера,
> так что внешних векторов атаки не будет. Безусловно, анализ кода —
> это хорошо, но тогда нужно анализировать все потенциально уязвимые
> компоненты системы, т.к. нет смысла в одной безопасной при двух
> опасных.
>
> Поэтому меня интересует: выполнялся ли аудит кода ядра и openssl,
> которые применяются на нашей сборочнице? Если да, то где он?
> Сообществу будет очень интересно. Если нет, то зачем тогда особо
> придираться к серверу времени?
>
> Следующий вопрос: зачем вообще наша сборочница настолько придирчива
> к времени сборки, что сборка на 1 секунду в будущем приводит
> к провалу всего процесса сборки пакета?
>
> Что плохого может произойти, если сборочный узел на 1 секунду
> быстрее сборочницы? Прошу привести конкретные примеры. На мой
> взгляд это ограничение не обосновано. Почему именно 1 секунда? Ведь
> опережение на 0.5 секунды сборочница пропустит (нынешний код
> сравнивает посекундно). Что такого страшного может произойти за
> 1 секунду, чего гарантированно не произойдёт за полсекунды?
>
> Субъективно, даже получасовая разница во времени для задачи работы
> сборочницы ни на что особо не повлияет. Разница в несколько часов
> уже будет неудобна разработчикам, может запутывать по
> временным зонам, поэтому я и выбрал получасовой лимит.
>
> Существующее и, на мой взгляд, чрезмерное и необоснованное
> ограничение в 1 секунду сильно попортило нервы мне и коллегам,
> работающим с e2k, т.к. пакеты могут собираться часами (а отдельные
> и днями) и получать после этого случайный фейл — пустая трата
> времени и нервов. Сейчас благодаря chrony наша проблема решена, но
> я не понимаю, ради чего люди должны страдать на других сборочницах.
>
> На мой взгляд сборочница — как и любой сложный механизм — должна
> обладать функцией самокоррекции и отказоустойчивости хотя бы
> в некоторых пределах. Если есть проблема, при которой можно
> продолжить работу, нужно сообщить админу о проблему, по
> необходимости её скорректировать и продолжить работу. Такой подход
> позволит обеспечить жизнеспособность сборочницы в условиях
> современного мира и мне очень хотелось бы, чтоб он был учтёт при
> проектировании новой сборочницы. Иначе снова получим, что после
> внеплановой перезагрузки нужно лезть в недра, вычищать временные
> файлы и вручную менять статус тасков.

Спасибо тебе, Андрей за столь внятное письмо, с которым я практически 
полностью согласен.

Практически - т.к. мне кажется что точноее время на всех узлах всё-таки 
важнее, пусть сборка падает на одной секунде - главное что бы время было 
синхронно.

С нашим openntpd некоторые системы вообще не заводятся (ceph, например), 
т.к. там расхождение времени ещё более критично для нормального 
функционирования, а ждать даже 10-20 минут пока поднимется файловая 
система - мы не можем.





  reply	other threads:[~2018-08-14 11:56 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-13 11:52 ` [devel] [Fwd: [#211319] FAILED srpm=libappstream-glib-0.7.12-alt1.src.rpm] Yuri Sedunov
2018-08-13 11:59   ` Dmitry V. Levin
2018-08-13 12:14     ` Yuri Sedunov
2018-08-13 12:25     ` Andrey Savchenko
2018-08-13 12:32       ` [devel] Q: trustworhtiness of chrony Dmitry V. Levin
2018-08-13 12:40         ` Anton Farygin
2018-08-13 12:44           ` Alexey V. Vissarionov
2018-08-13 12:46             ` Anton Farygin
2018-08-14 11:31         ` Andrey Savchenko
2018-08-14 11:56           ` Anton Farygin [this message]
2018-08-16  2:57             ` Alexei Takaseev
2018-08-16  4:55               ` Anton Farygin
2018-08-16  4:58                 ` Alexei Takaseev
2018-08-16 16:33                   ` Michael Shigorin
2018-08-14 12:12           ` Dmitry V. Levin
2018-08-14 12:25             ` Andrey Savchenko
2018-08-14 13:35         ` Vitaly Kuznetsov
2018-08-14 21:56           ` Leonid Krivoshein
2018-08-15  8:52             ` Vitaly Kuznetsov
2018-08-16  0:58               ` Leonid Krivoshein

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cb361929-2970-bf6d-4c76-8991e2da15d7@basealt.ru \
    --to=rider@basealt.ru \
    --cc=bircoph@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git