❗Более подробнее о возможностях ограничения можно почитать тут (офф вики Альт)

❗Более подробнее о ключах KDE — KDE Kiosk Keys и тут


Ограничения рабочего стола. Запрет смены обоев (фоновых рисунков) и т.д.

Расположение файла в котором указываются параметры ограничений рабочего стола KDE действующих на все учётки:

/etc/kf5/xdg/kdeglobals

При использовании разных ограничений глобально/пользователь необходимо прописать в данном файле

[KDE Action Restrictions][$ie]

Тогда ограничения пользователя будут учитываться, в противном случае будут действовать только параметры заданные глобально.

Расположение файла в котором указываются параметры ограничений рабочего стола KDE действующих на УЗ «user«:

/home/user/.config/kdeglobals

файл /home/user/.config/kdeglobals

файл может содержать разные параметры:

[KDE Resource Restrictions][$i]
# Отключает возможность изменения обоев рабочего стола
wallpaper=false

[KDE Action Restrictions][$i]
# Запрещает доступ к командной оболочке
shell_access=false
# Запрещает выполнение команд
run_command=false
# Запрещает выполнение команд через интерфейс действий
action/run_command=false
# Запрещает редактирование значков рабочего стола
editable_desktop_icons=false
# Отключает возможность блокировки экрана
action/lock_screen=false
# Отключает возможность создания новой сессии
action/start_new_session=false
# Отключает переключение пользователей
action/switch_user=false
# Скрывает опцию показа панели инструментов
action/options_show_toolbar=false
# Отключает предупреждения о невозможности записи в конфиг
warn_unwritable_config=false
# Запрещает перемещение панелей инструментов
movable_toolbars=false
# Отключает возможность разблокировки рабочего стола
plasma/plasmashell/unlockedDesktop=false
# Запрещает конфигурацию рабочего стола при его блокировке
plasma/plasmashell/allow_configure_when_locked=false
# Отключает контекстное меню оболочки плазмы
plasma/plasmashell/containment_context_menu=false
# Запрещает действия в контекстных меню
plasma/containment_actions=false
# Отключает возможность настройки горячих клавиш
action/options_configure_keybinding=false
# Отключает настройку панелей инструментов
action/options_configure_toolbars=false
# Отключает настройку уведомлений
action/options_configure_notifications=false
# Отключает доступ к настройке рабочего стола
action/configdesktop=false
# Отключает изменение размера значков на рабочем столе
action/incIconSize=false
action/decIconSize=false
# Отключает показ скрытых файлов/папок
action/show_dot=false
# Отключает возможность отправки страниц через интерфейс
action/sendPage=false
# Отключает возможность отправки URL
action/sendURL=false
# Отключает возможность изменения шрифтов
action/font=false
# Отключает возможность загрузки новых компонентов через GHNS
ghns=false
# Запрещает редактирование значков рабочего стола (повтор команды выше)
editable_desktop_icons=false
# Отключает предупреждения о невозможности записи в конфиг (повтор команды выше)
warn_unwritable_config=false
# Отключает автозаполнение текста в текстовых полях
lineedit_text_completion=false
# Отключает отображение пароля при вводе
lineedit_reveal_password=false
# Запрещает использование привилегий root
user/root=false
# Отключает контекстное меню для панели меню (Kickoff)
action/kicker_rmb=false
# Отключает контекстное меню для рабочего стола
action/kdesktop_rmb=true
# Отключает контекстное меню для терминала
action/konsole_rmb=false
# Отключает доступ к настройкам
action/settings=false
# Отключает использование данных приложений рабочего стола
appdata_kdesktop=false

