Files
janus/scripts/ssh-server-check.sh
John Lancaster 3bce34f8cc update
2026-01-03 23:40:29 -06:00

34 lines
866 B
Bash
Executable File

#!/usr/bin/env sh
ssh_config_val() {
local field="$1"
local val
if [[ -z "$field" ]]; then
echo "usage: ssh_config_val <config name>" >&2
return 2
fi
echo $(sshd -T | grep -i "^$field " | head -1 | awk '{print $2}')
}
check_ssh_files() {
printf "%-6s %-20s %-6s %s\n" "STATUS" "KEY" "PERMS" "PATH"
for key in hostkey hostcertificate trustedusercakeys; do
path=$(ssh_config_val "$key")
if [[ -z "$path" ]]; then
printf "%-7s %-20s %-6s %s\n" "⚠️" "$key" "-" "(not configured)"
continue
fi
if [[ -e "$path" ]]; then
perms=$(stat -c '%a' "$path")
printf "%-7s %-20s %-6s %s\n" "✅" "$key" "$perms" "$path"
else
printf "%-7s %-20s %-6s %s\n" "❌" "$key" "-" "$path (missing)"
fi
done
}
check_ssh_files