home · contact · privacy
Replace letsencrypt remote getting script.
authorChristian Heller <c.heller@plomlompom.de>
Mon, 10 Dec 2018 01:31:22 +0000 (02:31 +0100)
committerChristian Heller <c.heller@plomlompom.de>
Mon, 10 Dec 2018 01:31:22 +0000 (02:31 +0100)
all_new_2018/letsencrypt_get.sh [new file with mode: 0755]
all_new_2018/letsencrypt_remote.sh [deleted file]

diff --git a/all_new_2018/letsencrypt_get.sh b/all_new_2018/letsencrypt_get.sh
new file mode 100755 (executable)
index 0000000..c2b3e9f
--- /dev/null
@@ -0,0 +1,20 @@
+#!/bin/sh
+# Copy over LetsEncrypt certificates from another server.
+set -e
+
+# Ensure we have a server name as argument.
+if [ $# -lt 1 ]; then
+    echo "Need server as argument."
+    false
+fi
+server="$1"
+
+# Copy over.
+ssh -t plom@${server} 'su -c "cd /etc/ && tar cf letsencrypt.tar letsencrypt && chown plom:plom letsencrypt.tar && mv letsencrypt.tar /home/plom/"'
+scp plom@${server}:~/letsencrypt.tar .
+apt -y install certbot
+rmdir /etc/letsencrypt
+mv letsencrypt.tar /etc/
+cd /etc/
+tar xf letsencrypt.tar
+rm letsencrypt.tar
diff --git a/all_new_2018/letsencrypt_remote.sh b/all_new_2018/letsencrypt_remote.sh
deleted file mode 100755 (executable)
index 6b7b54f..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/sh
-# Install or copy LetsEncrypt certificates on/from server.
-#
-# First argument: server
-# Second argument: "get" or "put"
-#
-# "get" copies the server's /etc/letsencrypt to a local letsencrypt.tar.
-#
-# "set" copies a local letsencrypt.tar to the server's /etc/letsencrypt.
-set -e
-
-# Ensure we have a server name as argument.
-if [ $# -lt 2 ]; then
-    echo "Need server and action as arguments."
-    false
-fi
-server="$1"
-action="$2"
-
-# So we only get asked once for decrypting our key.
-eval $(ssh-agent)
-ssh-add ~/.ssh/id_rsa
-
-if [ "${action}" = "get" ]; then
-    # Get /etc/letsencrypt/ as tar file.
-    ssh -t plom@${server} 'su -c "cd /etc/ && tar cf letsencrypt.tar letsencrypt && chown plom:plom letsencrypt.tar && mv letsencrypt.tar /home/plom/"'
-    scp plom@${server}:~/letsencrypt.tar .
-elif [ "${action}" = "put" ]; then
-    # Expand letsencrypt.tar to /etc/letsencrypt/ on server.
-    scp letsencrypt.tar plom@${server}:~/
-    ssh -t plom@${server} 'su -c "apt -y install certbot && rmdir /etc/letsencrypt && mv letsencrypt.tar /etc/ && cd /etc/ && tar xf letsencrypt.tar && rm letsencrypt.tar"'
-else
-    echo "Action must be 'get', or 'put'."
-    false
-fi