<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>38788</bug_id>
          
          <creation_ts>2020-08-06 11:43:08 +0300</creation_ts>
          <short_desc>Цепочка зависимостей, ведущая от freeipa-client к selinux-policy-alt</short_desc>
          <delta_ts>2021-04-26 04:49:08 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>Distributions</classification>
          <product>Branch p9</product>
          <component>policycoreutils</component>
          <version>не указана</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>blocker</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>38992</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anton V. Boyarshinov">boyarsh</reporter>
          <assigned_to name="Stanislav Levin">slev</assigned_to>
          <cc>aen</cc>
    
    <cc>boyarsh</cc>
    
    <cc>cas</cc>
    
    <cc>darktemplar</cc>
    
    <cc>darktemplaralt</cc>
    
    <cc>iv</cc>
    
    <cc>lav</cc>
    
    <cc>mike</cc>
    
    <cc>rider</cc>
    
    <cc>sem</cc>
    
    <cc>sin</cc>
          
          <qa_contact name="qa-p9@altlinux.org">qa-p9</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>191706</commentid>
    <comment_count>0</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 11:43:08 +0300</bug_when>
    <thetext>freeipa-client зависит от policycoreutils
policycoreutils зависит от /etc/selinux/config
/etc/selinux/config предоставляется selinux-policy-alt
selinux-policy-alt вытягивет policycoreutils-newrole и ещё кучу всего, что не должно присутствовать в нормальной системе и нормально не работает без дополнительной настройки.

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

Мне кажется наиболее простым и разумным оторвать зависимость
policycoreutils от 
/etc/selinux/config, но надо тестировать -- не сломается ли freeipa-client даже при работе без selinux.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191707</commentid>
    <comment_count>1</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2020-08-06 11:55:40 +0300</bug_when>
    <thetext>Есть впечатление, что freeipa-client не нуждается в policycoreutils, если selinux не включен. Это впечатление появилось потому что из всех policycoreutils в freeipa можно нагрепать только restorecon и setsebool, и они не используются если selinux выключен.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191708</commentid>
    <comment_count>2</comment_count>
    <who name="Aleksei Nikiforov">darktemplaralt</who>
    <bug_when>2020-08-06 11:57:54 +0300</bug_when>
    <thetext>Повторю то, что написал в рассылку, но пока что туда не дошло:

&gt; Я покопал глубже и мне открылась бездна
&gt;
&gt; policycoreutils зависит от /etc/selinux/config

В Sisyphus уже несколько месяцев как эта зависимость оторвана.

Добавлю: для этого достаточно отправить policycoreutils-3.0-alt2 в p9.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191709</commentid>
    <comment_count>3</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 12:02:59 +0300</bug_when>
    <thetext>
&gt; &gt; policycoreutils зависит от /etc/selinux/config
&gt; 
&gt; В Sisyphus уже несколько месяцев как эта зависимость оторвана.
&gt; 
&gt; Добавлю: для этого достаточно отправить policycoreutils-3.0-alt2 в p9.

А.. А.. А почему это полезное изменение не попало в p9?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191710</commentid>
    <comment_count>4</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-08-06 12:05:37 +0300</bug_when>
    <thetext>надо у freeipa загасить зависимость на policycoreutils (сделать её неявной).
После этого проблема будет решена.

