Akční adventura State of Mind je na portále GOG.com zdarma, akce trvá do 10. září.
Na Kickstarteru běží kampaň na podporu malého robotický psa Petoi Quaddle. Postaven je na ESP32-S3. V několika variantách. S řadou senzorů. Programovat lze pomocí Pythonu, C++ nebo i vizuálních bloků. Zkoušet a trénovat lze v simulátoru.
Dětem začala škola a nedobrovolně se tak musí vzdělávat. Avšak pro dospělé, kteří se chtějí vzdělávat nebo naopak se o vědomosti podělit, je tu Virtuální Bastlírna - jako každý měsíc si můžete online a zdarma nezávazně popovídat o vědě a technice nejen s bastlíři, ale i s vývojáři, vědci nebo profesory. A čemu se strahováci budou věnovat? Blíží se KiCAD 11 s nespočtem novinek, z nichž zde musí zmínit alespoň možnost kótování a závislostí z
… více »Asahi Linux, tj. Linux pro Apple Silicon, oficiálně podporuje čipy M3 (M3, M3 Pro a M3 Max).
Společnost Acer oslavila 50 let. Na tiskové konferenci next@acer představila řadu novinek. Vypíchnout lze přenosný ePaper displej Acer EP130K, přenosné řešení se třemi displeji Acer PD163Q P3 nebo herní handheld a notebook v jednom DualPlay Mini.
Server SiFive BigSky SF-2U870 2U je založený na jádře SiFive P870-D, zatím je naintegrovaných 32 jader 256 GB RAM 2 GHz, škálovat lze do 256 jader na čip. O něco podrobnější popis serveru v článku SiFive BigSky Ships the First RISC-V Server. Is the GPU Head Node the Prize? na futurumgroup.com. Asi ani tento čip nebude na úrovni nejlepších 64-bit ARMů a AMD Zenů, ale splňuje RVA23 specifikaci a je podporovaný Ubuntu 26.04 LTS a RHEL 10. V článku je
… více »Na YouTube lze zhlédnout nový celovečerní dokumentární film The Story of VS Code | Official Documentary věnovaný Visual Studio Code.
Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 26.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
Byla vydána nová stabilní verze 8.2 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 152. Přehled novinek i s náhledy v příspěvku na blogu.
Většinou bývá na začátku různých návodů deaktivace SELinuxu. Nebo v případě, že něco nejde, tak se jde a deaktivuje SELinux a dál už se to neřeší. Takže takto ne. Teď si ukážeme, jak problémy dohledat a řešit. Tento zápisek vznikl jako pokračování zápisku: Střípky z IT - (9) : Nagios : Uhádnete, kde byl problém?
Ve zmíněném zápisku to může chvilku vypadat beznadějně, ale ve skutečnosti je to celkem jednoduché.
Budeme si vše ukazovat na AlmaLinux 8.x. Když máme nějaký problém s oprávněními, tak šup se podívat do logu. Bezpečnostní věci se logují do audit logu, tj. do "/var/log/audit/audit.log". V případě zmíněného kvízu tam uvidíme něco jako toto:
tail -n 50 /var/log/audit/audit.log |grep -i AVC
type=AVC msg=audit(1664983293.312:637187): avc: denied { getattr } for pid=1461003 comm="sh" path="/usr/bin/sudo" dev="dm-2" ino=20254 scontext=system_u:system_r:nrpe_t:s0 tcontext=system_u:object_r:sudo_exec_t:s0 tclass=file permissive=0
type=AVC msg=audit(1664983293.312:637188): avc: denied { getattr } for pid=1461003 comm="sh" path="/usr/bin/sudo" dev="dm-2" ino=20254 scontext=system_u:system_r:nrpe_t:s0 tcontext=system_u:object_r:sudo_exec_t:s0 tclass=file permissive=0
Co teď? Nu, evidentně je to problém SELinuxu. Můžeme si zkusit ho dočasně vypnout a ověřit funkčnost takto:
# deaktivace SELinux (logy se budou tvořit dále, ale politiky se nebudou uplatňovat) setenforce 0 # ověříme, že je deaktivováno getenforce # provedeme akci, která nám nešla # následně znovu povolíme SELinux (restarty apod. nejsou třeba, vše funguje hned) setenforce 1 getenforce
Systém není postaven hloupě, s SELinux se počítá. Proto existuje balíček "nrpe-selinux". Tento balíček by měl doplnit kompatibilitu nagios modulů s SELinux. Stačí jen nainstalovat balíček:
dnf install nrpe-selinux
Tento balíček nainstaluje SELinux politiku, takže pak v modulech uvidíme "nrpe_epel" :
emodule -l |grep nrpe nrpe_epel
Po instalaci tohoto modulu je potřeba zapnout ještě fci na povolení volání sudo:
# povolíme setsebool -P nagios_run_sudo on # ověříme nastavení getsebool -a |grep -i nagi logging_syslogd_run_nagios_plugins --> off nagios_run_pnp4nagios --> off nagios_run_sudo --> on nagios_use_nfs --> off
Problém je, že i tak nám to nebude fungovat. Důvod je ten, že tyto politiky nepočítají s moduly třetích stran. Jsou stavěny jen na moduly dodávané s ditribucí / repositářem apod. My ale chceme používat 3rd modul, který volá systemctl apod. Chybu, kterou v našem případě pak dostaneme bude:
# původní chyba (setsebool -P nagios_run_sudo off): NRPE: Unable to read output # aktuální chyba (setsebool -P nagios_run_sudo on) UNKNOWN: nagiosplugin.error.CheckError: [Errno 13] Permission denied: 'systemctl'
Na práci s SELinuxem máme nějaké nástroje, které nejsou by default součástí instalace (např. audit2allow), takže doinstalujeme:
dnf install setroubleshoot
Nyní si můžeme udělat přehledný výpis chyb z logu, ze kterých pak můžeme vyrobit SELinux politiku:
# vyhledání záznamů v logu
ausearch -m AVC --start 02/04/2019 17:00:00 --end 02/04/2019 18:00:00
# konverze do čitelnějšího formátu
ausearch -m AVC --start 02/04/2019 17:00:00 --end 02/04/2019 18:00:00 | audit2allow
#============= nrpe_t ==============
#!!!! This avc is allowed in the current policy
allow nrpe_t chkpwd_exec_t:file { execute execute_no_trans map open read };
allow nrpe_t gconf_home_t:dir search;
allow nrpe_t init_t:unix_stream_socket connectto;
allow nrpe_t initrc_var_run_t:file { lock open read };
allow nrpe_t self:capability dac_read_search;
#!!!! This avc is allowed in the current policy
allow nrpe_t self:capability audit_write;
#!!!! This avc is allowed in the current policy
allow nrpe_t self:netlink_audit_socket { create nlmsg_relay };
#!!!! This avc has a dontaudit rule in the current policy
allow nrpe_t shadow_t:file { getattr open read };
#!!!! This avc is allowed in the current policy
allow nrpe_t sudo_exec_t:file { execute execute_no_trans getattr map open read };
#!!!! This avc can be allowed using the boolean 'domain_can_mmap_files'
allow nrpe_t systemd_systemctl_exec_t:file map;
allow nrpe_t systemd_systemctl_exec_t:file { execute execute_no_trans open read };
Znalý člověk SELinuxu si všiml, že výše je chyba. Tou chybou je vyhledávání logů ohledně AVC. Existuje totiž ještě USER_AVC. Takže celé by to mělo být (za přesnost výpisu neručím, jsou to starší poznámky, možná neúplné, je třeba to brát jako příklad, jak postupovat):
ausearch -m AVC,USER_AVC --start 10/05/2022 17:00:00 --end 10/05/2022 18:00:00 | audit2allow
#============= nrpe_t ==============
#!!!! This avc is allowed in the current policy
allow nrpe_t chkpwd_exec_t:file { execute execute_no_trans map open read };
#!!!! This avc is allowed in the current policy
allow nrpe_t gconf_home_t:dir search;
allow nrpe_t init_t:system status;
#!!!! This avc is allowed in the current policy
allow nrpe_t init_t:unix_stream_socket connectto;
#!!!! This avc is allowed in the current policy
allow nrpe_t initrc_var_run_t:file { lock open read };
#!!!! This avc is allowed in the current policy
allow nrpe_t self:capability { audit_write dac_read_search };
#!!!! This avc is allowed in the current policy
allow nrpe_t self:netlink_audit_socket { create nlmsg_relay };
#!!!! This avc is allowed in the current policy
allow nrpe_t shadow_t:file { getattr open read };
#!!!! This avc is allowed in the current policy
allow nrpe_t sudo_exec_t:file { execute execute_no_trans getattr map open read };
#!!!! This avc is allowed in the current policy
allow nrpe_t systemd_logind_t:dbus send_msg;
#!!!! This avc can be allowed using the boolean 'domain_can_mmap_files'
allow nrpe_t systemd_systemctl_exec_t:file map;
allow nrpe_t systemd_systemctl_exec_t:file { execute execute_no_trans open read };
#!!!! This avc is allowed in the current policy
allow nrpe_t systemd_unit_file_t:service status;
#============= systemd_logind_t ==============
#!!!! This avc is allowed in the current policy
allow systemd_logind_t nrpe_t:dbus send_msg;
Vygenerujeme si policy pro SELinux a provedeme import
# vygenerování policy / modulu ausearch -m AVC,USER_AVC --start 10/05/2022 17:00:00 --end 10/05/2022 18:00:00 | audit2allow -a -M nrpe_systemd # výstupem jsou dva soubory: nrpe_systemd.te # čitelný, ze kterého se vyrábí nečitelný modul nrpe_systemd.pp # modul jako výstup z ".te" souboru # import modulu semodule -i nrpe_systemd.pp # ověření, že byl naimportován semodule -l |grep nrpe nrpe_epel nrpe_systemd
Po naimportování modulu začne fungovat i vzdálené volání "check_systemd" a vše šlape.
V zápisku jsme si ukázali, jak jednoduše najít, kde je problém, jaký je postup pro jeho řešení apod. Pokud použijeme předpřipravené nástroje, není to nic složitého.
Zdar Max
Tiskni
Sdílej:
policycoreutils-python-utils-2.9-19.el8.noarch : SELinux policy core python utilities Repo : baseos Matched from: Filename : /usr/bin/audit2whyCoz je mimochodem uplne ten samy balik, ktery obsahuje audit2allow. To s tim omezenim poctu radku nechapu - takhle, asi bych ev. grepoval primo ten proces, takze grep sudo /var/log/audit/audit.log, ale i tak davam prednost audit2why.