35 lines
1.0 KiB
Bash
35 lines
1.0 KiB
Bash
#!/usr/bin/env bash
|
|
parameter_sshd_t=clientaliveinterval
|
|
parameter_sshd_config=ClientAliveInterval
|
|
desired_value=15
|
|
|
|
parameter_sshd_t1=clientalivecountmax
|
|
parameter_sshd_config1=ClientAliveCountMax
|
|
desired_value1=3
|
|
|
|
if ! command -v sshd &>/dev/null; then
|
|
echo "sshd command could not be found"
|
|
exit 0
|
|
fi
|
|
|
|
# Check using sshd -T output
|
|
actual_value=$(sshd -T | grep -i "$parameter_sshd_t" | awk '{print $2}')
|
|
actual_value1=$(sshd -T | grep -i "$parameter_sshd_t1" | awk '{print $2}')
|
|
|
|
if [ -z "$actual_value" ] && [ -z "$actual_value1" ]; then
|
|
if (grep -iq '^$parameter_sshd_config' /etc/ssh/sshd_config) && (grep -iq '^$parameter_sshd_config1' /etc/ssh/sshd_config); then
|
|
actual_value=$(grep -i '^$parameter_sshd_config' /etc/ssh/sshd_config | awk '{print $2}')
|
|
actual_value1=$(grep -i '^$parameter_sshd_config1' /etc/ssh/sshd_config | awk '{print $2}')
|
|
|
|
else
|
|
echo "$parameter_sshd_config not set in sshd_config, using default"
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
if [ "$actual_value" -eq "$desired_value" ] && [ "$actual_value1" -eq "$desired_value1" ]; then
|
|
exit 0
|
|
else
|
|
exit 1
|
|
fi
|