文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>限制IP登录、限制登录时间的shell

限制IP登录、限制登录时间的shell

时间:2008-04-18  来源:sdccf

作者:zyr2288   
#在个应用户第一行加入:/autodbbk/chk_login.sh || exit 
#注意权限问题 

#read a 
TTY=`tty | cut -f3 -d'/'` #取终端号 
IP=`who -x| grep "$TTY "|cut -b38-52|cut -f1,2,3 -d'.' ` #取IP前3个字节 
N=`who -x | grep "$IP." |cut -f1 -d' '|grep $LOGNAME|wc -l` #取用户数 
MAXTERM=`grep "$IP." /autodbbk/term_num.txt|grep $LOGNAME|cut -f3` #取最大用户数 
echo "您所在公司最多可以登录$MAXTERM个终端,你是第$N位用户 ! " 
TIME=`date '+%Y%m%d-%H:%M:%S'` 
#w -x | awk -F ' ' -f /autodbbk/outtime.awk |grep ":"|grep "$IP" 
w -x | awk -F ' ' -f /autodbbk/outtime.awk |grep ":"|grep "$IP" 
echo "$TIME $LOGNAME $MAXTERM $IP" >>count.log 

#注册超时检查 
if [ ! "$MAXTERM" ] #检查非授权网络的登录 
then echo "Error IP !" 
     IP=`who -x| grep "$TTY "|cut -b38-52|cut -f1,2,3,4 -d'.' ` #取IP全址 
     TIME=`date '+%Y%m%d-%H:%M:%S'` 
     #echo "$TIME $IP $LOGNNAME" >>log 
     exit 1 
fi 
if [ $N -gt "$MAXTERM" ] #检查是否超额定注册数 
then 
  echo "" 
  echo "你公司最多注册$MAXTERM个终端,您现在是第$N个用户,您可以按下面的" 
#  echo "方法试着登录:" 
#  echo "    现在应业务中心要求,暂停基层公司登录,如有疑问,请与该部门联系!!" 
  echo "                              " 
  echo "                              2002年1月1日" 
    exit 2 
fi 

TIME=`date '+%H%M'` 
if [ $TIME -lt 0730 -o $TIME -gt 2300 ] #检查是否在许可工作时间 
then 
  echo "\n\n" 
  echo "各位单位用户:\n" 
  echo "系统正在进行数据备份、日终、日初操作,约零晨 2:30 以后系统恢复\n" 
  echo "正常,如有特殊情况需夜间使用系统,请及时通知中心机房系统管理员。\n" 
  echo "电话 \n\n" 
  echo "                                         \n" 
  echo "                                         2001年6月4日\n" 
  exit 3 
fi 

#echo "系统优化,约需10~20分钟,可相对加快速度,请稍等..." 
#exit 4 

#下面是term_num.txt文本示例 
#用户名 网络地址 最大用户数 

root 18.129.32. 9
相关阅读 更多 +
排行榜 更多 +
随大同

随大同

冒险解谜 下载
弯曲路径:无尽奔跑

弯曲路径:无尽奔跑

休闲益智 下载
工艺融合对战

工艺融合对战

策略塔防 下载