Hi,
Chris <[email protected]> writes: > Yes, it seems most processes of postfix are chrooted by default in > Debian Stretch (plain install of Postfix via apt-get install postfix): I did install a vanilla Debian Stretch VM, setup an LXC container inside (using Stretch again) and installed postfix inside the container. Running needrestart inside of the container does *not* detect any false positives on postfix. So it seems that your setup has something special... On which linux distri and kernel are you running your LXC container? >From the kernel string it seems to be proxmox, isn't it? I assume there is something special in /proc/$PID/maps or the /proc/$PID/map_files/$MADDR links are missing which are used by needrestart. As fallback needrestart looks for /proc/$PID/root/$FILENAME which fails for chrooted processes. Regards, Thomas Needrestart looks for any executable mapped files > /usr/share/postfix/master.cf.dist used/installed by > /var/lib/dpkg/info/postfix/postfix.postinst is e.g. chrooting the > mentioned process: > > pickup unix n - y 60 1 pickup > >> Could you please post: >> stat /usr/lib/postfix/sbin/pickup > > Sure: > > File: /usr/lib/postfix/sbin/pickup > Size: 14408 Blocks: 32 IO Block: 4096 regular file > Device: 715h/1813d Inode: 142070 Links: 1 > Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > Access: 2018-02-08 01:06:13.281395346 +0000 > Modify: 2017-09-27 04:56:28.000000000 +0000 > Change: 2018-01-26 14:10:42.474783916 +0000 > Birth: - > >> stat /proc/25460/root/usr/lib/postfix/sbin/pickup > > the PIDs have changed here and are now: > > [main] #4262 uses non-existing /usr/lib/postfix/sbin/pickup > [main] #4262 is a child of #478 > > stat: cannot stat '/proc/4262/root/usr/lib/postfix/sbin/pickup': No such > file or directory > > and it seems the pickup is at: > > File: /proc/478/root/usr/lib/postfix/sbin/pickup > Size: 14408 Blocks: 32 IO Block: 4096 regular file > Device: 715h/1813d Inode: 142070 Links: 1 > Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > Access: 2018-02-08 01:06:13.281395346 +0000 > Modify: 2017-09-27 04:56:28.000000000 +0000 > Change: 2018-01-26 14:10:42.474783916 +0000 > Birth: - > > I've also had a look at the previously mentioned dovecot which seems to > be chrooted as well: > > "Login processes (imap-login, pop3-login) are chrooted by default into > an empty non-writable directory." > > -> https://wiki.dovecot.org/Chrooting > > and indeed the same happening here: > > [main] #24776 uses non-existing /usr/lib/dovecot/imap-login > [main] #24776 is a child of #13446 > > File: /usr/lib/dovecot/imap-login > Size: 31336 Blocks: 64 IO Block: 4096 regular file > Device: 70ah/1802d Inode: 920400 Links: 1 > Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > Access: 2018-02-08 13:49:54.190058675 +0100 > Modify: 2017-06-30 21:01:28.000000000 +0200 > Change: 2017-08-22 14:24:29.284898620 +0200 > Birth: - > > > stat: cannot stat '/proc/24776/root/usr/lib/dovecot/imap-login': No such > file or directory > > > File: /proc/13446/root/usr/lib/dovecot/imap-login > Size: 31336 Blocks: 64 IO Block: 4096 regular file > Device: 70ah/1802d Inode: 920400 Links: 1 > Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > Access: 2018-02-08 13:49:54.190058675 +0100 > Modify: 2017-06-30 21:01:28.000000000 +0200 > Change: 2017-08-22 14:24:29.284898620 +0200 > Birth: - > >> Regards, >> Thomas > > Thanks > >>> [main] #338 exe => /var/ossec/bin/ossec-agentd >>> [main] #338 is wazuh-agent.service >>> [main] #430 exe => /usr/lib/postfix/sbin/master >>> [main] #430 is [email protected] >>> >>> >>> cat /proc/338/cgroup >>> ------------- >>> >>> 12:cpuset:/ >>> 11:hugetlb:/ >>> 10:perf_event:/ >>> 9:blkio:/ >>> 8:net_cls,net_prio:/ >>> 7:memory:/ >>> 6:rdma:/ >>> 5:cpu,cpuacct:/ >>> 4:freezer:/ >>> 3:pids:/system.slice/wazuh-agent.service >>> 2:devices:/system.slice/wazuh-agent.service >>> 1:name=systemd:/system.slice/wazuh-agent.service >>> >>> >>> cat /proc/25460/cgroup >>> ---------------------- >>> >>> 12:cpuset:/ >>> 11:hugetlb:/ >>> 10:perf_event:/ >>> 9:blkio:/ >>> 8:net_cls,net_prio:/ >>> 7:memory:/ >>> 6:rdma:/ >>> 5:cpu,cpuacct:/ >>> 4:freezer:/ >>> 3:pids:/system.slice/system-postfix.slice/[email protected] >>> 2:devices:/system.slice/system-postfix.slice >>> 1:name=systemd:/system.slice/system-postfix.slice/[email protected] >>> >>> cat /proc/430/cgroup >>> -------------------- >>> >>> 12:cpuset:/ >>> 11:hugetlb:/ >>> 10:perf_event:/ >>> 9:blkio:/ >>> 8:net_cls,net_prio:/ >>> 7:memory:/ >>> 6:rdma:/ >>> 5:cpu,cpuacct:/ >>> 4:freezer:/ >>> 3:pids:/system.slice/system-postfix.slice/[email protected] >>> 2:devices:/system.slice/system-postfix.slice >>> 1:name=systemd:/system.slice/system-postfix.slice/[email protected] >>> >>> >>> As you have mentioned cgroups i'm also getting the following output from >>> the postfix services within the containers: >>> >>> Jan 28 15:51:51 example systemd[1]: postfix.service: Failed to reset >>> devices.list: Operation not permitted >>> Jan 28 15:51:51 example systemd[1]: postfix.service: Failed to set >>> invocation ID on control group /system.slice/postfix.service, ignoring: >>> Operation not permitted >>> >>> Not sure if this is related here. >>> >>>> Thanks, >>>> Thomas >>>> >>>> >>>> Chris <[email protected]> writes: >>>> >>>>> Package: needrestart >>>>> Version: 2.11-3 >>>>> Severity: normal >>>>> >>>>> Dear Maintainer, >>>>> >>>>> having Postfix and the wazuh-agent package from [1] on a current Debian >>>>> Stretch 9.3 running within an LXC container shows the following services >>>>> as required for a restart even if the services, the container or the >>>>> host was freshly restarted: >>>>> >>>>> [email protected] >>>>> wazuh-agent.service >>>>> >>>>> Running needrestart with the -v parameter shows this output: >>>>> >>>>> [main] eval /etc/needrestart/needrestart.conf >>>>> [main] needrestart v2.11 >>>>> [main] running in root mode >>>>> [Core] Using UI 'NeedRestart::UI::stdio'... >>>>> [main] detected systemd >>>>> [main] #372 uses non-existing /var/ossec/bin/ossec-agentd >>>>> [main] #372 is not a child >>>>> [main] #1047 uses non-existing /usr/lib/postfix/sbin/pickup >>>>> [main] #1047 is a child of #438 >>>>> [main] #372 exe => /var/ossec/bin/ossec-agentd >>>>> [main] #372 is wazuh-agent.service >>>>> [main] #438 exe => /usr/lib/postfix/sbin/master >>>>> [main] #438 is [email protected] >>>>> [Kernel] Linux: kernel release 4.13.13-5-pve, kernel version #1 SMP PVE >>>>> 4.13.13-36 (Mon, 15 Jan 2018 12:36:49 +0100) >>>>> [Kernel/Linux] Did not find any linux images. >>>>> Failed to retrieve available kernel versions. >>>>> Restarting services... >>>>> Services to be restarted: >>>>> Restart «[email protected]»? [Ynas?] n >>>>> Restart «wazuh-agent.service»? [Ynas?] n >>>>> Services being skipped: >>>>> systemctl restart [email protected] >>>>> systemctl restart wazuh-agent.service >>>>> No containers need to be restarted. >>>>> No user sessions are running outdated binaries. >>>>> >>>>> The two mentioned binaries which doesn't exist according to needrestart >>>>> output are there and accessible: >>>>> >>>>> ls -la /var/ossec/bin/ossec-agentd >>>>> >>>>> -rwxr-x--- 1 root root 528136 Dez 22 18:59 /var/ossec/bin/ossec-agentd >>>>> >>>>> ls -la /usr/lib/postfix/sbin/pickup >>>>> >>>>> -rwxr-xr-x 1 root root 14408 Sep 27 06:56 /usr/lib/postfix/sbin/pickup >>>>> >>>>> ls -la >>>>> >>>>> Not sure what causes this behavior. If there are any additional info i >>>>> could / need to provide please let me know. >>>>> >>>>> Thanks, >>>>> >>>>> [1] >>>>> https://documentation.wazuh.com/current/installation-guide/installing-wazuh-agent/wazuh_agent_deb.html >>>> >>> >> -- :: WWW: https://fiasko-nw.net/~thomas/ :: ::: Jabber: xmpp:[email protected] ::: :: flickr: https://www.flickr.com/photos/laugufe/ ::

