trombik.dbus

ansible-role-dbus

安装和配置 dbus

要求

角色变量

变量 描述 默认值
dbus_user dbus 用户 {{ __dbus_user }}
dbus_group dbus {{ __dbus_group }}
dbus_package dbus 包名 {{ __dbus_package }}
dbus_service dbus 服务名 {{ __dbus_service }}
dbus_conf_dir 配置目录路径 {{ __dbus_conf_dir }}
dbus_systemd_dir system.d 目录路径 {{ dbus_conf_dir }}/system.d
dbus_conf_file system-local.conf 的路径 {{ dbus_conf_dir }}/system-local.conf
dbus_system_local_config system-local.conf 的内容 见下文
dbus_systemd_config system.d 目录下的文件列表 []

dbus_system_local_config

<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-Bus Bus Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
 <busconfig></busconfig>

dbus_systemd_config

此变量是一个字典列表,表示 dbus_systemd_dir 下的文件。

必须?
name 文件名
state 状态(presentabsent
content 文件内容

Debian

变量 默认值
__dbus_user messagebus
__dbus_group messagebus
__dbus_package dbus
__dbus_conf_dir /etc/dbus-1
__dbus_service dbus.service

FreeBSD

变量 默认值
__dbus_user messagebus
__dbus_group messagebus
__dbus_package devel/dbus
__dbus_conf_dir /usr/local/etc/dbus-1
__dbus_service dbus

OpenBSD

变量 默认值
__dbus_user _dbus
__dbus_group _dbus
__dbus_package dbus
__dbus_conf_dir /etc/dbus-1
__dbus_service messagebus

RedHat

变量 默认值
__dbus_user messagebus
__dbus_group messagebus
__dbus_package dbus
__dbus_conf_dir /etc/dbus-1
__dbus_service dbus.service

依赖

示例剧本

- hosts: localhost
  roles:
    - ansible-role-dbus
  pre_tasks:
    - name: 创建 _avahi 用户
      user:
        name: _avahi
        state: present
      when:
        - ansible_os_family != 'FreeBSD'
        - ansible_os_family != 'OpenBSD'
    - name: 创建 wheel 
      group:
        name: wheel
        state: present
      when:
        - ansible_os_family != 'FreeBSD'
        - ansible_os_family != 'OpenBSD'

  vars:
    dbus_systemd_config:
      - name: foo.conf
        state: absent
      - name: avahi-dbus.conf
        state: present
        content: |
          <!DOCTYPE busconfig PUBLIC
                    "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
                    "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
          <busconfig>

            <!--  root 或用户 _avahi 可以拥有 Avahi 服务 -->
            <policy user="_avahi">
              <allow own="org.freedesktop.Avahi"/>
            </policy>
            <policy user="root">
              <allow own="org.freedesktop.Avahi"/>
            </policy>

            <!-- 允许任何人调用 Avahi 服务器的方法,除了 SetHostName -->
            <policy context="default">
              <allow send_destination="org.freedesktop.Avahi"/>
              <allow receive_sender="org.freedesktop.Avahi"/>

              <deny send_destination="org.freedesktop.Avahi"
                    send_interface="org.freedesktop.Avahi.Server" send_member="SetHostName"/>
            </policy>

            <!-- 允许 "wheel" 组的用户访问包括 SetHostName 的所有权限 -->
            <policy group="wheel">
              <allow send_destination="org.freedesktop.Avahi"/>
              <allow receive_sender="org.freedesktop.Avahi"/>
            </policy>
            <policy user="root">
              <allow send_destination="org.freedesktop.Avahi"/>
              <allow receive_sender="org.freedesktop.Avahi"/>
            </policy>
          </busconfig>

许可证

版权所有 (c) 2017 Tomoyuki Sakurai <tomoyukis@reallyenglish.com>

特此授权使用、复制、修改和分发本软件,出于任何目的,无论有无费用,但必须在所有副本中包含上述版权声明和本许可声明。

本软件是 "按原样" 提供的,作者对本软件不承担任何保证责任,包括所有隐含的适销性和适用性保证。在任何情况下,作者都不对因使用或性能本软件导致的任何特殊、直接、间接或后果性损害承担责任。

作者信息

Tomoyuki Sakurai tomoyukis@reallyenglish.com

本 README 由 qansible 创建。

关于项目

Install and configure dbus

安装
ansible-galaxy install trombik.dbus
许可证
isc
下载
72
拥有者
PGP finger print: 03EB 3D97 5E04 9B0C AB21 93A2 D693 42A9 EFBC 3577 Makerspace and Coliving in Siem Reap, Cambodia: http://info.mkrsgh.org/