[KDE Control Module Restrictions][$i]
# Отключает доступ к системным настройкам
systemsettings.desktop=false
# Отключает модуль энергопотребления
kcm_energyinfo.desktop=false
# Отключает информацию о дистрибутиве
kcm_about-distro.desktop=false
# Отключает модуль специальных возможностей
kcm_access.desktop=false
# Отключает модуль настройки цветов
kcm_colors.desktop=false
# Отключает модуль темы рабочего стола
kcm_desktoptheme.desktop=false
# Отключает настройки рабочей среды
kcm_workspace.desktop=false
# Отключает настройки файлового индекса Baloo
kcm_baloofile.desktop=false
# Отключает настройки клавиш
kcm_keys.desktop=false
# Отключает модуль настройки шрифтов
kcm_fonts.desktop=false
# Отключает модуль уведомлений
kcm_notifications.desktop=false
# Отключает управление пользователями
kcm_users.desktop=false
# Отключает настройки языка
kcm_translations.desktop=false
# Отключает модуль настройки тачпада
kcm_touchpad.desktop=false
# Отключает модуль стилей интерфейса
kcm_style.desktop=false
# Отключает заставки при входе
kcm_splashscreen.desktop=false
# Отключает настройки мыши
kcm_mouse.desktop=false
# Отключает настройки диспетчера входа (SDDM)
kcm_sddm.desktop=false
# Отключает настройку значков
kcm_icons.desktop=false
# Отключает общие настройки внешнего вида
kcm_lookandfeel.desktop=false
# Отключает настройки сессий
kcm_smserver.desktop=false
# Отключает начальную страницу настроек
kcm_landingpage.desktop=false
# Отключает настройки ночного режима
kcm_nightcolor.desktop=false
# Отключает настройки указателя мыши
kcm_cursortheme.desktop=false
# Отключает настройки форматов (даты, чисел и пр.)
kcm_formats.desktop=false
# Отключает настройки автозапуска приложений
kcm_autostart.desktop=false
# Отключает настройки графического планшета
kcm_tablet.desktop=false
# Отключает настройки Bluetooth
kcm_bluetooth.desktop=false
# Отключает настройки клавиатуры
kcm_keyboard.desktop=false
# Отключает выбор компонентов приложений
kcm_componentchooser.desktop=false
# Отключает настройки обратной связи при запуске приложений
kcm_launchfeedback.desktop=false
# Отключает настройки цветовой калибровки
kcm_kgamma.desktop=false
# Отключает управление демонами KDE
kcm_kded.desktop=false
# Отключает настройки часов
kcm_clock.desktop=false
# Отключает модуль работы с камерой
kamera.desktop=false
# Отключает проверку правописания
kcmspellchecking.desktop=false
# Отключает настройки джойстика
kcm_joystick.desktop=false
# Отключает настройки типов файлов
kcm_filetypes.desktop=false
# Отключает поиск по Plasmoid
kcm_plasmasearch.desktop=false
# Отключает действия Solid
kcm_solid_actions.desktop=false
# Отключает настройки активности
kcm_activities.desktop=false
# Отключает настройки интерфейса QtQuick
kcm_qtquicksettings.desktop=false
# Отключает управление принтерами
kcm_printer_manager.desktop=false
# Отключает настройки автоматического монтирования
kcm_device_automounter.desktop=false
# Отключает настройку путей в файловой системе
kcm_desktoppaths.desktop=false
# Отключает модуль установки шрифтов
kcm_fontinst.desktop=false
# Отключает настройки PCI устройств
kcm_pci.desktop=false
# Отключает настройки Samba
kcm_samba.desktop=false
# Отключает настройки OpenGL
kcm_glx.desktop=false
# Отключает настройки Wayland
kcm_wayland.desktop=false
# Отключает настройки USB устройств
kcm_usb.desktop=false
# Отключает SMART мониторинг
smart.desktop=false
# Отключает настройки прерываний
kcm_interrupts.desktop=false
# Отключает настройки Vulkan
kcm_vulkan.desktop=false
# Отключает настройки процессора
kcm_cpu.desktop=false
# Отключает настройки сетевых интерфейсов
kcm_nic.desktop=false
# Отключает настройки X-сервера
kcm_xserver.desktop=false
# Отключает настройки информации об устройстве
kcm_devinfo.desktop=false
# Отключает настройки EGL
kcm_egl.desktop=false
# Отключает настройки для аудио CD
kcm_audiocd.desktop=false
# Отключает настройки cookies
kcm_cookies.desktop=false
# Отключает настройки Cron
kcm_cron.desktop=false
# Отключает уведомления о свободной памяти
kcm_freememorynotifier.desktop=false
# Отключает настройки учетных записей
kcm_kaccounts.desktop=false
# Отключает KDE Connect
kcm_kdeconnect.desktop=false
# Отключает настройки дисплея
kcm_kscreen.desktop=false
# Отключает эффекты KWin
kcm_kwin_effects.desktop=false
# Отключает виртуальные рабочие столы KWin
kcm_kwin_virtualdesktops.desktop=false
# Отключает правила для окон KWin
kcm_kwinrules.desktop=false
# Отключает настройки сети
kcm_networkmanagement.desktop=false
# Отключает настройки PulseAudio
kcm_pulseaudio.desktop=false
# Отключает настройки SSL
kcm_ssl.desktop=false
# Отключает виртуальную клавиатуру
kcm_virtualkeyboard.desktop=false
# Отключает KDiskFree
kcm_kdf.desktop=false
# Отключает горячие клавиши
kcm_hotkeys.desktop=false
# Отключает KDE Wallet
kcm_kwallet5.desktop=false
# Отключает настройки композитора KWin
kwincompositing.desktop=false
# Отключает настройки декораций окон KWin
kcm_kwindecoration.desktop=false
# Отключает настройки поведения окон KWin
kcm_kwinoptions.desktop=false
# Отключает настройку экранных краев KWin
kcm_kwinscreenedges.desktop=false
# Отключает скрипты KWin
kcm_kwin_scripts.desktop=false
# Отключает настройки переключателя задач KWin
kcm_kwintabbox.desktop=false
# Отключает настройки сенсорного ввода KWin
kcm_kwintouchscreen.desktop=false
# Отключает модуль CDDB
kcm_cddb.desktop=false
# Отключает настройки компонентов
kcm_multicomponentchooser.desktop=false
# Отключает предпочтения сети
kcm_netpref.desktop=false
# Отключает профили PowerDevil
kcm_powerdevilactivitiesconfig.desktop=false
kcm_powerdevilglobalconfig.desktop=false
kcm_powerdevilprofilesconfig.desktop=false
# Отключает настройки прокси
kcm_proxy.desktop=false
# Отключает настройки блокировки экрана
kcm_screenlocker.desktop=false
# Отключает настройки Samba
kcm_smb.desktop=false
# Отключает веб-ярлыки
kcm_webshortcuts.desktop=false

 

