Added argument for server

master
Keith Irwin 2023-11-03 19:51:01 -06:00
parent 56e24f1051
commit d94af01048
Signed by: ki9
GPG Key ID: DF773B3F4A88DA86
3 changed files with 10 additions and 8 deletions

View File

@ -22,11 +22,11 @@ Bash script to update [SSHFP records](https://en.wikipedia.org/wiki/SSHFP_record
## Usage ## Usage
```sh ```sh
$ nsupdate-sshfp <domain> <ttl> <tsig> $ nsupdate-sshfp <domain> <server> <ttl> <tsig>
``` ```
For example: For example:
```sh ```sh
$ nsupdate-sshfp example.com 86400 'hmac-sha512:mykeyname:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX==' $ nsupdate-sshfp ssh.example.com ns.example.com 86400 'hmac-sha512:mykeyname:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=='
``` ```

View File

@ -1,14 +1,15 @@
#!/bin/bash #!/bin/bash
# nsupdate-sshfp # nsupdate-sshfp
if [ "$#" -ne "3" ]; then if [ "$#" -ne "4" ]; then
echo "USAGE: ${0} <domain> <ttl> <tsig-key>" echo "USAGE: ${0} <domain> <server> <ttl> <tsig>"
exit 1 exit 1
fi fi
domain="${1}" domain="${1}"
ttl="${2}" server="${2}"
tsig_key="${3}" ttl="${3}"
tsig_key="${4}"
new_records=$(ssh-keygen -r ${1} | sed -e 's/^/add /' -e "s/ IN / ${ttl} /") new_records=$(ssh-keygen -r ${1} | sed -e 's/^/add /' -e "s/ IN / ${ttl} /")
printf 'delete %s sshfp\n%s\nsend\n' "${domain}" "${new_records}" \ printf 'server %s\ndelete %s sshfp\n%s\nsend\n' "${server}" "${domain}" "${new_records}" \
| nsupdate -y "${tsig_key}" | nsupdate -y "${tsig_key}"

View File

@ -7,9 +7,10 @@ Wants=nsupdate-sshfp@%i
[Service] [Service]
Type=oneshot Type=oneshot
Environment=DOMAIN=%i Environment=DOMAIN=%i
Environment=SERVER=ns.example.com
Environment=TTL=86400 Environment=TTL=86400
Environment=TSIG=hmac-sha512:mykeyname:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX== Environment=TSIG=hmac-sha512:mykeyname:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX==
ExecStart=/usr/local/bin/nsupdate-sshfp ${DOMAIN} ${TTL} ${TSIG} ExecStart=/usr/local/bin/nsupdate-sshfp ${DOMAIN} ${SERVER} ${TTL} ${TSIG}
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target