]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
rdsosreport.sh: best effort to strip out passwords
authorHarald Hoyer <harald@redhat.com>
Thu, 5 Jul 2018 12:24:04 +0000 (14:24 +0200)
committerHarald Hoyer <harald@redhat.com>
Thu, 5 Jul 2018 12:49:23 +0000 (14:49 +0200)
Modified version of:
https://github.com/dracutdevs/dracut/pull/96

Thanks to Zhiguo Deng <bjzgdeng@linux.vnet.ibm.com>

modules.d/99base/rdsosreport.sh

index 3e2ac87dc7422fbcfb3bb74fc49c9c7223a39afd..639b4e4bdff903e50edd39f1d0ea0f9cf4b582f2 100755 (executable)
@@ -6,18 +6,18 @@ echo 'Generating "/run/initramfs/rdsosreport.txt"'
 
 exec >/run/initramfs/rdsosreport.txt 2>&1
 
+PWFILTER='s/\(ftp:\/\/.*\):.*@/\1:*******@/g;s/\(cifs:\/\/.*\):.*@/\1:*******@/g;s/cifspass=[^ ]*/cifspass=*******/g;s/iscsi:.*@/iscsi:******@/g;s/rd.iscsi.password=[^ ]*/rd.iscsi.password=******/g;s/rd.iscsi.in.password=[^ ]*/rd.iscsi.in.password=******/g'
 set -x
-
 cat /lib/dracut/dracut-*
 
-cat /proc/cmdline
+cat /proc/cmdline | sed -e "$PWFILTER"
 
-[ -f /etc/cmdline ] && cat /etc/cmdline
+[ -f /etc/cmdline ] && cat /etc/cmdline | sed -e "$PWFILTER"
 
 for _i in /etc/cmdline.d/*.conf; do
     [ -f "$_i" ] || break
     echo $_i
-    cat $_i
+    cat $_i | sed -e "$PWFILTER"
 done
 
 cat /proc/self/mountinfo
@@ -31,7 +31,7 @@ ls -l /dev/disk/by*
 for _i in /etc/conf.d/*.conf; do
     [ -f "$_i" ] || break
     echo $_i
-    cat $_i
+    cat $_i | sed -e "$PWFILTER"
 done
 
 if command -v lvm >/dev/null 2>/dev/null; then
@@ -47,9 +47,9 @@ cat /proc/mdstat
 command -v ip >/dev/null 2>/dev/null && ip addr
 
 if command -v journalctl >/dev/null 2>/dev/null; then
-    journalctl -ab --no-pager -o short-monotonic
+    journalctl -ab --no-pager -o short-monotonic | sed -e "$PWFILTER"
 else
-    dmesg
-    [ -f /run/initramfs/init.log ] && cat /run/initramfs/init.log
+    dmesg | sed -e "$PWFILTER"
+    [ -f /run/initramfs/init.log ] && cat /run/initramfs/init.log | sed -e "$PWFILTER"
 fi