URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 64513
[ Назад ]

Исходное сообщение
"заблокировать массу SSH коннектов"

Отправлено HAN , 02-Мрт-06 16:37 
Привет!
Я думаю многоие с этим сталкивались - идет масса логинов к порту SSH с простым "подбором" пароля/логина (по уже готовым спискам). У нас конечно таких простых паролей/логинов не применяется и тут безопасность нормальная, но это ведь грузит сервер пустым траффиком!
Как можно блокировать подобные коннекты? скажем через пять неудачных - на час блокируется этот IP. Это можно сделать силами самого SSH?

Спасибо!
HAN


Содержание

Сообщения в этом обсуждении
"заблокировать массу SSH коннектов"
Отправлено Azazelo , 02-Мрт-06 17:02 
>Привет!
>Я думаю многоие с этим сталкивались - идет масса логинов к порту
>SSH с простым "подбором" пароля/логина (по уже готовым спискам). У нас
>конечно таких простых паролей/логинов не применяется и тут безопасность нормальная, но
>это ведь грузит сервер пустым траффиком!
>Как можно блокировать подобные коннекты? скажем через пять неудачных - на час
>блокируется этот IP. Это можно сделать силами самого SSH?
>
>Спасибо!
>HAN
MaxStartups
             Specifies the maximum number of concurrent unauthenticated con-
             nections to the sshd daemon.  Additional connections will be
             dropped until authentication succeeds or the LoginGraceTime
             expires for a connection.  The default is 10.

             Alternatively, random early drop can be enabled by specifying the
             three colon separated values ``start:rate:full'' (e.g.,
             "10:30:60").  sshd will refuse connection attempts with a proba-
             bility of ``rate/100'' (30%) if there are currently ``start''
             (10) unauthenticated connections.  The probability increases lin-
             early and all connection attempts are refused if the number of
             unauthenticated connections reaches ``full'' (60).

повесь sshd на какойнить порт отличный от 22 , я например повесил на 443 , заодно и через прокси коннекчусь .

также стоит вместо паролей использовать ключи .


да кстати ,поиск рулит ...


"SSH"
Отправлено 3.14PA , 02-Мрт-06 18:16 
У меня FreeBSD 5.4
xl0 - внешний интерфейс

Я от брутворса избавился так:

rc.firewall

{fwcmd} add 1 reject all from any to me dst-port 22 in via xl0


после добавления этого правила никто ддостучатся на 22 порт уже не сможет
а если все таки нужно юзать SSH из вне, то дабавь правило разришающее конект с конкретного (твоего) хоста.


"SSH"
Отправлено HAN , 02-Мрт-06 19:49 
>после добавления этого правила никто ддостучатся на 22 порт уже не сможет
>
>а если все таки нужно юзать SSH из вне, то дабавь правило
>разришающее конект с конкретного (твоего) хоста.

в том то и дело как раз снаружи и надо и причем сам могу с разных IP заходить и несколько человек тоже


"SSH"
Отправлено Gennadi , 02-Мрт-06 22:05 
>>после добавления этого правила никто ддостучатся на 22 порт уже не сможет
>>
>>а если все таки нужно юзать SSH из вне, то дабавь правило
>>разришающее конект с конкретного (твоего) хоста.
>
>в том то и дело как раз снаружи и надо и причем
>сам могу с разных IP заходить и несколько человек тоже

Несколько примеров на эту тему....

http://gennadi.dyn.ee/27.html


"заблокировать массу SSH коннектов"
Отправлено vt , 02-Мрт-06 23:35 
>Я думаю многоие с этим сталкивались - идет масса логинов к порту
>SSH с простым "подбором" пароля/логина (по уже готовым спискам).
>Как можно блокировать подобные коннекты? скажем через пять неудачных - на час
>блокируется этот IP. Это можно сделать силами самого SSH?

Силами самого sshd - нет.
Силами iptables - легко:
http://www.opennet.me/tips/sml/41.shtml
http://www.swisspowered.net/wiki/index.php/Networking:Brute_...


