# vi /etc/security/time.conf
加入以下一行
sshd*userAl1800-2000
# vi /etc/pam.d/sshd
加入以下一行
account required pam_time.so
2.限制使用时长,将下面脚本加入crontab,在合适的时间每分钟自动执行
#!/bin/bashlast|grep still|grep user | while read username tty ip week mon day time nouse
do
start=$(date -d "$week $mon $day $time" +%s)
end=$(date +%s)
total=$(( $end - $start ))
if [ $total -ge 7320 ]
then
if [ $total -ge 7200 ]
then
pkill -t $tty
else
echo "Time Out !!! You will be logout in 2 minutes! " | write $username $tty
fi
fi
done
我刚刚做过实现,可以实现。你先新建一个用户test,然后设置密码。再使用命令
usermod
-e
2010-09-28
test
把test设置过期时间为昨天,然后再使用test登录试试。
usermod
-e
是设置
/etc/shadow第八栏里面的参数,里面是的时间是从1970年1月1日开始算起的,是日为单位,所以,我如果设置为2010-09-28,第八栏的数字为14882.同时也要注意,你linux主机的时间要跟现实时间一样。
如果要清除这个时间限制就使用usermod
-e
"
"
test
使用 last [用户名] 命令,可以看到用户历次的登录时间信息比如: last oracle 就可以显示oracle用历次登录时间
如果你要只显示最后3条,可以用一个组合命令
比如: last oracle | tail -5 | head -3
这样就可以看到最后3次登录信息。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)