[devel] firewall для приложений

Anton Farygin rider на basealt.ru
Вт Июл 1 09:25:59 MSK 2025


On 6/30/25 21:19, Arseny Maslennikov wrote:
> On Mon, Jun 30, 2025 at 09:16:00PM +0300, Arseny Maslennikov wrote:
>> On Fri, Jun 20, 2025 at 08:47:44PM +0300, Denis Medvedev wrote:
>>> On Fri, 20 Jun 2025 20:04:09 +0300
>>> Semen Fomchenkov <armatik на altlinux.org> wrote:
>>>
>>>> 20.06.2025 19:56, Andrey Limachko пишет:
>>>>> Обращение в сеть должно быть осознанным для пользователя. К
>>>>> примеру, виджет погоды Gnome ни кого ни о чём не спрашивает.
>>>> О каком виджете погоды GNOME вы говорите? То что в центре
>>>> уведомлений, использует приложение погоды GNOME, то что можно
>>>> добавить расширением тоже использует погоду GNOME. Да и странно бы
>>>> было получать погоду не из интернета, так что ограничения любой
>>>> работы с сетью выглядит достаточно странно, если это нужно
>>>> пользователю, то пусть настраивает firewall.
>>> оно ставится по умолчанию, что не дает человеку принять решение, надо
>>> ему или не надо такое поведение.
>>> Лучше бы ставился файрвол с возможностью добавлять исключения по
>>> попыткам приложений лезть в интернет. Тогда увидев, что приложение
>>> "погода" полезло в интернет, можно было бы
>>> разрешить ему это
>>> или снести это приложение
>>> или протоколировать его трафик,
>>> или запретить ему выход в сеть.
>> nftables позволяет вешать правила на трафик, причастный сокету, который
>> был открыт в сигруппе X или от UID Y. (Второе добавили в ядро для нужд
>> Android.)
> https://systemd.io/DESKTOP_ENVIRONMENTS/
> Здесь приводят пример, как DE (её компонент, порождающий процессы) могла
> бы, запуская приложение, помещать его в индивидуальную сигруппу (и
> сокеты, открытые его процессами, попали бы под нужные правила).
>
> Правда, если (когда?) популярные DE начнут так делать, то это ослабит
> надёжность: повисли по какой-нибудь причине `systemd --user` или
> `dbus-daemon`, и каюк; хомячок даже 'System Monitor' не запустит, чтобы
> что-нибудь прибить, только перелогин + grace-период 30 секунд ему помогут.
> Но это уже совсем другая история...
Всё уже давно придумали

CGroup /:

-.slice
├─user.slice
│ └─user-1000.slice
│   ├─user на 1000.service…
│   │ ├─session.slice
│   │ │ ├─xdg-permission-store.service
│   │ │ │ └─2366 /usr/libexec/xdg-permission-store
│   │ │ ├─xdg-document-portal.service
│   │ │ │ ├─2371 /usr/libexec/xdg-document-portal
│   │ │ │ └─2377 fusermount3 -o 
rw,nosuid,nodev,fsname=portal,auto_unmount,subtype=portal -- 
/run/user/1000/doc
│   │ │ ├─xdg-desktop-portal.service
│   │ │ │ └─2358 /usr/libexec/xdg-desktop-portal
│   │ │ ├─plasma-ksmserver.service
│   │ │ │ └─2455 /usr/bin/ksmserver
│   │ │ ├─pipewire-pulse.service
│   │ │ │ └─2490 /usr/bin/pipewire-pulse
│   │ │ ├─plasma-kwin_wayland.service
│   │ │ │ ├─2342 /usr/bin/kwin_wayland_wrapper --xwayland
│   │ │ │ ├─2349 /usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 
--xwayland-fd 8 --xwayland-fd 9 --xwayland-display :0 
--xwayland-xauthority /run/user/1000/xauth_xaUBcW --xwayland
│   │ │ │ └─2408 /usr/bin/Xwayland :0 -auth /run/user/1000/xauth_xaUBcW 
-listenfd 8 -listenfd 9 -displayfd 73 -wm 75 -rootless
│   │ │ ├─wireplumber.service
│   │ │ │ └─2272 /usr/bin/wireplumber
│   │ │ ├─plasma-kded6.service
│   │ │ │ ├─2457 /usr/bin/kded6
│   │ │ │ └─2572 /usr/bin/xsettingsd
│   │ │ ├─plasma-xdg-desktop-portal-kde.service
│   │ │ │ └─2543 /usr/libexec/xdg-desktop-portal-kde
│   │ │ ├─plasma-plasmashell.service
│   │ │ │ ├─87934 /usr/bin/plasmashell --no-respawn
│   │ │ │ └─394806 /usr/libexec/kf6/kioworker 
/usr/lib64/qt6/plugins/kf6/kio/kio_http.so https 
  local:/run/user/1000/plasmashellPfCEup.625.kioworker.socket
