From: Stefan Berger <stefanb@linux.vnet.ibm.com>
To: initramfs@vger.kernel.org, harald@redhat.com
Cc: linux-ima-user@lists.sourceforge.net,
systemd-devel@lists.freedesktop.org,
Stefan Berger <stefanb@us.ibm.com>
Subject: [PATCH v3] 98integrity: Use /etc/ima as dir for IMA policy and config file
Date: Wed, 30 Nov 2016 11:18:54 -0500 [thread overview]
Message-ID: <1480522734-975-1-git-send-email-stefanb@linux.vnet.ibm.com> (raw)
From: Stefan Berger <stefanb@us.ibm.com>
To sync with systemd, use the filepath /etc/ima/ima-policy as
the default file location for the IMA policy. At the same time we
move the ima config file location to /etc/ima/ima. Adapt the
documentation to the new path. Maintain backwards compatibility
by still reading the old files in case the new ones do not exist.
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
---
modules.d/98integrity/README | 8 ++++----
modules.d/98integrity/ima-keys-load.sh | 7 ++++++-
modules.d/98integrity/ima-policy-load.sh | 20 +++++++++++++++++---
3 files changed, 27 insertions(+), 8 deletions(-)
diff --git a/modules.d/98integrity/README b/modules.d/98integrity/README
index 64de0ae..c8ccee5 100644
--- a/modules.d/98integrity/README
+++ b/modules.d/98integrity/README
@@ -33,10 +33,10 @@ line.
# Save the policy in a file.
-# Create the configuration file '/etc/sysconfig/ima' to override the path name of
+# Create the configuration file '/etc/ima/ima' to override the path name of
# the IMA custom policy.
-------------- '/etc/sysconfig/ima' (with the default value) -------------
-IMAPOLICY="/etc/sysconfig/ima-policy"
+------------- '/etc/ima/ima' (with the default value) -------------
+IMAPOLICY="/etc/ima/ima-policy"
-------------------------------------------------------------------------
@@ -64,5 +64,5 @@ IMAPOLICY="/etc/sysconfig/ima-policy"
# 98integrity/ima-keys-load.sh script loads the signed certificates stored
# in the $IMAKEYSDIR onto the trusted IMA keyring. The default $IMAKEYSDIR
-# directory is /etc/keys/ima, but can be specified in the /etc/sysconfig/ima
+# directory is /etc/keys/ima, but can be specified in the /etc/ima/ima
# policy.
diff --git a/modules.d/98integrity/ima-keys-load.sh b/modules.d/98integrity/ima-keys-load.sh
index 659b722..922af1e 100755
--- a/modules.d/98integrity/ima-keys-load.sh
+++ b/modules.d/98integrity/ima-keys-load.sh
@@ -2,7 +2,10 @@
SECURITYFSDIR="/sys/kernel/security"
IMASECDIR="${SECURITYFSDIR}/ima"
-IMACONFIG="${NEWROOT}/etc/sysconfig/ima"
+IMACONFIG="${NEWROOT}/etc/ima/ima"
+
+# for backwards compatibility
+IMACONFIG_OLD="${NEWROOT}/etc/sysconfig/ima"
load_x509_keys()
{
@@ -11,6 +14,8 @@ load_x509_keys()
# override the default configuration
if [ -f "${IMACONFIG}" ]; then
. ${IMACONFIG}
+ elif [ -f "${IMACONFIG_OLD}" ]; then
+ . ${IMACONFIG_OLD}
fi
if [ -z "${IMAKEYDIR}" ]; then
diff --git a/modules.d/98integrity/ima-policy-load.sh b/modules.d/98integrity/ima-policy-load.sh
index 85cd3b9..a92b1bb 100755
--- a/modules.d/98integrity/ima-policy-load.sh
+++ b/modules.d/98integrity/ima-policy-load.sh
@@ -5,10 +5,19 @@
# Copyright (C) 2011 Politecnico di Torino, Italy
# TORSEC group -- http://security.polito.it
# Roberto Sassu <roberto.sassu@polito.it>
+#
+# Copyright (C) 2016 IBM Corporation
+#
+# Stefan Berger <stefanb@linux.vnet.ibm.com>
+#
IMASECDIR="${SECURITYFSDIR}/ima"
-IMACONFIG="${NEWROOT}/etc/sysconfig/ima"
-IMAPOLICY="/etc/sysconfig/ima-policy"
+IMACONFIG="${NEWROOT}/etc/ima/ima"
+IMAPOLICY="/etc/ima/ima-policy"
+
+# for backwards compatibility
+IMACONFIG_OLD="${NEWROOT}/etc/sysconfig/ima"
+IMAPOLICY_OLD="/etc/sysconfig/ima-policy"
load_ima_policy()
{
@@ -21,11 +30,16 @@ load_ima_policy()
fi
# override the default configuration
- [ -f "${IMACONFIG}" ] && \
+ if [ -f "${IMACONFIG}" ]; then
. ${IMACONFIG}
+ elif [ -f "${IMACONFIG_OLD}" ]; then
+ . ${IMACONFIG_OLD}
+ fi
# set the IMA policy path name
IMAPOLICYPATH="${NEWROOT}${IMAPOLICY}"
+ [ ! -f "${IMAPOLICYPATH}" ] && \
+ IMAPOLICYPATH="${NEWROOT}${IMAPOLICY_OLD}"
# check the existence of the IMA policy file
[ -f "${IMAPOLICYPATH}" ] && {
--
2.8.3
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel
next reply other threads:[~2016-11-30 16:18 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-30 16:18 Stefan Berger [this message]
[not found] ` <1480522734-975-1-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-11-30 17:03 ` [PATCH v3] 98integrity: Use /etc/ima as dir for IMA policy and config file Dracut GitHub Import Bot
[not found] ` <OFAB3B0DDA.C5BDF803-ON0025807B.00603714-8525807B.0060434C@notes.na.collabserv.com>
2016-11-30 17:54 ` Stefan Berger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1480522734-975-1-git-send-email-stefanb@linux.vnet.ibm.com \
--to=stefanb@linux.vnet.ibm.com \
--cc=harald@redhat.com \
--cc=initramfs@vger.kernel.org \
--cc=linux-ima-user@lists.sourceforge.net \
--cc=stefanb@us.ibm.com \
--cc=systemd-devel@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox