命令将读取/var/log/lastlog文件;用户排列顺序按照/etc/passwd中的顺序
选项:
(1) -u:查看某个用户的最后一次登陆历史
例如: lastlog -u test
查看用户test的登陆历史
(2) -t:查看最近几天之内的用户登录历史
例如: lastlog -t 1
查看最近1天之内的登陆历史
(3) -b:查看指定天数之前的用户登录历史
例如: lastlog -b 60
查看60天之前的用户登录历史
我刚刚做过实现,可以实现。你先新建一个用户test,然后设置密码。再使用命令
usermod
-e
2010-09-28
test
把test设置过期时间为昨天,然后再使用test登录试试。
usermod
-e
是设置
/etc/shadow第八栏里面的参数,里面是的时间是从1970年1月1日开始算起的,是日为单位,所以,我如果设置为2010-09-28,第八栏的数字为14882.同时也要注意,你linux主机的时间要跟现实时间一样。
如果要清除这个时间限制就使用usermod
-e
"
"
test
1.限制用户user登录时间
# 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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)