From: Christian Heller Date: Fri, 9 Oct 2015 13:18:37 +0000 (+0200) Subject: Improve friendliness of opendkim setup script. X-Git-Url: https://plomlompom.com/repos/%7B%7B%20web_path%20%7D%7D/decks/%7B%7Bdeck_id%7D%7D/todo?a=commitdiff_plain;h=b76dbf0eb3a8785219d8c67c6150698b02b34a2d;p=config Improve friendliness of opendkim setup script. --- diff --git a/setup_opendkim.sh b/setup_opendkim.sh index fba3b5a..b8058e5 100755 --- a/setup_opendkim.sh +++ b/setup_opendkim.sh @@ -1,17 +1,30 @@ #!/bin/sh -set -x set -e selector=$1 file=$2 +if [ ! -n "$selector" ]; then + cat << EOF +Usage: $0 SELECTOR [KEYFILE] - set up DKIM system and configuration + +If existing KEYFILE is given, set up DKIM to use SELECTOR and apply key from +KEYFILE. + +If existing KEYFILE is not given, generate KEYFILE and DNS TXT file for +SELECTOR. +EOF + exit +fi + if [ ! "$(id -u)" -eq "0" ]; then echo "Must be run as root." - exit + exit 1 fi +set -x apt-get -y install opendkim -if [ ! -n "$file" ] || [ ! -f "$file" ]; then +if [ ! -n "$file" ]; then apt-get -y install opendkim-tools opendkim-genkey -d plomlompom.com -s $selector apt-get -y --purge autoremove opendkim-tools @@ -24,6 +37,12 @@ if [ ! -n "$file" ] || [ ! -f "$file" ]; then echo cat $selector.txt else + if [ ! -f "$file" ]; then + set +x + echo + echo "Keyfile $file does not exist." + exit 1 + fi cp ~/config/systemfiles/opendkim.conf /etc/opendkim.conf sed -r -i 's/^#Selector .*$/Selector '$selector'/' /etc/opendkim.conf mkdir -p /etc/opendkim