"заблокировать массу SSH коннектов"
Отправлено satelit , 03-Мрт-06 05:41 
>Привет!
>Я думаю многоие с этим сталкивались - идет масса логинов к порту
>SSH с простым "подбором" пароля/логина (по уже готовым спискам). У нас
>конечно таких простых паролей/логинов не применяется и тут безопасность нормальная, но
>это ведь грузит сервер пустым траффиком!
>Как можно блокировать подобные коннекты? скажем через пять неудачных - на час
>блокируется этот IP. Это можно сделать силами самого SSH?
>
>Спасибо!
>HAN
1) Повешать сашу на другой (желательно не популярный порт).
2) Либо поставить SNORT, либо в iptables есть модуль (Patch-o-matic) ограничивающий подключения на данный порт.
3) Использовать оба вышеприведенных метода.


"заблокировать массу SSH коннектов"
Отправлено Аноним , 03-Мрт-06 10:26 
>Привет!
>Я думаю многоие с этим сталкивались - идет масса логинов к порту
>SSH с простым "подбором" пароля/логина (по уже готовым спискам). У нас
>конечно таких простых паролей/логинов не применяется и тут безопасность нормальная, но
>это ведь грузит сервер пустым траффиком!
>Как можно блокировать подобные коннекты? скажем через пять неудачных - на час
>блокируется этот IP. Это можно сделать силами самого SSH?
>
>Спасибо!
>HAN


повесь на другой порт ссх демон.
пропиши AllowUsers в sshd_config
количество коннектов уменьшиться на половину.


"заблокировать массу SSH коннектов"
Отправлено usama , 03-Мрт-06 12:12 
я сделал так:
в sshd.conf записал:
SysLogFacility AUTHPRIV

#!/usr/bin/perl

$log="Subject: IP banned\n";
%ban;

open(F, '< /var/log/secure');
while(<F>){
    $str = $_;
    $str=~/Failed password for .+ (.+) port/;
    if(!$ban{$1}){ $ban{$1}=1; }  else { $ban{$1}++; }
}
close(F);


open (BL, '>>/etc/rc.d/ban.ip');
foreach $key (keys %ban){
   if($ban{$key} > 10 && $key){
    print BL $key,"\n";
    `iptables -I tcp_new -p tcp -s $key -j DROP`;
    $log.="$key\n";
    smtp_send('postmaster@inteh.com.ua', $log);
    }
}
close(BL);


open(F, '> /var/log/secure');
print F "0";
close(F);    

sub smtp_send{
local $m_addr=shift;
local $m_body=shift;
my $ret;
my $p;

use IO::Socket;
my $remote = IO::Socket::INET->new(PeerAddr => '212.40.43.98:25')
          or die "Can't create socket";
$p.=<$remote>;
print $remote "helo inteh\n";
$p.=<$remote>;
print $remote "mail from: <krot-s\@mail.ru>\n";
$p.=<$remote>;
print $remote "rcpt to: <$m_addr>\n";
$p=<$remote>;
if($p=~/250/i ){
    print $remote "DATA\n";
    $p.=<$remote>;
    print $remote "$m_body\n.\n";
    $p.=<$remote>;
if($p=~/250/i){
    $ret=0;
    }else{
    $ret.="Error:\n$p\n";
    }
}else{
$ret.= "Error: \n$p\nCan't sent the mail!\n";
}
print $remote "quit\n";
$p=<$remote>;

return $ret;
}

Тупо конечно, но слепил за 10 мин., и работает



"заблокировать массу SSH коннектов"
Отправлено s_dog , 03-Мрт-06 13:45 
Надо опеннет читать ;)

Отсюда:
http://www.opennet.me/opennews/art.shtml?num=6945

http://www.howtoforge.com/preventing_ssh_dictionary_attacks_...


"заблокировать массу SSH коннектов"
Отправлено antonsdsd , 09-Мрт-11 21:25 
http://anton-lebedev.blogspot.com/2011/03/fail2ban.html