Страница 1 из 2

Вопрос защиты.

Добавлено: 2009-03-12 12:02:46
Shaman
День добрый.
Интересует такой вопрос.
Возможно ли организовать следующие: как после 3ох неудачных попыток ввести логин(пароль), сервер банил человека(добавлял запрещающие правило для ip в ipfw) , пока рут не снимет запрет ?
Или же как обезопаситься от перебора логина ? Может кто нить что нить посоветовать ?
Сам просто еще новичек в мире unix . А проблема реальная.

Re: Вопрос защиты.

Добавлено: 2009-03-12 12:05:42
hizel

Код: Выделить всё

Port:   sshblock-1.0
Path:   /usr/ports/security/sshblock
Info:   Block abusive SSH login attempts
Maint:  anders@FreeBSD.org
B-deps: perl-5.8.9_1
R-deps: p5-File-Tail-0.99.3 perl-5.8.9_1
WWW:    http://www.bsdconsulting.no/tools/

Port:   sshguard-1.3
Path:   /usr/ports/security/sshguard
Info:   Protect hosts from brute force attacks against ssh and other services
Maint:  mij@bitchx.it
B-deps:
R-deps:
WWW:    http://sshguard.sourceforge.net

Port:   sshit-0.6_4
Path:   /usr/ports/security/sshit
Info:   Checks for SSH/FTP bruteforce and blocks given IPs
Maint:  rafan@FreeBSD.org
B-deps:
R-deps: p5-IPC-Shareable-0.60_1 p5-Proc-PID-File-1.24 p5-Unix-Syslog-1.1 perl-5.8.9_1
WWW:    http://anp.ath.cx/sshit/

Re: Вопрос защиты.

Добавлено: 2009-03-12 13:24:28
Shaman
А можешь по подробней ?

Re: Вопрос защиты.

Добавлено: 2009-03-12 13:52:47
FoxDW

Re: Вопрос защиты.

Добавлено: 2009-03-12 15:54:53
Shaman
Отлично то что мне нужно, но есть одно но в комментариях пишется о 2-3 дневной работе и отвале, как с этим сейчас кто нить скажет ?

Re: Вопрос защиты.

Добавлено: 2009-11-09 0:16:50
cat_ua
regex для pure-ftpd есть у кого то?

Re: Вопрос защиты.