А в Sisyphus policycoreutils уже не зависит от политики.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191711</commentid>
    <comment_count>5</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-08-06 12:06:13 +0300</bug_when>
    <thetext>(Ответ для Anton V. Boyarshinov на комментарий #3)
&gt; &gt; &gt; policycoreutils зависит от /etc/selinux/config
&gt; &gt; 
&gt; &gt; В Sisyphus уже несколько месяцев как эта зависимость оторвана.
&gt; &gt; 
&gt; &gt; Добавлю: для этого достаточно отправить policycoreutils-3.0-alt2 в p9.
&gt; 
&gt; А.. А.. А почему это полезное изменение не попало в p9?

Потому что p9 ещё не готов для приёма нового selinux. Не надо с этим спешить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191712</commentid>
    <comment_count>6</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 12:08:10 +0300</bug_when>
    <thetext>
&gt; &gt; &gt; Добавлю: для этого достаточно отправить policycoreutils-3.0-alt2 в p9.
&gt; &gt; 
&gt; &gt; А.. А.. А почему это полезное изменение не попало в p9?
&gt; 
&gt; Потому что p9 ещё не готов для приёма нового selinux. Не надо с этим спешить.

Обновление с 3.0-alt1 на 3.0-alt2 не выглядит особенно революционным</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191713</commentid>
    <comment_count>7</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-08-06 12:10:46 +0300</bug_when>
    <thetext>(Ответ для Anton V. Boyarshinov на комментарий #6)
&gt; &gt; &gt; &gt; Добавлю: для этого достаточно отправить policycoreutils-3.0-alt2 в p9.
&gt; &gt; &gt; 
&gt; &gt; &gt; А.. А.. А почему это полезное изменение не попало в p9?
&gt; &gt; 
&gt; &gt; Потому что p9 ещё не готов для приёма нового selinux. Не надо с этим спешить.
&gt; 
&gt; Обновление с 3.0-alt1 на 3.0-alt2 не выглядит особенно революционным

Да, это выглядит нормальным, но всё равно на мой взгляд зависимость лучше отрывать у freeipa.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191714</commentid>
    <comment_count>8</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 12:15:42 +0300</bug_when>
    <thetext>
&gt; &gt; Обновление с 3.0-alt1 на 3.0-alt2 не выглядит особенно революционным
&gt; 
&gt; Да, это выглядит нормальным, но всё равно на мой взгляд зависимость лучше
&gt; отрывать у freeipa.

На мой взгляд, надо сделать и то и другое. Сборка 3.0-alt2 -- быстрое решение (я уже отправил #255935), но в freeipa надо бы тоже оторвать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191715</commentid>
    <comment_count>9</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-08-06 12:16:38 +0300</bug_when>
    <thetext>Согласен.

Стас, оторви пожалуйста в freeipa.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191716</commentid>
    <comment_count>10</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2020-08-06 12:25:52 +0300</bug_when>
    <thetext>255939 BUILDING #1 [locked] p9 policycoreutils.git=3.1-alt1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191717</commentid>
    <comment_count>11</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 12:27:27 +0300</bug_when>
    <thetext>(Ответ для Andrey Cherepanov на комментарий #10)
&gt; 255939 BUILDING #1 [locked] p9 policycoreutils.git=3.1-alt1

Нет, только не это! См обсуждение выше.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191718</commentid>
    <comment_count>12</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2020-08-06 12:30:27 +0300</bug_when>
    <thetext>(Ответ для Anton V. Boyarshinov на комментарий #11)
&gt; (Ответ для Andrey Cherepanov на комментарий #10)
&gt; &gt; 255939 BUILDING #1 [locked] p9 policycoreutils.git=3.1-alt1
&gt; 
&gt; Нет, только не это! См обсуждение выше.

Мне наша багзилла далеко не все письма присылает. Поэтому обсуждение не видел, прощу прощения. Задание удалил.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191720</commentid>
    <comment_count>13</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 14:46:45 +0300</bug_when>
    <thetext>(Ответ для Anton Farygin на комментарий #9)
&gt; Согласен.
&gt; 
&gt; Стас, оторви пожалуйста в freeipa.

В том числе и в freeipa-server.

Он прямо зависит от selinux-policy-alt, что недопустимо.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191721</commentid>
    <comment_count>14</comment_count>
    <who name="Stanislav Levin">slev</who>
    <bug_when>2020-08-06 14:50:11 +0300</bug_when>
    <thetext>Если это так, то покажите, пожалуйста, policy.

Мне нужна хорошая аргументация, чтобы это, может быть, рассмотрели/приняли в апстриме.
Есть ли какие-то документы, на которые можно ссылаться?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191726</commentid>
    <comment_count>15</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-08-06 14:57:20 +0300</bug_when>
    <thetext>(Ответ для Anton V. Boyarshinov на комментарий #13)
&gt; (Ответ для Anton Farygin на комментарий #9)
&gt; &gt; Согласен.
&gt; &gt; 
&gt; &gt; Стас, оторви пожалуйста в freeipa.
&gt; 
&gt; В том числе и в freeipa-server.
&gt; 
&gt; Он прямо зависит от selinux-policy-alt, что недопустимо.

А вот тут я, кстати, считаю что установка selinux-policy-alt (и всех его зависимостей) в обычную систему не должна превращать её или какие-то её компоненты в тыкву.
Поке не включено selinux в ядре.

Это вне контекста freeipa-server.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191727</commentid>
    <comment_count>16</comment_count>
    <who name="AEN">aen</who>
    <bug_when>2020-08-06 15:26:12 +0300</bug_when>
    <thetext>Это требования ФСТЭК, не знаю формализованы ли они. Можете уточнить у Игоря Корчагина. 
Не думаю, что даже имея бумажку от этого регулятора, удастся убедить апстрим, потому что это не технические по сути требования. 
Но без их выполнения мы не получим сертификат.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191728</commentid>
    <comment_count>17</comment_count>
    <who name="AEN">aen</who>
    <bug_when>2020-08-06 15:27:39 +0300</bug_when>
    <thetext>(Ответ для Anton Farygin на комментарий #15)
&gt; (Ответ для Anton V. Boyarshinov на комментарий #13)
&gt; &gt; (Ответ для Anton Farygin на комментарий #9)
&gt; &gt; &gt; Согласен.
&gt; &gt; &gt; 
&gt; &gt; &gt; Стас, оторви пожалуйста в freeipa.
&gt; &gt; 
&gt; &gt; В том числе и в freeipa-server.
&gt; &gt; 
&gt; &gt; Он прямо зависит от selinux-policy-alt, что недопустимо.
&gt; 
&gt; А вот тут я, кстати, считаю что установка selinux-policy-alt (и всех его
&gt; зависимостей) в обычную систему не должна превращать её или какие-то её
&gt; компоненты в тыкву.
&gt; Поке не включено selinux в ядре.
&gt; 
&gt; Это вне контекста freeipa-server.

Да, конечно. 
Но это для несертифицировнных систем.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191729</commentid>
    <comment_count>18</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-08-06 15:53:14 +0300</bug_when>
    <thetext>(Ответ для AEN на комментарий #17)
&gt; (Ответ для Anton Farygin на комментарий #15)
&gt; &gt; (Ответ для Anton V. Boyarshinov на комментарий #13)
&gt; &gt; &gt; (Ответ для Anton Farygin на комментарий #9)
&gt; &gt; &gt; &gt; Согласен.
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Стас, оторви пожалуйста в freeipa.
&gt; &gt; &gt; 
&gt; &gt; &gt; В том числе и в freeipa-server.
&gt; &gt; &gt; 
&gt; &gt; &gt; Он прямо зависит от selinux-policy-alt, что недопустимо.
&gt; &gt; 
&gt; &gt; А вот тут я, кстати, считаю что установка selinux-policy-alt (и всех его
&gt; &gt; зависимостей) в обычную систему не должна превращать её или какие-то её
&gt; &gt; компоненты в тыкву.
&gt; &gt; Поке не включено selinux в ядре.
&gt; &gt; 
&gt; &gt; Это вне контекста freeipa-server.
&gt; 
&gt; Да, конечно. 
&gt; Но это для несертифицировнных систем.

Вообще для любых, т.к. сертификаты тоже бывают разными. В общем есть что чинить,  отличный case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191730</commentid>
    <comment_count>19</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 16:18:20 +0300</bug_when>
    <thetext>(Ответ для AEN на комментарий #16)
&gt; Это требования ФСТЭК, не знаю формализованы ли они. Можете уточнить у Игоря
&gt; Корчагина. 
&gt; Не думаю, что даже имея бумажку от этого регулятора, удастся убедить
&gt; апстрим, потому что это не технические по сути требования. 
&gt; Но без их выполнения мы не получим сертификат.

Я не уверен, в том, что необходимо что-то менять на уровне кода(Ответ для Stanislav Levin на комментарий #14)
&gt; Если это так, то покажите, пожалуйста, policy.
&gt; 
&gt; Мне нужна хорошая аргументация, чтобы это, может быть, рассмотрели/приняли в
&gt; апстриме.

А тут действительно техническая проблема такого уровня, что её нельзя решить, не вмешивая upstream? Требование установленного selinux-policy настолько неопционально, что без него развалится работа freeipa-server на системе без selinux?
Вообще говоря, selinux не является обязательной частью linux дистрибутива, не говоря уже о том, что существуют альтернативные реализации мандатного доступа. Понятно, что они могут не поддерживаться freeipa, но неужели freeipa сервер действительно не может жить без установленной policy?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191731</commentid>
    <comment_count>20</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-06 16:21:51 +0300</bug_when>
    <thetext> 
&gt; А вот тут я, кстати, считаю что установка selinux-policy-alt (и всех его
&gt; зависимостей) в обычную систему не должна превращать её или какие-то её
&gt; компоненты в тыкву.
&gt; Поке не включено selinux в ядре.
С этим я в целом согласен. Но, поскольку до этого всё это дело разрабатывалось без оглядки на &quot;обычные системы&quot; по принципу &quot;это странные пакеты для странных систем&quot; это, увы, нет так. И исправить это быстро может оказаться непросто.

Хотя исправлять надо, да. Но и тащит совершенно ненужные в данных применениях пакеты -- тоже не надо.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191736</commentid>
    <comment_count>21</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2020-08-07 06:24:03 +0300</bug_when>
    <thetext>(Ответ для Anton V. Boyarshinov на комментарий #20)
&gt; И исправить это быстро может оказаться непросто.
Может, пустой пакет selinux-policy-none Provides: selinux-policy?
(но такое резко снизит мотивацию исправить наскоро заткнутое, конечно)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191739</commentid>
    <comment_count>22</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2020-08-07 10:43:59 +0300</bug_when>
    <thetext>(Ответ для Michael Shigorin на комментарий #21)
&gt; (Ответ для Anton V. Boyarshinov на комментарий #20)
&gt; &gt; И исправить это быстро может оказаться непросто.
&gt; Может, пустой пакет selinux-policy-none Provides: selinux-policy?
&gt; (но такое резко снизит мотивацию исправить наскоро заткнутое, конечно)

Вопрос в том, сломается ли freeipa-server, если никакой policy установлено не будет. Если не сломается -- достаточно просто убрать эту зависимость из пакета. А если сломается -- пустой пакет не поможет.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192557</commentid>
    <comment_count>23</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2020-09-16 17:07:17 +0300</bug_when>
    <thetext>А всё-таки, нельзя ли оторвать зависимость на policycoreutils от freeipa-client?

Если нет, давайте закроем этот баг наверное.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192577</commentid>
    <comment_count>24</comment_count>
    <who name="Stanislav Levin">slev</who>
    <bug_when>2020-09-17 08:41:42 +0300</bug_when>
    <thetext>Посмотрю в начале след недели.
Спасибо за напоминание.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192788</commentid>
    <comment_count>25</comment_count>
    <who name="Stanislav Levin">slev</who>
    <bug_when>2020-09-23 17:29:00 +0300</bug_when>
    <thetext>Анализ кода показал, что зависимость как на policycoreutils, так и на selinux-policy-alt _опциональна_. Тесты рапортуют, что при их отрывании ломаются только сами тесты (неверные ожидания, поправлено). В случае успеха CI новая версия FreeIPA + ALT-специфичные изменения будут отправлены в sisyphus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192914</commentid>
    <comment_count>26</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2020-09-30 12:26:21 +0300</bug_when>
    <thetext>freeipa-4.8.9-alt1 -&gt; sisyphus:

 Fri Aug 21 2020 Stanislav Levin &lt;slev@altlinux&gt; 4.8.9-alt1
 - 4.8.8 -&gt; 4.8.9.
 - Made SELinux optional (closes: #38788).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192915</commentid>
    <comment_count>27</comment_count>
    <who name="AEN">aen</who>
    <bug_when>2020-09-30 12:39:53 +0300</bug_when>
    <thetext>Спасибо!</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>