Dynmotd: rename the occur_num function into get_pattern_count
get_pattern_count: add a expected value and compare this one and the number of occurrence to choose the color.
This commit is contained in:
		
							parent
							
								
									023c284f01
								
							
						
					
					
						commit
						b049232a9d
					
				
							
								
								
									
										23
									
								
								dynmotd
								
								
								
								
							
							
						
						
									
										23
									
								
								dynmotd
								
								
								
								
							|  | @ -68,12 +68,16 @@ service_info() { | |||
| 
 | ||||
| ## Return the number of occurrence a pattern is present in a file | ||||
| # and a color (red:>0, green:=0) | ||||
| occur_num() { | ||||
| get_pattern_count() { | ||||
|   local GREP_PAT="${1}" | ||||
|   local FILE="${2}" | ||||
|   local EXP_VAL="${3}" | ||||
| 
 | ||||
|   NUM=$(grep "${GREP_PAT}" "${FILE}" | wc -l) | ||||
|   if [ "${NUM}" = "0" ]; then | ||||
|   # Count the pattern in the file | ||||
|   NUM=$(grep -E "${GREP_PAT}" "${FILE}" | wc -l) | ||||
| 
 | ||||
|   # If $EXP_VAL exist ++ the $NUM and $EXP_VAL are equal | ||||
|   if [ "${EXP_VAL}" ] && [ "${NUM}" = "${EXP_VAL}" ]; then | ||||
|     MSG="${GREEN}${NUM}" | ||||
|   else | ||||
|     MSG="${REDB}${NUM}" | ||||
|  | @ -113,15 +117,14 @@ SSH_USER_LOGIN=$(grep 'session opened' "${AUTH_LOG_FILE}" | awk '/sshd/' | awk " | |||
| MOTD_ORIG='/etc/motd.orig' | ||||
| # If an original Motd exist, print it | ||||
| if [ -f ${MOTD_ORIG} ]; then | ||||
|   printf "%b" "${RESET}${MAGENTA}+++++++++++++++++++++++: ${WHITE}MoTD${MAGENTA} :++++++++++++++++++++++++${RESET}" | ||||
|   printf '%b' "${RESET}${MAGENTA}+++++++++++++++++++++++: ${WHITE}MoTD${MAGENTA} :++++++++++++++++++++++++${RESET}" | ||||
|   while read -r line; do | ||||
|     printf '\n%s' "${line}" | ||||
|   done < ${MOTD_ORIG} | ||||
| fi | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| printf "%b" "\n${RESET}${MAGENTA}+++++++++++++++++++: ${WHITE}System Data${MAGENTA} :+++++++++++++++++++++${RESET} | ||||
| printf '%b' "\n${RESET}${MAGENTA}+++++++++++++++++++: ${WHITE}System Data${MAGENTA} :+++++++++++++++++++++${RESET} | ||||
| ${MAGENTA}+ ${WHITE}Hostname\t${MAGENTA}= ${GREEN}${HOSTNAME} | ||||
| ${MAGENTA}+ ${WHITE}Addresses\t${MAGENTA}= ${GREEN}${NET_ADDR} | ||||
| ${MAGENTA}+ ${WHITE}Kernel\t${MAGENTA}= ${GREEN}${KERNEL_VER} | ||||
|  | @ -131,7 +134,7 @@ ${MAGENTA}+ ${WHITE}Memory\t${MAGENTA}= ${GREEN}${MEM_FREE}(free)/${MEM_TOTAL}(t | |||
| ${MAGENTA}+ ${WHITE}Swap\t\t${MAGENTA}= ${GREEN}${SWAP_FREE}(free)/${SWAP_TOTAL}(total) kB" | ||||
| 
 | ||||
| 
 | ||||
| printf "%b" "\n${RESET}${MAGENTA}++++++++++++++++++++: ${WHITE}User Data${MAGENTA} :++++++++++++++++++++++${RESET} | ||||
| printf '%b' "\n${RESET}${MAGENTA}++++++++++++++++++++: ${WHITE}User Data${MAGENTA} :++++++++++++++++++++++${RESET} | ||||
| ${MAGENTA}+ ${WHITE}Username\t${MAGENTA}= ${GREEN}${USERNAME} | ||||
| ${MAGENTA}+ ${WHITE}Sessions\t${MAGENTA}= ${GREEN}${USER_SESSION} | ||||
| ${MAGENTA}+ ${WHITE}Processes\t${MAGENTA}= ${GREEN}$PROC_COUNT of ${PROC_LIMIT} MAX" | ||||
|  | @ -145,11 +148,11 @@ printf '%b' "\n${MAGENTA}++++++++++++: ${WHITE}Authentication Information${MAGEN | |||
| #done | ||||
| 
 | ||||
| # Count the number of failed ssh authentication | ||||
| SSH_FAIL_LOGIN=$(occur_num 'sshd.*Failed' "${AUTH_LOG_FILE}") | ||||
| SSH_FAIL_LOGIN=$(get_pattern_count 'sshd.*Failed' "${AUTH_LOG_FILE}" '0') | ||||
| printf '%b' "\n${MAGENTA}+ ${WHITE}SSH fail\t${MAGENTA}= ${SSH_FAIL_LOGIN} fail(s) this week" | ||||
| # Count the number of failed sudo authentication | ||||
| SUDO_FAIL=$(occur_num 'sudo.*authentication failure' "${AUTH_LOG_FILE}") | ||||
| SUDO_3_FAIL=$(occur_num 'sudo.*3 incorrect password' "${AUTH_LOG_FILE}") | ||||
| SUDO_FAIL=$(get_pattern_count 'sudo.*authentication failure' "${AUTH_LOG_FILE}" '0') | ||||
| SUDO_3_FAIL=$(get_pattern_count 'sudo.*3 incorrect password' "${AUTH_LOG_FILE}" '0') | ||||
| printf '%b' "\n${MAGENTA}+ ${WHITE}Sudo fail\t${MAGENTA}= ${GREEN}${SUDO_FAIL} fail(s) this week | ||||
| ${MAGENTA}+ ${WHITE}Sudo 3 fails\t${MAGENTA}= ${GREEN}${SUDO_3_FAIL} fail(s) this week" | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue