a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Perl > 正文

perl腳本實現限制ssh最大登錄次數(支持白名單)

2020-10-31 15:05:56
字體:
來源:轉載
供稿:網友

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 & (運行腳本)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91精品久久久久久综合五月天 | 女女百合高h喷汁呻吟视频 女女野外嗯啊高潮h百合扶她 | 欧美激情精品久久久久久 | 91人人看| 日本在线一区二区 | 在线三级av | 国产噜噜噜噜噜久久久久久久久 | 九九热精品视频在线观看 | 日韩性xxx| 视频在线一区 | 青青草91青娱盛宴国产 | 999精品在线 | 日韩人体在线 | 第一福利丝瓜av导航 | 91精品国产91久久综合桃花 | 91久久久久久 | 综合网视频 | 成人影院在线 | 99国产视频| 影音先锋亚洲资源 | 91精品国产色综合久久不卡98口 | 91精品久久久久久综合五月天 | 欧美精品xx | 91成人精品 | 欧美一区二区人人喊爽 | 一二三四区在线观看 | 欧美激情欧美激情在线五月 | 亚洲精品第一页 | 久久精品中文字幕一区 | 亚洲无限资源 | 久久久久.com| 亚洲精品视频免费看 | www精品美女久久久tv | 久久久久久久久久久免费视频 | 精品美女在线观看视频在线观看 | 亚洲自拍一区在线 | 欧美精品在线视频 | 国产成人精品久久 | 精品一区二区三区四区五区 | 亚洲国产精品一区二区久久 | 亚洲97视频|