mirror of
				https://github.com/Icinga/icingaweb2.git
				synced 2025-10-30 19:04:10 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			53 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh -e
 | |
| 
 | |
| DIRNAME=`dirname $0`
 | |
| cd $DIRNAME
 | |
| USAGE="$0 [ --update ]"
 | |
| if [ `id -u` != 0 ]; then
 | |
| echo 'You must be root to run this script'
 | |
| exit 1
 | |
| fi
 | |
| 
 | |
| if [ $# -eq 1 ]; then
 | |
| 	if [ "$1" = "--update" ] ; then
 | |
| 		time=`ls -l --time-style="+%x %X" icingaweb2.te | awk '{ printf "%s %s", $6, $7 }'`
 | |
| 		rules=`ausearch --start $time -m avc --raw -se icinga2`
 | |
| 		if [ x"$rules" != "x" ] ; then
 | |
| 			echo "Found avc's to update policy with"
 | |
| 			echo -e "$rules" | audit2allow -R
 | |
| 			echo "Do you want these changes added to policy [y/n]?"
 | |
| 			read ANS
 | |
| 			if [ "$ANS" = "y" -o "$ANS" = "Y" ] ; then
 | |
| 				echo "Updating policy"
 | |
| 				echo -e "$rules" | audit2allow -R >> icingaweb2.te
 | |
| 				# Fall though and rebuild policy
 | |
| 			else
 | |
| 				exit 0
 | |
| 			fi
 | |
| 		else
 | |
| 			echo "No new avcs found"
 | |
| 			exit 0
 | |
| 		fi
 | |
| 	else
 | |
| 		echo -e $USAGE
 | |
| 		exit 1
 | |
| 	fi
 | |
| elif [ $# -ge 2 ] ; then
 | |
| 	echo -e $USAGE
 | |
| 	exit 1
 | |
| fi
 | |
| 
 | |
| echo "Building and Loading Policy"
 | |
| set -x
 | |
| make -f /usr/share/selinux/devel/Makefile icingaweb2.pp || exit
 | |
| /usr/sbin/semodule -i icingaweb2.pp
 | |
| 
 | |
| # Generate a man page off the installed module
 | |
| #sepolicy manpage -p . -d icingaweb2_t
 | |
| # Fixing the file context on /etc/icingaweb2
 | |
| /sbin/restorecon -F -R -v /etc/icingaweb2
 | |
| # Fixing the file context on /var/log/icingaweb2
 | |
| /sbin/restorecon -F -R -v /var/log/icingaweb2
 | |
| # Fixing the file context on /usr/share/icingaweb2
 | |
| /sbin/restorecon -F -R -v /usr/share/icingaweb2
 |