时间:2021-05-22
ssh limit perl脚本主要作用:
1.限制一个ssh用户的最大登录数为n,n可自定义。
2.支持白名单,如root、test登录不受限制。
如果一个ssh用户的最大登录数超过指定数字,则后登录的会把先前登录的踢掉,以此达到控制登录数的目的。
该脚本需要主机支持perl,如果没有,可yum安装。
脚本源码:
#!/usr/bin/perl -wuse strict;#white listmy @ALLOW_USERS = qw{ test root lulu1};#the maximum number of ssh loginmy $LOGIN_TIMES = 1;sub main{ my @lines = `ps -eo user,pid,etime,cmd | grep sshd`; my $users; for my $line (@lines) { if(my ($user, $pid, $etime, $cmd) = $line =~ /^([^\s]+)\s+(\d+)\s+([^\s]+)\s+(sshd:.+)$/) { next if grep {$user eq $_} @ALLOW_USERS; my $proc = {'pid', $pid, 'etime', $etime, 'cmd', $cmd}; push @{$users->{$user}}, $proc; } } for my $key(keys(%$users)) { my @sshs = sort { my ($lb, $la) = (length($b->{'etime'}), length($a->{'etime'})); if($lb == $la) { $b->{'etime'} cmp $a->{'etime'}; } else { $lb <=> $la; } } @{$users->{$key}}; $LOGIN_TIMES = 1 if $LOGIN_TIMES < 1; for (1 .. $LOGIN_TIMES) { pop @sshs; }; for my $ssh (@sshs) { kill 9, $ssh->{'pid'}; } }}while(1) { main; sleep 3;}
【使用方法】
另存脚本存到root目录,命名为limit.pl,然后执行:
echo "/root/limit.pl &" >> /etc/rc.d/rc.local (加入开机启动)/root/limit.pl & (运行脚本)声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、各类黑白名单的简介首先说明一下:UA白名单-->初始化阶段User-Agent白名单UA黑名单-->初始化阶段User-Agent黑名单IP白名单-->所有
给邮箱添加白名单,该怎么添加呢?白名单的邮箱地址可以不受系统拦截。接下来,小编就和大家分享具体操作方法。腾讯企业邮箱添加白名单教程打开企业邮箱,输入账号密码登录
想必大家都知道,vivoy93s手机设置一键加速白名单的方法:点击左键调出后台运行的软件,然后按住需要设置白名单的软件后台向下拉再松开,该软件即会加入白名单,感
要知道,淘宝也是有黑白名单的。众所周知,黑名单就是那些被拉黑了的客户,通常都是因为这些人有一些劣迹。那么,淘宝直播白名单是什么意思呢?白名单的概念与“黑名单”相
iqoopro怎么把软件设置为白名单?iqoopro的运存非常大,其中最低的也有6G,支持您将应用设置为白名单,锁定在后台,让它一直运行。具体应该如何操作呢?感