│   │ │ ├─at-spi-dbus-bus.service
│   │ │ │ ├─2429 /usr/libexec/at-spi-bus-launcher
│   │ │ │ ├─2440 /bin/dbus-daemon 
--config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork 
--print-address 13 --address=unix:path=/run/user/1000/at-spi/bus_0
│   │ │ │ └─2446 /usr/libexec/at-spi2-registryd --use-gnome-session
│   │ │ ├─pipewire.service
│   │ │ │ └─2270 /usr/bin/pipewire
│   │ │ └─dbus.service
│   │ │   ├─2267 /usr/bin/dbus-daemon --session --address=systemd: 
--nofork --nopidfile --systemd-activation --syslog-only
│   │ │   ├─2888 /home/rider/bin/Telegram/Telegram
│   │ │   ├─23228 /usr/bin/kwalletd6
│   │ │   └─64350 /usr/libexec/kf6/kiod6
│   │ ├─background.slice
│   │ │ ├─plasma-kactivitymanagerd.service
│   │ │ │ └─2537 /usr/libexec/kactivitymanagerd
│   │ │ ├─plasma-polkit-agent.service
│   │ │ │ └─2541 /usr/libexec/polkit-kde-authentication-agent-1
│   │ │ ├─plasma-xembedsniproxy.service
│   │ │ │ └─2544 /usr/bin/xembedsniproxy
│   │ │ ├─plasma-gmenudbusmenuproxy.service
│   │ │ │ └─2539 /usr/bin/gmenudbusmenuproxy
│   │ │ ├─plasma-krunner.service
│   │ │ │ └─2826 /usr/bin/krunner --daemon
│   │ │ ├─plasma-kaccess.service
│   │ │ │ └─2540 /usr/bin/kaccess
│   │ │ ├─plasma-powerdevil.service
│   │ │ │ └─2542 /usr/libexec/org_kde_powerdevil
│   │ │ └─plasma-dolphin.service
│   │ │   └─336455 /usr/bin/dolphin --daemon
│   │ ├─app.slice
│   │ │ ├─app-org.kde.kdeconnect.daemon на autostart.service
│   │ │ │ └─2709 /usr/bin/kdeconnectd
│   │ │ ├─app-org.kde.konsole на 3e2ef813ac804ecc8d7f98e45191805c.service
│   │ │ │ └─420644 /bin/bash
│   │ │ ├─app-org.kde.konsole на 88c07ed7567b4a4ab0eca99c93bac3e0.service
│   │ │ │ ├─411760 /bin/bash
│   │ │ │ ├─411765 sudo su -
│   │ │ │ ├─411767 sudo su -
│   │ │ │ ├─411768 su -
│   │ │ │ └─411772 -bash
│   │ │ ├─app-solaar на autostart.service
│   │ │ │ └─2713 /usr/bin/python3 /bin/solaar --window=hide
│   │ │ ├─app-org.kde.konsole-411744.scope
│   │ │ │ └─411744 /usr/bin/konsole
│   │ │ ├─app-org.kde.konsole на 0153feb8a1724ddca97bad81ce183d8c.service





Подробная информация о списке рассылки Devel