Fixes for SELinux support
Use /sbin/runuser to execute script as the `rabbitmq` user as this command does not cause issues with SELinux. See #32 for details.
This commit is contained in:
parent
00469eba2f
commit
c8b6b74a9c
|
@ -81,8 +81,7 @@ install -p -D -m 0755 scripts/zsh_autocomplete.sh %{buildroot}%{_datarootdir}/zs
|
|||
mkdir -p %{buildroot}%{_sysconfdir}/rabbitmq
|
||||
|
||||
mkdir -p %{buildroot}%{_sbindir}
|
||||
sed -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
|
||||
-e 's|@STDOUT_STDERR_REDIRECTION@||' \
|
||||
sed -e 's|@STDOUT_STDERR_REDIRECTION@||' \
|
||||
< scripts/rabbitmq-script-wrapper \
|
||||
> %{buildroot}%{_sbindir}/rabbitmqctl
|
||||
chmod 0755 %{buildroot}%{_sbindir}/rabbitmqctl
|
||||
|
|
|
@ -31,8 +31,7 @@ override_dh_auto_install:
|
|||
|
||||
$(MAKE) install-bin DESTDIR=$(DEB_DESTDIR)
|
||||
|
||||
sed -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
|
||||
-e 's|@STDOUT_STDERR_REDIRECTION@|> "$$RABBITMQ_LOG_BASE/startup_log" 2> "$$RABBITMQ_LOG_BASE/startup_err"|' \
|
||||
sed -e 's|@STDOUT_STDERR_REDIRECTION@|> "$$RABBITMQ_LOG_BASE/startup_log" 2> "$$RABBITMQ_LOG_BASE/startup_err"|' \
|
||||
< scripts/rabbitmq-script-wrapper \
|
||||
> $(DEB_DESTDIR)$(PREFIX)/sbin/rabbitmqctl
|
||||
chmod 0755 $(DEB_DESTDIR)$(PREFIX)/sbin/rabbitmqctl
|
||||
|
|
|
@ -81,7 +81,16 @@ exec_script_as_rabbitmq() {
|
|||
}
|
||||
|
||||
exec_script_as_root() {
|
||||
@SU_RABBITMQ_SH_C@ "/usr/lib/rabbitmq/bin/$SCRIPT $CMDLINE"
|
||||
if [ -x /sbin/runuser ]
|
||||
then
|
||||
exec /sbin/runuser -u rabbitmq /bin/sh -c "/usr/lib/rabbitmq/bin/$SCRIPT $CMDLINE"
|
||||
elif [ -x /bin/su ]
|
||||
then
|
||||
exec /bin/su rabbitmq -s /bin/sh -c "/usr/lib/rabbitmq/bin/$SCRIPT $CMDLINE"
|
||||
else
|
||||
echo 'No command present to run as rabbitmq user. Please ensure /bin/su or /sbin/runuser is available.' 1>&2
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
run_script_help_and_fail() {
|
||||
|
|
Loading…
Reference in New Issue