1 changed files with 21 additions and 2 deletions
@ -1,8 +1,27 @@
@@ -1,8 +1,27 @@
|
||||
#!/usr/bin/env bash |
||||
|
||||
# Simple script to check web resource's TLS certificates. |
||||
|
||||
red="$(printf '\033')[1;31m" |
||||
green="$(printf '\033')[1;32m" |
||||
rstc="$(printf '\033')[00m" |
||||
|
||||
DOMAIN=${1:?USAGE: check-cert [domain name]} |
||||
|
||||
echo | { openssl s_client -connect "${DOMAIN}:443" \ |
||||
CERT_INFO=$(echo | { openssl s_client -connect "${DOMAIN}:443" \ |
||||
| openssl x509 -noout -dates; |
||||
} 2>&1 | sed -E '/verify|DONE/d; s/^depth=[0-9]+[[:space:]]+//' |
||||
} 2>&1 | sed -E '/verify|DONE/d; s/^depth=[0-9]+[[:space:]]+//') |
||||
|
||||
EXPIRE_AT=$(grep notAfter <<<"$CERT_INFO" | cut -d '=' -f 2-) |
||||
|
||||
CURRENT_DATE=$(date '+%s') |
||||
EXPIRE_DATE=$(date -d "$EXPIRE_AT" '+%s') |
||||
|
||||
if [ "$EXPIRE_DATE" -gt "$CURRENT_DATE" ]; then |
||||
hl="$green" |
||||
else |
||||
hl="$red" |
||||
fi |
||||
|
||||
echo -e "$CERT_INFO" | sed "s/$EXPIRE_AT/${hl}\0${rstc}/" |
||||
|
||||
|
Loading…
Reference in new issue