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

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

    <bug>
          <bug_id>37710</bug_id>
          
          <creation_ts>2019-12-31 11:15:55 +0300</creation_ts>
          <short_desc>добавить в подпакет capability</short_desc>
          <delta_ts>2026-02-24 16:29:59 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>collectd-ping</component>
          <version>unstable</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>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergey Y. Afonin">asy</reporter>
          <assigned_to name="Anton Farygin">rider</assigned_to>
          <cc>asy</cc>
    
    <cc>at</cc>
    
    <cc>cas</cc>
    
    <cc>crux</cc>
    
    <cc>ender</cc>
    
    <cc>iv</cc>
    
    <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
    
    <cc>qa_viy</cc>
    
    <cc>rider</cc>
    
    <cc>sem</cc>
    
    <cc>shaba</cc>
    
    <cc>viy</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>186719</commentid>
    <comment_count>0</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2019-12-31 11:15:55 +0300</bug_when>
    <thetext>https://lists.altlinux.org/pipermail/community/2019-October/687673.html

плагин ping по умолчанию не работает, если используется systemd. Надо добавить в подпакет файл /etc/systemd/system/collectd.service.d/ping-override.conf с таким содержимым:

[Service]

CapabilityBoundingSet=CAP_NET_RAW

Вероятно, надо проверить остальные плагины на необходимость добавления capability. Но надо как-то придумать, чтобы этот файл попадал в систему только в случае наличия systemd.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186722</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2019-12-31 15:03:09 +0300</bug_when>
    <thetext>(In reply to comment #0)
&gt; https://lists.altlinux.org/pipermail/community/2019-October/687673.html
&gt; 
&gt; плагин ping по умолчанию не работает, если используется systemd. Надо добавить
&gt; в подпакет файл /etc/systemd/system/collectd.service.d/ping-override.conf с
&gt; таким содержимым:
&gt; 
&gt; [Service]
&gt; 
&gt; CapabilityBoundingSet=CAP_NET_RAW
&gt; 
&gt; Вероятно, надо проверить остальные плагины на необходимость добавления
&gt; capability. Но надо как-то придумать, чтобы этот файл попадал в систему только
&gt; в случае наличия systemd.

Обратите внимание, что утилите ping CAP_NET_RAW не требуется.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186809</commentid>
    <comment_count>2</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-01-09 17:58:09 +0300</bug_when>
    <thetext>Предлагаю оставить эту настройку системному администратору.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186810</commentid>
    <comment_count>3</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2020-01-09 18:07:24 +0300</bug_when>
    <thetext>(In reply to comment #2)

&gt; Предлагаю оставить эту настройку системному администратору.

Ещё бы вспоминать про неё.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202861</commentid>
    <comment_count>4</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2021-09-16 16:35:44 +0300</bug_when>
    <thetext>(Ответ для Dmitry V. Levin на комментарий #1)
&gt; (In reply to comment #0)
&gt; 
&gt; Обратите внимание, что утилите ping CAP_NET_RAW не требуется.

Дим, а какому именно ping не нужен CAP_NET_RAW ? Я начал смотреть, можно ли это задачу закрыть как-то иначе, но пока что вижу, что в ping CAP_NET_RAW используется.

# strace -e capset  ping ya.ru -c 1
capset({version=_LINUX_CAPABILITY_VERSION_3, pid=0}, {effective=1&lt;&lt;CAP_SETGID|1&lt;&lt;CAP_SETUID, permitted=1&lt;&lt;CAP_SETGID|1&lt;&lt;CAP_SETUID|1&lt;&lt;CAP_NET_ADMIN|1&lt;&lt;CAP_NET_RAW, inheritable=0}) = 0
capset({version=_LINUX_CAPABILITY_VERSION_3, pid=0}, {effective=0, permitted=1&lt;&lt;CAP_NET_ADMIN|1&lt;&lt;CAP_NET_RAW, inheritable=0}) = 0
capset({version=_LINUX_CAPABILITY_VERSION_3, pid=0}, {effective=1&lt;&lt;CAP_NET_RAW, permitted=1&lt;&lt;CAP_NET_ADMIN|1&lt;&lt;CAP_NET_RAW, inheritable=0}) = 0
capset({version=_LINUX_CAPABILITY_VERSION_3, pid=0}, {effective=0, permitted=1&lt;&lt;CAP_NET_ADMIN|1&lt;&lt;CAP_NET_RAW, inheritable=0}) = 0
PING ya.ru(ya.ru (2a02:6b8::2:242)) 56 data bytes
capset({version=_LINUX_CAPABILITY_VERSION_3, pid=0}, {effective=0, permitted=0, inheritable=0}) = 0
64 bytes from ya.ru (2a02:6b8::2:242): icmp_seq=1 ttl=54 time=8.34 ms

--- ya.ru ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 8.337/8.337/8.337/0.000 ms
+++ exited with 0 +++</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202868</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2021-09-16 18:46:06 +0300</bug_when>
    <thetext>(In reply to Anton Farygin from comment #4)
&gt; (Ответ для Dmitry V. Levin на комментарий #1)
&gt; &gt; (In reply to comment #0)
&gt; &gt; 
&gt; &gt; Обратите внимание, что утилите ping CAP_NET_RAW не требуется.
&gt; 
&gt; Дим, а какому именно ping не нужен CAP_NET_RAW ? Я начал смотреть, можно ли
&gt; это задачу закрыть как-то иначе, но пока что вижу, что в ping CAP_NET_RAW
&gt; используется.
&gt; 
&gt; # strace -e capset  ping ya.ru -c 1

В этом примере пользователь уже настолько привилегированный, что CAP_NET_RAW уже есть.
Но если CAP_NET_RAW нет, то используется другой механизм:

# control ping help
public: Any user can execute ping command
netadmin: Only &quot;netadmin&quot; group members can execute ping command
restricted: Only root can execute ping command
public_caps: Any user can execute ping command (for containers only)
netadmin_caps: Only &quot;netadmin&quot; group members can execute ping command (for containers only)
# control ping
netadmin

$ ls -lL /bin/ping
-rwx--s--x 1 root iputils 76784 Aug  6 13:34 /bin/ping
$ ping -c1 ya.ru.
PING ya.ru (87.250.250.242) 56(84) bytes of data.
64 bytes from ya.ru (87.250.250.242): icmp_seq=1 ttl=53 time=5.41 ms

linux$ sed -n &apos;/ping_group_range/,/^$/p&apos; Documentation/networking/ip-sysctl.rst
ping_group_range - 2 INTEGERS
	Restrict ICMP_PROTO datagram sockets to users in the group range.
	The default is &quot;1 0&quot;, meaning, that nobody (not even root) may
	create ping sockets.  Setting it to &quot;100 100&quot; would grant permissions
	to the single group. &quot;0 4294967295&quot; would enable it for the world, &quot;100
	4294967295&quot; would enable it for the users, but not daemons.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202870</commentid>
    <comment_count>6</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2021-09-16 19:54:40 +0300</bug_when>
    <thetext>ага, понял. Посмотрю ещё внимательнее.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282588</commentid>
    <comment_count>7</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2026-02-24 16:29:59 +0300</bug_when>
    <thetext>collectd-5.12.0-alt9 -&gt; sisyphus:

Tue Feb 24 2026 Anton Farygin &lt;rider@altlinux&gt; 5.12.0-alt9
- used /run/rrdcached.sock instead of /tmp and /var/run paths (ALT#57971)
- notify_email: replaced libesmtp with libcurl for TLS/SSL support (ALT#49531)
- added connectivity and mqtt plugins as subpackages (ALT#39459)
- added CAP_NET_RAW capability for ping plugin via systemd drop-in (ALT#37710)
- fixed rrdcached plugin permission denied due to -B flag restriction (ALT#57972)
- commented out LoadPlugin rrdtool in default config (ALT#36950)</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>