it-roy-ru.com

Какие данные передаются в Canonical для livepatch?

Я только что обновился до 18.04 и хотел попробовать livepatch. Прочитав веб-страницу Условий предоставления услуг Livepatch ( https://www.ubuntu.com/legal/terms-and-policies/livepatch-terms-of-service ), я немного удивился этим двум пункты в разделе персональных данных:

Мы также можем собирать определенную информацию, не идентифицирующую личность, которая находится на вашем компьютере. Собранная информация может включать статистику, касающуюся того, как часто данные передаются, и метрики производительности в отношении программного обеспечения и конфигурации. Вы соглашаетесь, что эта информация может быть сохранена и использована Canonical.

Canonical может раскрывать любые или все личные данные и контент, которые вы отправили, опубликовали или опубликовали, если это требуется в соответствии с применимым законодательством или распоряжением или требованием суда, административного органа или другого государственного органа. Любое другое использование ваших личных данных регулируется Политикой конфиденциальности.

Я понимаю, что для того, чтобы сделать исправление в реальном времени, Canonical необходимо знать кое-что о моей системе, например, версию ядра. Кроме того, через мою учетную запись SSO и токен они знают мой адрес электронной почты и имя.

Все идет нормально. Но мне интересно, что еще нужно знать Canonical о моей системе. Приведенный выше текст неясен по этому поводу. "Статистика" и "показатели производительности" не звучат так, как будто они необходимы для службы исправлений как таковой. Кроме того, если эти данные действительно "не идентифицируют личность", почему Canonical просит один абзац позже договориться о том, что они могут раскрывать их административным органам или правительственным органам по запросу?

Какие данные передаются в Canonical один раз и регулярно? Как я могу узнать, что передается? Как я могу быть уверен, что он не изменится внезапно, чтобы передать больше, чем я хочу?

Это технический вопрос. Я не хочу обсуждать Условия использования или юридические вопросы Canonical. Я действительно хочу технический способ найти то, что передается, прежде чем я зарегистрируюсь.

8
Sebastian Stark

Учитывая, что клиент livepatch является проприетарным, у меня нет полного ответа.

Тем не менее, клиент (/snap/canonical-livepatch/*/canonical-livepatchd) написан на Go. Отладка с помощью Delve , вот некоторая информация для начала:

(dlv) bt
0  0x00000000006ad140 in main.(*client).check
   at /home/c/Canonical/go/livepatch/src/github.com/CanonicalLtd/livepatch-client/parts/canonical-livepatch/build/daemon/client.go:212
1  0x00000000006acfeb in main.(*client).Check
   at /home/c/Canonical/go/livepatch/src/github.com/CanonicalLtd/livepatch-client/parts/canonical-livepatch/build/daemon/client.go:200
2  0x00000000006b8415 in main.refresh
   at /home/c/Canonical/go/livepatch/src/github.com/CanonicalLtd/livepatch-client/parts/canonical-livepatch/build/daemon/refresh.go:60
3  0x00000000006bf957 in main.newDaemon.func1
   at /home/c/Canonical/go/livepatch/src/github.com/CanonicalLtd/livepatch-client/parts/canonical-livepatch/build/daemon/daemon.go:76
4  0x00000000006b86a3 in main.(*refreshLoop).loop
   at /home/c/Canonical/go/livepatch/src/github.com/CanonicalLtd/livepatch-client/parts/canonical-livepatch/build/daemon/refresh.go:120
5  0x00000000006c0bfd in main.(*service).Start.func1
   at /home/c/Canonical/go/livepatch/src/github.com/CanonicalLtd/livepatch-client/parts/canonical-livepatch/build/daemon/service.go:151
6  0x0000000000457b31 in runtime.goexit
   at /home/c/.gobrew/versions/1.10/src/runtime/asm_AMD64.s:2361
(dlv) locals
rendered.cap = 0
rendered.len = 0
rendered.ptr = *uint8 nil
status = main.ClientStatus {ClientVersion: "8.0.1", MachineId: "bfcf169468f641528ac653c41ff1797d", MachineToken: "",...+7 more}
(dlv) print status
main.ClientStatus {
    ClientVersion: "8.0.1",
    MachineId: "bfcf169468f641528ac653c41ff1797d",
    MachineToken: "",
    Architecture: "x86_64",
    CpuModel: "Intel(R) Core(TM) i7-6920HQ CPU @ 2.90GHz",
    LastCheck: time.Time {
        wall: 0,
        ext: 0,
        loc: *time.Location nil,},
    BootTime: time.Time {
        wall: 0,
        ext: 63662149770,
        loc: *(*time.Location)(0x963f60),},
    ApplyTime: time.Time {
        wall: 0,
        ext: 0,
        loc: *time.Location nil,},
    Uptime: 3472,
    Kernels: []main.KernelStatus len: 1, cap: 1, [
        (*main.KernelStatus)(0xc4201883c0),
    ],}

Поля в переменной status:

  • Версия клиента
  • Идентификатор компьютера (значение из /etc/machine-id )
  • Машинный токен (Ubuntu One токен?)
  • Модель процессора и (ОС?) Архитектура
  • Время последней проверки
  • Время загрузки (время, необходимое для загрузки?)
  • Время применения (возможно, когда было применено последнее обновление?)
  • Uptime
  • Список ядер

Время загрузки и время работы можно считать включенным в статистику и показатели производительности.

Опять же, это отправная точка. Делайте из этого то, что вы будете, и, надеюсь, кто-то другой может предоставить более определенную информацию.

Как я могу быть уверен, что он не изменится внезапно, чтобы передать больше, чем я хочу?

Ты не можешь Исходный код недоступен, и снимки автоматически обновляются, IIRC.

9
muru

Я спросил отдел продаж Canonical, какие данные передает служба исправлений. Они вернулись ко мне с этим:

Это информация, которую мы отправляем о клиенте:

  • Идентификатор машины из/etc/machine-id
  • Машинный токен с сервера livepatch
  • Архитектура машины
  • Модель процессора машины
  • Когда клиент последний раз обновлялся
  • Когда была загружена система
  • Когда последний раз был применен livepatch?
  • Текущее время работы системы
  • Версия ядра

Также они упомянули, что они также передают некоторую статистику, которая может меняться в зависимости от требований GDPR.

1
Christian