Various file properties for entries served by most generator plugins, including Cfg, SSLCA, and SSHbase, are controlled through the use of info.xml files.
By default, these plugins are set to write files to the filesystem with owner root, group root, and mode 644 (read and write for owner, read only for group and other). These options, and a few others, can be overridden through use of info.xml files. Each config file directory can have a info.xml file if needed.
info.xml schema for Bcfg2
Top-level tag for info.xml.
Type: InfoGroupType
Type: InfoGroupType
Type: InfoGroupType
Name |
Description |
Values |
Required |
Default |
---|---|---|---|---|
encoding |
|
No |
ascii | |
group |
|
No |
root | |
important |
|
true | false |
No |
false |
mode |
|
No |
0644 | |
owner |
|
No |
root | |
paranoid |
|
true | false |
No |
true |
secontext |
|
No |
__default__ | |
sensitive |
|
true | false |
No |
false |
An InfoGroupType is a info.xml tag used to provide logic. Child entries of such a tag only apply to machines that match the condition specified – membership in a group, a matching client name, or a matching path for the file being generated. negate can be set to negate the sense of the match.
Name | Description | Values | Required | Default |
---|---|---|---|---|
name |
|
string | Yes | None |
negate |
|
true | false | No | false |
A sample info.xml file for CGI script on a web server might look like:
<FileInfo>
<Info owner="www" group="www" mode="0755"/>
</FileInfo>
A more complex example for a template that generates both bcfg2.conf and bcfg2-web.conf might look like this:
<FileInfo>
<Path name="/etc/bcfg2-web.conf">
<Info owner="root" group="apache" mode="0640"/>
</Path>
<Path name="/etc/bcfg2-web.conf" negate="true">
<Group name="bcfg2-server">
<Info owner="bcfg2" group="bcfg2" mode="0600"/>
</Group>
<Group name="bcfg2-server" negate="true">
<Info owner="root" group="root" mode="0600"/>
</Group>
</Path>
</FileInfo>
See SELinux for more information on the secontext attribute and managing SELinux in general.
Deprecated since version 1.3.0.
Historically, Bcfg2 also accepted the use of :info and info files, which function the same as info.xml, but are not XML. They lack the ability to specify different permissions based on client, group, or path, and cannot be used to specify ACLs, either.
An example :info or info file would look like:
owner: www
group: www
mode: 0755
All attributes allowed on the <Info> tag of an info.xml file can be used in an :info or info file.
You should not use more than one :info, info, or info.xml file for a single entry.