В данном примере ограничены настройки параметров рабочего стола KDE (kcm_), ограничены параметры блокировки рабочего стола, ограничены изменения внешнего вида и другие. Запрещена смена обоев.

Почти полный список ключей для настройки рабочего стола можно получить выполнив в консоли команду

kcmshell5 --list

Для настройки ключа в [KDE Action Restrictions] необходимо добавить .desktop.

 Т.е. в выводе команды —list будет указано kcm_webshortcuts, соответственно для управления необходимо указывать kcm_webshortcuts.desktop.

Меню для включения и отключения защиты KDE

Скрипт при снятии защиты делает бекап актуальных настроек, внесенных в файл kdeglobals и удаляет сам файл с настройками. При установке защиты, скрипт просто восстанавливает файл из бекапа.

Создаете файл с расширением .sh, в правах файла ставите галочку, что он является исполняемым. Содержимое файла

#!/bin/bash
i=$(kdialog --radiolist "Выберите действие" 1 "Установить защиту KDE" on 2 "Снять защиту KDE" off)
if [ $i = 1 ] ; then 
 pkexec bash -c 'cp /etc/kf5/xdg/kdeglobals.bk /etc/kf5/xdg/kdeglobals'
 kdialog --msgbox "Защита установлена"
fi
if [ $i = 2 ] ; then
 pkexec bash -c 'cp /etc/kf5/xdg/kdeglobals /etc/kf5/xdg/kdeglobals.bk && rm -f /etc/kf5/xdg/kdeglobals'
 kdialog --msgbox "Защита снята"
fi

После выполнения скрипта, рекомендуется делать ребут системы или релог пользователя, но часть настроек будет доступна сразу после удаления защиты.

chmod 744 /usr/bin/kcmshell5

Блокировка ярлыков

su -
chown root:root /home/user/Рабочий\ стол
chown root:root /home/user/Рабочий\ стол/*
chmod 0755 /home/user/Рабочий\ стол
chmod 0755 /home/user/Рабочий\ стол/*

* user — пользователь, измените на свой


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *