add gpg-key-backup script
This commit is contained in:
parent
e5a58e8075
commit
09d76019e2
1 changed files with 38 additions and 0 deletions
38
bin/gpg-key-backup.sh
Executable file
38
bin/gpg-key-backup.sh
Executable file
|
|
@ -0,0 +1,38 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
# Create a temporary working directory
|
||||
WORK_DIR=$(mktemp -d -t gpg-backup-XXXXXXXXXX)
|
||||
trap 'rm -rf "$WORK_DIR"' EXIT
|
||||
cd "$WORK_DIR"
|
||||
|
||||
|
||||
BACKUP_NAME="$(date +%Y_%m_%d)-keys-backup"
|
||||
|
||||
echo Exporting Secret Keys
|
||||
gpg --export-secret-keys --armor > "$WORK_DIR/secret-keys.asc"
|
||||
|
||||
echo Exporting Public Keys
|
||||
gpg --export --armor > "$WORK_DIR/public-keys.asc"
|
||||
|
||||
echo Exporting Trust DB
|
||||
gpg --export-ownertrust > "$WORK_DIR/trust_db.txt"
|
||||
|
||||
echo Files created:
|
||||
ls -la "$WORK_DIR"
|
||||
|
||||
echo Creating backup archive
|
||||
tar czfv "/tmp/${BACKUP_NAME}.tar.gz" "$WORK_DIR"
|
||||
echo Created "/tmp/${BACKUP_NAME}.tar.gz"
|
||||
|
||||
|
||||
echo Encrypting backup archive
|
||||
# AES256 is apparently used by NAS..
|
||||
gpg --symmetric --cipher-algo AES256 "/tmp/${BACKUP_NAME}.tar.gz"
|
||||
|
||||
echo Cleaning up unencrypted file
|
||||
rm "/tmp/${BACKUP_NAME}.tar.gz"
|
||||
|
||||
echo "Backup created in /tmp/${BACKUP_NAME}.tar.gz.gpg"
|
||||
echo "If you are connected to NAS run 'cp /tmp/20.. /Volumes/travis/gpg_keys/'"
|
||||
Loading…
Add table
Add a link
Reference in a new issue