Descripcion: Script que permite bloquear una terminal con password momentaneo sin comprometer el de usuario root o el tuyo
#!/bin/bash #Version 1.0, March 10th, 2012 #Written by Matias Katz (@matiaskatz - www.matiaskatz.com). 2012, Buenos Aires, Argentina. signal_trapper () #This is where the signal traps are sent { echo "****** Nope :) ******" } menu () #Main menu { echo "" echo -n "Hi, I'm '$host' and I'm locked. Please, type the password to unlock: " read -s x case $x in $password) echo "" echo "Bye! :)" exit 0 ;; *) menu ;; esac } #Start of excecution case $1 in "-h"|"--help") echo "Lock v1.0 - A simple Linux console locking tool, written in Bash-Scripting" echo "Written by Matias Katz (@matiaskatz - www.matiaskatz.com). 2012, Buenos Aires, Argentina." echo "" echo "To use it, just type 'lock' and input the unlock password twice." echo "" echo "Warning: Spaces are ignored, unless they're within other characters:" echo "" echo "The password ' 1' will be taken as '1'." echo "The password '1 ' will be taken as '1'." echo "The password '1 1' will be taken as '1 1'." echo "" echo "Enjoy :)" echo "" exit 0 ;; "") read -s -p "Password: " password #Ask the user for a password echo "" read -s -p "Password (again): " password2 #Ask for confirmation echo "" if [ "$password" != "$password2" ] then echo "Passwords don't match" exit 0 fi ;; *) echo "Invalid option" echo "Hit 'lock -h' or 'lock --help' to find out more." exit 0 #password=$1 #Take the first argument as a password <--- It's dangerous, use it as your own risk :) ;; esac #Prohibimos ^Z y ^C trap 'clear; echo -e "Password:\c";' 2 20 #trap signal_trapper SIGINT #Trap the CTRL+C signal to avoid bypass #trap signal_trapper SIGTSTP #Trap the CTRL+Z signal to avoid bypass host=$(hostname) clear #<--- if you want to :) menu
Forma de Uso:
1) Mover al directorio /usr/bin.
sudo mv lock.sh /usr/bin/lock
2) Asignar permisos
sudo chmod 755 /usr/bin/lock
3) Ejecucion
lock
4) Para acceder a la ayuda
lock -h
Fuente
0 comentarios:
Publicar un comentario