Добавлено: 2010-03-30 9:54:40
skorin
Помогите пожалуста!!!
Почему блокировка скидывается не через 300 секунд а как то совсем по другому?
Или я чегото не допонял! :(

Код: Выделить всё

Mar 29 22:38:21 firebird sshd[42459]: error: PAM: authentication error for vasya from 94.000.000.2
Mar 29 22:38:21 firebird sshit: BLOCKING 94.000.000.2 with ipfw2
Mar 30 00:00:01 firebird sshit: fd closed. clean up
Mar 30 00:00:01 firebird sshit: main removed block rule  for 94.000.000.2 (reset time of 300 seconds reached)

Re: Вопрос защиты.

Добавлено: 2010-03-30 12:29:33
silent
Можно еще knockd заюзать. Хорошая вещь. Или порт SSH перевесить на другой порт, отличный от 22.

Re: Вопрос защиты.

Добавлено: 2010-03-30 13:01:20
skorin
Спасибо за совет! Но Port knocking не очень мне подходит, т.к. приходиться часто соеденяться с сервером из разных мест и чаще всего через Windows.
Попробую поискать альтернативу sshit ну или на крайний случай сменю порт!

Re: Вопрос защиты.

Добавлено: 2010-03-30 13:18:12
hizel
нет, ну натурально, а где sshit.conf ваш?

Re: Вопрос защиты.

Добавлено: 2010-03-30 13:31:57
skorin
Ой, сорри!

Код: Выделить всё

8.0-RELEASE FreeBSD 8.0-RELEASE

Код: Выделить всё

# Sample configuration file of sshit.pl

# We use pf as firewall on default
FIREWALL_TYPE   = ipfw2

# Number of failed login attempts within time before we block
MAX_COUNT       = 3

# Time in seconds in which all failed login attempts must occur
WITHIN_TIME     = 60

# Time in seconds to block ip in firewall
RESET_IP        = 300

IPFW_CMD        = /sbin/ipfw

# Make sure you don't have any important rules here already
IPFW_RULE_START = 2100
IPFW_RULE_END   = 2199

IPFW2_CMD       = /sbin/ipfw
IPFW2_TABLE_NO  = 0

PFCTL_CMD       = /sbin/pfctl
PF_TABLE        = badhosts


Re: Вопрос защиты.

Добавлено: 2010-03-30 13:51:30
hizel
вроде все пучком, не вижу в чем проблема, попробуйте другой блокер, выше я приводил их три штуки

Re: Вопрос защиты.

Добавлено: 2010-03-30 14:03:52
skorin
А не подскажете, я молод еще в этой сфере, к сожалению. Но не может это быть связанно с фаерволом? На двух разных машинах sshit ведет себя совершенно одинаково ipfw настроен на обоих совершенно одинаково! Может в этом загвоздка?
Сейчас буду прововать на третьем компьютере запустить, и ковырять фаерволл...

Re: Вопрос защиты.

Добавлено: 2010-03-30 14:09:23
hizel
ну я не телепат и без правил фаервола не подскажу :-[

Re: Вопрос защиты.

Добавлено: 2010-03-30 14:16:57
skorin
А я вам их сейчас покажу... :)

Код: Выделить всё

FwCMD="/sbin/ipfw"
LanOut="ale0"
LanIn="re0"
IpOut="94.000.000.2"
IpIn="192.168.0.1"
NetMask="24"
NetIn="192.168.0.0"

${FwCMD} -f flush
${FwCMD} -f table 0 flush
${FwCMD} add check-state
${FwCMD} add allow ip from any to any via lo0

${FwCMD} add deny all from "table(0)" to any

${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any
${FwCMD} add deny ip from any to 10.0.0.0/8 in via ${LanOut}
${FwCMD} add deny ip from any to 172.16.0.0/12 in via ${LanOut}
${FwCMD} add deny ip from any to 192.168.0.0/16 in via ${LanOut}
${FwCMD} add deny ip from any to 0.0.0.0/8 in via ${LanOut}
${FwCMD} add deny ip from any to 169.254.0.0/16 in via ${LanOut}
${FwCMD} add deny ip from any to 240.0.0.0/4 in via ${LanOut}
${FwCMD} add deny icmp from any to any frag
${FwCMD} add deny log icmp from any to 255.255.255.255 in via ${LanOut}
${FwCMD} add deny log icmp from any to 255.255.255.255 out via ${LanOut}
${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
${FwCMD} add deny ip from 10.0.0.0/8 to any out via ${LanOut}
${FwCMD} add deny ip from 172.16.0.0/12 to any out via ${LanOut}
${FwCMD} add deny ip from 192.168.0.0/16 to any out via ${LanOut}
${FwCMD} add deny ip from 0.0.0.0/8 to any out via ${LanOut}
${FwCMD} add deny ip from 169.254.0.0/16 to any out via ${LanOut}
${FwCMD} add deny ip from 224.0.0.0/4 to any out via ${LanOut}
${FwCMD} add deny ip from 240.0.0.0/4 to any out via ${LanOut}
${FwCMD} add allow tcp from any to any established
${FwCMD} add allow ip from ${IpOut} to any out xmit ${LanOut}
${FwCMD} add allow udp from any 53 to any via ${LanOut}
${FwCMD} add allow udp from any to any 53 via ${LanOut}
${FwCMD} add allow udp from any to any 123 via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut} 21 via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut} 49152-65535 via ${LanOut}
${FwCMD} add allow icmp from any to any icmptypes 0,8,11
#${FwCMD} add allow tcp from any to ${IpOut} 80 via ${LanOut}
#${FwCMD} add allow tcp from any to ${IpOut} 25 via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut} 22 via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut} 143 via ${LanOut}
#${FwCMD} add allow tcp from any to ${IpOut} 110 via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut} 3389 via ${LanOut}
${FwCMD} add allow tcp from any to any via ${LanIn}
${FwCMD} add allow udp from any to any via ${LanIn}
${FwCMD} add allow icmp from any to any via ${LanIn}
${FwCMD} add deny ip from any to any

Re: Вопрос защиты.

Добавлено: 2010-03-30 14:21:12
hizel
check-state как обычно позабавил, нет ваши правила на sshit никаким боком

Re: Вопрос защиты.

Добавлено: 2010-03-30 16:19:48
skorin
Вот блин! :( Походу мне одному так не повезло... :cry:
Завтра попробую FreeBSD 6 попробую поставить и на ней сделать всё тоже самое!

Re: Вопрос защиты.

Добавлено: 2010-03-30 16:27:38
hizel
делать нечего, зачем вам 6-ка?

Re: Вопрос защиты.

Добавлено: 2010-03-30 16:35:57
skorin
Ради эксперемента. Что бы понять!!! Толи я криворукий, толи всётаки проблема в 8-ке....
Потому что походу дела я один такой с тремя машинами на которых стоит 8-ка и нормально не работает sshit! :(
Рубать айпи - рубает, а вот назад их ну ни как не хочет включать :( Я уж второй день с этим копашусь, уж из принципа хочеться понять в чём косяк :x

Re: Вопрос защиты.

Добавлено: 2010-03-31 0:28:16
skorin
Не буду ставить 6-ку :) Методом проб и ошибок, sshit начал снимать блокировку! Но для того что бы это стало происходить, надо достать бубен!

Блокировал - УРА! :)

Код: Выделить всё

Mar 31 00:50:31 firebird sshit: BLOCKING 94.000.000.2 with ipfw2
После блокировки делаю

Код: Выделить всё

#ps -ax | grep sshit
10012  ??  Is     0:00,08 /usr/local/bin/perl /usr/local/sbin/sshit
10015  ??  S      0:00,27 /usr/local/bin/perl /usr/local/sbin/sshit
#kill 10012
#kill 10015
Пробую залогиниться с другой машины

Код: Выделить всё

Mar 31 00:50:59 firebird sshd[46803]: reverse mapping checking getaddrinfo for 93.100.32.12.pool.sknt.ru [93.100.32.12] failed - POSSIBLE BREAK-IN ATTEMPT!
Mar 31 00:51:02 firebird sshd[46803]: Accepted keyboard-interactive/pam for poison from 93.100.32.12 port 27975 ssh2
Mar 31 00:51:08 firebird su: BAD SU vasya to root on /dev/pts/0
Mar 31 00:51:11 firebird su: vasya to root on /dev/pts/0
После этого всё начинает работать, даже после перезагрузки машины!
Хотя можно наверное было сделать /etc/rc.d/syslogd restart (который кстати, появляется если только фаервол вкручен в ядро, в других случаях там лежит пустой файл нулевого размера)
Но уж что есть, то есть :)
Хотя вчера делал syslogd restart без убийства процесса, ни чего не менялось.

Код: Выделить всё

Mar 31 01:03:11 firebird sshit: BLOCKING 94.000.000.2 with ipfw2
Mar 31 01:03:36 firebird sshit: janitor removed block rule  for 94.000.000.2 (reset time of 20 seconds reached)
...
Mar 31 01:05:32 firebird sshit: BLOCKING 94.000.000.2 with ipfw2
Mar 31 01:05:56 firebird sshit: janitor removed block rule  for 94.000.000.2 (reset time of 20 seconds reached)
В ЧЁМ ПОДВОХ?

Re: Вопрос защиты.

Добавлено: 2010-03-31 8:48:19
hizel
sshit это текстовой perl скрипт в него внутрь можно заглянуть ;]

Re: Вопрос защиты.

Добавлено: 2010-03-31 10:10:08
skorin
Я в него вчера заглянул :) Но так как я не программист, ни чего толком не понял. :roll:
Для меня было странно поведение этого скрипта... Всё у меня ни как у людей :)

Re: Вопрос защиты.

Добавлено: 2010-03-31 10:25:42
hizel
там выше есть мой пост, там три программы, вы попробовали одну

Re: Вопрос защиты.

Добавлено: 2010-03-31 10:58:19
skorin
Да, конечно же, я видел пост! Спасибо!
Я как раз сейчас обдумываю установку sshguard, думаю ради эксперемента поставлю на одну машину!
Спасибо за помощь!

Re: Вопрос защиты.

Добавлено: 2010-03-31 16:00:22
FreeBSP
/usr/ports/security/bruteblock
http://habrahabr.ru/blogs/sysadm/68945/