#!/usr/bin/env bash{output=""fname=".rhosts"valid_shells="^($(sed-rn'/^\//{s,/,\\\\/,g;p}'/etc/shells|paste-s-d'|'-))$"awk-vpat="$valid_shells"-F:'$(NF) ~ pat { print $1 " " $(NF-1) }'/etc/passwd|(whileread-ruserhome;do[-f"$home/$fname"]&&output="$output\n - User \"$user\" file: \"$home/$fname\" exists"doneif[-z"$output"];thenecho-e"\n-PASSED: - No local interactive users have \"$fname\" files in their home directory\n"elseecho-e"\n- FAILED:\n$output\n"fi)}
Making global modifications to users' files without alerting the user community can result in unexpected outages and unhappy users. Therefore, it is recommended that a monitoring policy be established to report user .rhosts files and determine the action to be taken in accordance with site policy.
The following script will remove .rhosts files from interactive users' home directories