Skip to content

Instantly share code, notes, and snippets.

View lucascantor's full-sized avatar

Lucas Cantor lucascantor

View GitHub Profile
@lucascantor
lucascantor / removeFlashPlayer.sh
Created January 27, 2018 08:06
Remove standalone Adobe Flash installation
#!/bin/bash
to_remove=(
"/Applications/Utilities/Adobe Flash Player Install Manager.app"
"/Library/Internet Plug-Ins/Flash Player.plugin"
"/Library/Internet Plug-Ins/flashplayer.xpt"
"/Library/PreferencePanes/Flash Player.prefPane"
"/Library/Receipts/Adobe Flash Player.pkg"
)
@lucascantor
lucascantor / prohibitPasswordAuthPerUser.sh
Created January 27, 2018 08:05
Append rules to to sshd_config to prohibit password ssh auth for a specific user
echo -e "\n# Prohibit password authentication for administrator user\nMatch User <username>\n\tKbdInteractiveAuthentication no\n\tPasswordAuthentication no" >> /etc/ssh/sshd_config
@lucascantor
lucascantor / preferredWifiNetworks.sh
Created January 27, 2018 08:03
Return a list of preferred wifi network SSIDs
networksetup -listpreferredwirelessnetworks `networksetup -listallhardwareports | awk '/Wi-Fi|AirPort/{getline; print $NF}'` | sed 's/^ //g'
@lucascantor
lucascantor / lastBoot.sh
Created January 27, 2018 08:00
Returns date and time of last boot for in YYYY-MM-DD HH:MM:SS format
date -jf "%s" "$(sysctl kern.boottime | awk -F'[= |,]' '{print $6}')" +"%Y-%m-%d %T"
@lucascantor
lucascantor / installXcodeCommandLineTools.sh
Created January 27, 2018 07:58
Install Xcode Command Line Tools from the command line
#!/bin/bash
# create file to prompt 'softwareupdate' utility to see command line tools as available
/usr/bin/touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
# check for command line tools in available software updates
toInstall=softwareupdate -l | grep -B 1 -E "Command Line (Developer|Tools)" | awk -F"*" '/^ +\\*/ {print $2}' | sed 's/^ *//' | tail -n1
# install this specific software update
/usr/sbin/softwareupdate -i "$toInstall"
@lucascantor
lucascantor / forgetWifiNetwork.sh
Last active January 27, 2018 07:58
Remove a specific wifi network SSID from the list of remembered wifi networks
#!/bin/bash
for interface in $(networksetup -listnetworkserviceorder | grep Hardware | awk '/Wi-Fi/ { print $NF }' | awk -F ")" '{ print $1 }')
do
echo "Forgetting non-preferred SSID for $interface"
networksetup -removepreferredwirelessnetwork $interface <SSID to forget>
done
exit 0
@lucascantor
lucascantor / enableSoftwareUpdates.sh
Created January 27, 2018 07:53
#Enable automatic Apple software updates
#!/bin/bash
defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -bool TRUE
defaults write /Library/Preferences/com.apple.SoftwareUpdate CriticalUpdateInstall -bool TRUE
defaults write /Library/Preferences/com.apple.SoftwareUpdate ConfigDataInstall -bool TRUE
defaults write /Library/Preferences/com.apple.commerce AutoUpdate -bool TRUE
defaults write /Library/Preferences/com.apple.commerce AutoUpdateRestartRequired -bool TRUE
schedule=$(softwareupdate --schedule on)
run_config=$(softwareupdate --background)
@lucascantor
lucascantor / disableFindMyMac.sh
Created January 27, 2018 07:51
Disable Find My Mac by deleting its entry from NVRAM
sudo usr/sbin/nvram -d fmm-mobileme-token-FMM
@lucascantor
lucascantor / demoteUsers.sh
Created January 27, 2018 07:50
Demote all admin users to standard users, excluding a specified exempt local admin user
#!/bin/bash
localAccts=$(dscl . list /Users UniqueID | awk '$2>500{print $1}' | grep -v <exempt username>)
while read account; do
echo "Making sure $account is not an admin"
dseditgroup -o edit -d $account admin
done < <(echo "$localAccts")
exit 0
@lucascantor
lucascantor / deadMansSwitch.sh
Created January 27, 2018 07:48
Shut down (and require password to unlock FileVault) if .dead_mans_switch hasn't been touched within the past 24 hours
#!/bin/bash
if [ $(find /Users/<username>/ -mtime -1 -type f -name ".dead_mans_switch" 2>/dev/null) ]
then
echo "Dead mans switch has been touched today."
else
echo "Dead mans switch has NOT been touched today. Shutting down now."
/sbin/shutdown -h now
fi