conf/145009: rc.conf should allow mac label configuration

Michael Reynolds michael.reynolds at gmail.com
Wed Mar 24 18:50:01 UTC 2010


>Number:         145009
>Category:       conf
>Synopsis:       rc.conf should allow mac label configuration
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Mar 24 18:50:01 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Michael Reynolds
>Release:        8.0-STABLE
>Organization:
>Environment:
n/a
>Description:
rc.conf, via rc.subr, should allow service specific labels to be set, so as to efficiently handle security, and ensure a working machine after enabling MAC.
>How-To-Repeat:

>Fix:
Apply the affixed patch, add this (as an example) to your rc.conf:

auditd_label="biba/high,lomac/high,mls/high,partition/equal"


Patch attached with submission follows:

--- etc/rc.subr	2009-12-30 14:25:40.000000000 -0500
+++ /etc/rc.subr	2010-03-18 11:39:16.000000000 -0400
@@ -646,7 +646,8 @@
 	fi
 	eval _chdir=\$${name}_chdir	_chroot=\$${name}_chroot \
 	    _nice=\$${name}_nice	_user=\$${name}_user \
-	    _group=\$${name}_group	_groups=\$${name}_groups
+	    _group=\$${name}_group	_groups=\$${name}_groups \
+	    _label=\$${name}_label
 
 	if [ -n "$_user" ]; then	# unset $_user if running as that user
 		if [ "$_user" = "$(eval $IDCMD)" ]; then
@@ -726,10 +727,12 @@
 			if [ -n "$_chroot" ]; then
 				_doit="\
 ${_nice:+nice -n $_nice }\
+${_label:+setpmac $_label }\
 chroot ${_user:+-u $_user }${_group:+-g $_group }${_groups:+-G $_groups }\
 $_chroot $command $rc_flags $command_args"
 			else
 				_doit="\
+${_label:+setpmac $_label }\
 ${_chdir:+cd $_chdir && }\
 $command $rc_flags $command_args"
 				if [ -n "$_user" ]; then


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list