#!/usr/bin/env bash # This script is used to ensure the owner is set to root:root for # the given directory and all the files in it # # inputs: # $1 = /full/path/to/directory # # outputs: # true/false INPUT_DIR=$1 if [[ "${INPUT_DIR}" == "" ]]; then echo "false" exit fi if [[ $(stat -c %U:%G ${INPUT_DIR}) != "root:root" ]]; then echo "false" exit fi statInfoLines=$(stat -c "%n %U:%G" ${INPUT_DIR}/*) while read -r statInfoLine; do f=$(echo ${statInfoLine} | cut -d' ' -f1) p=$(echo ${statInfoLine} | cut -d' ' -f2) if [[ $(basename "$f" .pem) == "kube-etcd-"* ]]; then if [[ "$p" != "root:root" && "$p" != "etcd:etcd" ]]; then echo "false" exit fi else if [[ "$p" != "root:root" ]]; then echo "false" exit fi fi done <<< "${statInfoLines}" echo "true" exit