diff --git a/rules/os/os_sshd_channel_timeout_configure.yaml b/rules/os/os_sshd_channel_timeout_configure.yaml index 39e96ecce..5f33caa6c 100644 --- a/rules/os/os_sshd_channel_timeout_configure.yaml +++ b/rules/os/os_sshd_channel_timeout_configure.yaml @@ -21,7 +21,10 @@ fix: | /usr/bin/sed -i.bk "1s/.*/Include \/etc\/ssh\/sshd_config.d\/\*/" /etc/ssh/sshd_config fi - /usr/bin/grep -qxF 'channeltimeout $ODV' "${include_dir}01-mscp-sshd.conf" 2>/dev/null || echo "channeltimeout $ODV" >> "${include_dir}01-mscp-sshd.conf" + ssh_config=("ChannelTimeout $ODV") + ssh_setting=$(echo $ssh_config | /usr/bin/cut -d " " -f1) + + /usr/bin/grep -qEi "^$ssh_setting" "${include_dir}01-mscp-sshd.conf" && /usr/bin/sed -i "" "s/^$ssh_setting.*/${ssh_config}/" "${include_dir}01-mscp-sshd.conf" || echo "$ssh_config" >> "${include_dir}01-mscp-sshd.conf" for file in $(ls ${include_dir}); do if [[ "$file" == "100-macos.conf" ]]; then diff --git a/rules/os/os_sshd_client_alive_count_max_configure.yaml b/rules/os/os_sshd_client_alive_count_max_configure.yaml index 02bb1f54b..f03b4562d 100644 --- a/rules/os/os_sshd_client_alive_count_max_configure.yaml +++ b/rules/os/os_sshd_client_alive_count_max_configure.yaml @@ -16,13 +16,16 @@ fix: | [source,bash] ---- include_dir=$(/usr/bin/awk '/^Include/ {print $2}' /etc/ssh/sshd_config | /usr/bin/tr -d '*') - + if [[ -z $include_dir ]]; then /usr/bin/sed -i.bk "1s/.*/Include \/etc\/ssh\/sshd_config.d\/\*/" /etc/ssh/sshd_config fi - /usr/bin/grep -qxF 'clientalivecountmax $ODV' "${include_dir}01-mscp-sshd.conf" 2>/dev/null || echo "clientalivecountmax $ODV" >> "${include_dir}01-mscp-sshd.conf" + ssh_config=("ClientAliveCountMax $ODV") + ssh_setting=$(echo $ssh_config | /usr/bin/cut -d " " -f1) + /usr/bin/grep -qEi "^$ssh_setting" "${include_dir}01-mscp-sshd.conf" && /usr/bin/sed -i "" "s/^$ssh_setting.*/${ssh_config}/" "${include_dir}01-mscp-sshd.conf" || echo "$ssh_config" >> "${include_dir}01-mscp-sshd.conf" + for file in $(ls ${include_dir}); do if [[ "$file" == "100-macos.conf" ]]; then continue diff --git a/rules/os/os_sshd_client_alive_interval_configure.yaml b/rules/os/os_sshd_client_alive_interval_configure.yaml index 245e6f490..6ad68febb 100644 --- a/rules/os/os_sshd_client_alive_interval_configure.yaml +++ b/rules/os/os_sshd_client_alive_interval_configure.yaml @@ -23,7 +23,10 @@ fix: | /usr/bin/sed -i.bk "1s/.*/Include \/etc\/ssh\/sshd_config.d\/\*/" /etc/ssh/sshd_config fi - /usr/bin/grep -qxF 'clientaliveinterval $ODV' "${include_dir}01-mscp-sshd.conf" 2>/dev/null || echo "clientaliveinterval $ODV" >> "${include_dir}01-mscp-sshd.conf" + ssh_config=("ClientAliveInterval $ODV") + ssh_setting=$(echo $ssh_config | /usr/bin/cut -d " " -f1) + + /usr/bin/grep -qEi "^$ssh_setting" "${include_dir}01-mscp-sshd.conf" && /usr/bin/sed -i "" "s/^$ssh_setting.*/${ssh_config}/" "${include_dir}01-mscp-sshd.conf" || echo "$ssh_config" >> "${include_dir}01-mscp-sshd.conf" for file in $(ls ${include_dir}); do if [[ "$file" == "100-macos.conf" ]]; then