Запуск Viber как другого пользователя при использовании микрофона и динамиков «моего» X-сервера

Я запускаю Fedora с GNOME и недавно установил Viber для Linux . Это очень хорошо, и все работает нормально.

Поскольку Viber не является программным обеспечением с открытым исходным кодом, я решил запустить его как другого пользователя, чтобы убедиться, что он не имеет доступа к моим файлам без моей концентрации , создав пользователя: group viber:viber . Если я попытаюсь открыть изнутри файлы Viber , принадлежащие мне или любому другому пользователю, он не сможет их прочитать. Цель достигнута, но отчасти. Теперь я наткнулся на другую проблему: Viber работает только с сообщениями, и когда я пытаюсь позвонить, он говорит, что он не может найти ни микрофона, ни динамиков? Мне кажется, что я знаю, почему (я запускаю X Server (GNOME) как я и Viber как viber: viber (user: group) ).

Как заставить Viber работать как viber:viber и в то же время, чтобы использовать микрофон и динамики, при запуске сессии GNOME в качестве myusername:myusername ?

Решения SELinux также приветствуются, но с конкретными примерами! chroot не является решением, так как это, как я понял, приведет к той же проблеме, что описана выше.

ИЗМЕНИТЬ 1:

Исполнение для его запуска: su - viber -c /opt/viber/Viber

  • SELinux и докер: разрешите доступ к сокету X unix в /tmp/.X11-unix
  • Резервная система seLinux работает строго
  • Создание пользовательского контекста / типа файла SELinux из CIL
  • Как пометить вновь созданный файл с помощью «system_u»?
  • Ограничьте приложения для доступа к определенному оборудованию (веб-камера, микрофон ...)
  • Какие роли выполняют DAC (разрешения файлов), ACL и MAC (SELinux) в защите файлов Linux?
  • chcon: не может применять частичный контекст к немеченому файлу при установке nagios с SELinux
  • Каков правильный способ установки контекста SELinux в RPM .spec?
  • 3 Solutions collect form web for “Запуск Viber как другого пользователя при использовании микрофона и динамиков «моего» X-сервера”

    Вам нужно запустить pulseaudio в системном режиме и позволить всем пользователям получить к нему доступ, к сожалению, это сильно обескураживает разработчик Pulseaudio .

    Вот сценарий службы systemd, который должен улучшиться выше:

     # /etc/systemd/system/pulseaudio.service: [Unit] Description=PulseAudio Daemon [Install] WantedBy=multi-user.target [Service] Type=simple PrivateTmp=true ExecStart=/usr/bin/pulseaudio --system --disallow-exit 

    Если вы хотите запустить с включенным SELinux, вот сообщение, описывающее правила SELinux .

    Я не знал, что Pulseaudio работает на Fedora в качестве аудиосервера.

    После исследования, я наконец нашел способ обмена аудио (микрофон и динамики) среди других пользователей, при запуске Pulseaudio как обычный пользователь (я), а не в системном режиме .

    Для этого вам нужно будет скопировать исходный файл конфигурации в домашний каталог:

     cp /etc/pulse/default.pa ~/.pulse/default.pa 

    Затем добавьте к нему следующий параметр конфигурации ( ~/.pulse/default.pa ):

    load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1

    Теперь под теми пользователями / пользователями , с которыми вы хотите поделиться аудио, в своих домашних каталогах (НЕ ВАШИ) создайте пользовательский файл конфигурации пользователя ~/.pulse/client.conf пользователя ~/.pulse/client.conf и добавьте следующий параметр:

     default-server = 127.0.0.1 

    Не забудьте перезапустить аудиосервер или компьютер / сервер, чтобы применить новые настройки.

    В конце концов, я могу запустить Viber в качестве другого пользовательского viber:viber и иметь доступ к микрофону и динамикам, при запуске сеанса GNOME в качестве myusername:myusername .


    Успешно протестирован на Fedora 20 .

    Осторожно, /opt/viber/Viber имеет биты SUID и GUID. Тем не менее, он, вероятно, будет работать как корень (я его не тестировал).

    Interesting Posts

    Debian, virtualenv, IPython и matplotlib встроенные графики

    Каковы различия между xdotool и xautomation?

    DVD, приводящий к непоследовательности

    Вставка скрипта Sed и добавление в неправильное место только в одном конкретном месте

    Почему я хочу создавать дополнительные разделы, если RHEL будет распознавать только до 16?

    Сервер HylaFax работает в OS X?

    Туннелирование нескольких портов через один порт

    Как заставить Mint распознавать микрофон моего ноутбука как монофонический вход вместо стерео входа?

    Почему мой диалог сохранения приложения X11 неожиданно по умолчанию совпадает с «Недавно сохраненным» в боковой панели «Места»?

    Сделать горячие клавиши IRDA на экране блокировки

    Как установить Remix OS в коробки GNOME?

    При использовании zsh tab-completion игнорируйте CDPATH, если локальный файл или каталог совпадают

    Почему изменился формат времени в чате Steam после того, как я начал использовать xinit?

    Intel Графическая ошибка: i915 имеет фиктивное выравнивание

    Проблема с чтением мыши из / dev / input / events

    Linux и Unix - лучшая ОС в мире.