|Skip Navigation Links|
|Exit Print View|
|Oracle Solaris Administration: Security Services Oracle Solaris 11 Information Library|
The audit service audits the entire system, including audit events in zones. A system that has installed non-global zones can audit all zones identically, or can configure auditing per zone. For background, see Auditing on a System With Oracle Solaris Zones. To plan, see How to Plan Auditing in Zones.
When you audit the non-global zones exactly as the global zone is audited, the audit service runs in the global zone. The service collects audit records from the global zone and all the non-global zones. The non-global zone administrators might not have access to the audit records.
Note - The global zone administrator can choose to modify the audit masks of users in non-global zones.
When you audit the non-global zones individually, a separate audit service runs in each zone that is audited. Each zone collects its own audit records. The records are visible to the non-global zone and to the global zone from the non-global zone root.
This procedure enables audits every zone identically. This method requires the least computer overhead and administrative resources.
Before You Begin
You must be in the root role.
Complete the tasks in Configuring the Audit Service (Task Map), with the following exceptions:
Do not enable perzone audit policy.
Do not enable the audit service. You enable the audit service after you have configured the non-global zones for auditing.
Set the zonename policy. This policy adds the name of the zone to every audit record.
# auditconfig -setpolicy +zonename
If you modified the audit_class or audit_event file, copy it in one of two ways:
You can loopback mount the files.
You can copy the files.
The non-global zone must be running.
# zoneadm -z non-global-zone halt
# zonecfg -z non-global-zone add fs set special=/etc/security/audit-file set dir=/etc/security/audit-file set type=lofs add options [ro,nodevices,nosetuid] commit end exit
# zoneadm -z non-global-zone boot
Later, if you modify an audit configuration file in the global zone, you reboot the zone to refresh the loopback-mounted files in the non-global zones.
# ls /zone/zonename/root/etc/security/
# cp /etc/security/audit-file /zone/zonename/root/etc/security/audit-file
Later, if you change one of these files in the global zone, you must re-copy the file to the non-global zones.
The non-global zones are audited when the audit service is enabled in the global zone.
Example 28-20 Mounting Audit Configuration Files as Loopback Mounts in a Zone
In this example, the system administrator has modified the audit_class, audit_event, and audit_warn files.
The audit_warn file is read in the global zone only, so does not have to be mounted into the non-global zones.
On this system, machine1, the administrator has created two non-global zones, machine1–webserver and machine1–appserver. The administrator has finished modifying the audit configuration files. If the administrator later modifies the files, the zone must be rebooted to re-read the loopback mounts.
# zoneadm -z machine1-webserver halt # zoneadm -z machine1-appserver halt # zonecfg -z machine1-webserver add fs set special=/etc/security/audit_class set dir=/etc/security/audit_class set type=lofs add options [ro,nodevices,nosetuid] commit end add fs set special=/etc/security/audit_event set dir=/etc/security/audit_event set type=lofs add options [ro,nodevices,nosetuid] commit end exit # zonecfg -z machine1-appserver add fs set special=/etc/security/audit_class set dir=/etc/security/audit_class set type=lofs add options [ro,nodevices,nosetuid] commit end ... exit
When the non-global zones are rebooted, the audit_class and audit_event files are read-only in the zones.
This procedure enables separate zone administrators to control the audit service in their zone. For the complete list of policy options, see the auditconfig(1M) man page.
Before You Begin
You must be assigned the Audit Configuration rights profile to configure auditing. You must be assigned the Audit Control rights profile to enable the audit service.
For more information, see How to Obtain Administrative Rights.
Specifically, do not add the perzone or ahlt policy to the non-global zone.
myzone# audit -s
Example 28-21 Disabling Auditing in a Non-Global Zone
This example works if the global zone has set the perzone audit policy. The zone administrator of the noaudit zone disables auditing for that zone.
noauditzone # auditconfig -getcond audit condition = auditing noauditzone # audit -t noauditzone # auditconfig -getcond audit condition = noaudit