LINUX.ORG.RU

Защита sshd

 , , ,


0

1

Работает веб-сервер на FreeBSD, необходимо предотвратить взлом пароля. Фаервол ipfw. sshd_config я настроил вот так :

Port 567

AddressFamily inet

#ListenAddress: #ListenAddress 0.0.0.0

Protocol 2

#HostKey /etc/ssh/ssh_host_key

#HostKey /etc/ssh/ssh_host_rsa_key #HostKey /etc/ssh/ssh_host_dsa_key #HostKey /etc/ssh/ssh_host_ecdsa_key

#KeyRegenerationInterval 1h #ServerKeyBits 1024

#SyslogFacility AUTH LogLevel VERBOSE

# Authentication:

LoginGraceTime 60 PermitRootLogin yes StrictModes yes MaxAuthTries 3 MaxSessions 3

Servtifikat

#RSAAuthentication yes #PubkeyAuthentication yes #AuthorizedKeysFile .ssh/authorized_keys

RhostsRSAAuthentication no #HostbasedAuthentication no #IgnoreUserKnownHosts no #IgnoreRhosts yes

PasswordAuthentication no PermitEmptyPasswords no

ChallengeResponseAuthentication no

# Kerberos опции #KerberosAuthentication no #KerberosOrLocalPasswd yes #KerberosTicketCleanup yes #KerberosGetAFSToken no

# GSSAPI опции #GSSAPIAuthentication no #GSSAPICleanupCredentials yes

UsePAM no

#AllowAgentForwarding yes #AllowTcpForwarding yes #GatewayPorts no #X11Forwarding no #X11DisplayOffset 10 #X11UseLocalhost yes PrintMotd yes PrintLastLog yes TCPKeepAlive yes UseLogin yes UsePrivilegeSeparation yes #PermitUserEnvironment no #Compression delayed #ClientAliveInterval 0 #ClientAliveCountMax 3 #UseDNS yes PidFile /var/run/sshd.pid #MaxStartups 2:70:5 #PermitTunnel no #ChrootDirectory none

#Banner none

в правилах написал записал: ipfw='/sbin/ipfw -q' ${ipfw} flush ${ipfw} add 100 allow tcp from ip_адрес to me 22 ${ipfw} add 100 allow tcp from ip_адрес to me 22 ${ipfw} add 100 deny tcp from any to me 22 ${ipfw} add 65000 allow tcp from any to any

как считаете достаточно защищен или все что то нужно добавить ?



Последнее исправление: Klymedy (всего исправлений: 2)

fail2ban
// простыню не читал

aol ★★★★★
()

А почему не ключи вместо паролей?
По теме, sshguard, PAM ещё.

backbone ★★★★★
()

Можно ещё запретить root логин и создать пользователя в wheel. Тогда для получения рута надо будет два пароля или ключ+пароль.

ProstoTyoma
()

99% попыток взлома ты уже отсек перевешиванием на другой порт. Теперь просто запрети парольный доступ и скажи своей паранойе, чтобы успокоилась.

leave ★★★★★
()
Ответ на: комментарий от leave

другой порт говоришь?

security by obscurity?

ню-ню

PermitRootLogin without-password

и

table <bruteforce> persist
block in quick on egress from <bruteforce>
pass in on egress proto tcp to port ssh keep state (max-src-conn-rate 5/15, overload <bruteforce> flush global)

(pf syntax, как его превести на ipwf — не знаю) — блочит особо ярых

ну и

pfctl -q -t bruteforce -T expire 3600

в cron, шобы снять блок через н-ное время

и всё, всё остальное от лукавого.

beastie ★★★★★
()
Ответ на: комментарий от beastie

Но зачем напрягать пакетный фильтр тупой работой, если проще отсечь ботов перевешиванием на другой порт?

leave ★★★★★
()
Ответ на: комментарий от leave

а это и так его работа. зачем его тогда вообще держать? да и ботов бояться — в сеть не ходить.

beastie ★★★★★
()
Ответ на: комментарий от leave

это только если у тебя один localhost. ;) если же этих localhost'ов over9000 — то заеб*ся. это раз.

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

ну и реальных хаков через ssh или попыток оных я уже лет десять как минимум не встречал и даже не слышал о подобном.

т.ч. вся эта параноя и переброс портов для немытых школьников.

beastie ★★★★★
()
Ответ на: комментарий от beastie

т.ч. вся эта параноя и переброс портов для немытых школьников.

плюсую
даже 8 символьный пароль брутить они будут лет 500. тем более, такие боты брутят только по словарям

xtraeft ★★☆☆
()
Ответ на: комментарий от beastie

а их бояться смысла вообще никакого нет

они неплохо нагружают и сетевую подсистему, и дисковую

т.ч. вся эта параноя и переброс портов для немытых школьников.

зачем мне лишние записи в логах?

это только если у тебя один localhost. ;) если же этих localhost'ов over9000 — то заеб*ся. это раз.

у меня их прямо сейчас

$ grep HostName .ssh/config |wc -l
660

leave ★★★★★
()
Ответ на: комментарий от leave

они неплохо нагружают и сетевую подсистему, и дисковую

Долбиться они будут так или иначе. Т.ч. выиграша тут шерсти клок, а точнее ноль целых ноль десятых. К тому же это не тот обьём ирафика, о котором стоило бы задумываться.

зачем мне лишние записи в логах?

А оно тебе мешает? Как по мне — то лучше знать, чем глаза закрывать.

у меня их прямо сейчас over600

Молодец, ещё один emacs-конфиг. Теперь потеряй его и мучительно вспоминай где какой порт про прописан. Молчу о ситуации, кагда доступ из разных точек нужен.

beastie ★★★★★
()
Ответ на: комментарий от beastie

Долбиться они будут так или иначе. Т.ч. выиграша тут шерсти клок, а точнее ноль целых ноль десятых. К тому же это не тот обьём ирафика, о котором стоило бы задумываться.

на порт, отличный от 22, не долбятся. 6-8к cps

А оно тебе мешает? Как по мне — то лучше знать, чем глаза закрывать.

да, мешает: из-за них сложно вычленить реальных людей. Зачем мне знать, что боты брутят мой ssh?

Молодец, ещё один emacs-конфиг. Теперь потеряй его и мучительно вспоминай где какой порт про прописан. Молчу о ситуации, кагда доступ из разных точек нужен.

он бэкапится в три разных места, одно из которых - svn репозиторий.

leave ★★★★★
()
Ответ на: комментарий от leave

От шести до восми килоконнектов в секунду на порт, извени, но просто не верю. Ну и over600 хостов в твоём конфиге тоже как-то совсем не вяжется с явными признаками красноглазия.

beastie ★★★★★
()
Ответ на: комментарий от beastie

Из over600 хостов в интернет смотрят от силы полсотни, остальные - чисто внутренние ресурсы (в основном dev-площадки). 8k cps я на одном из этих внешних серверов (шаред-хостинг) видел своими глазами, и после этого решил, что пусть лучше мой sshd повисит на 2200 - юзерам как-нибудь да объясню. Сказать, что я тогда офигел - ничего не сказать :) Спас IPMI. Логов не покажу, поскольку это было два года назад.

leave ★★★★★
()
Ответ на: комментарий от beastie

Довольно часто наблюдаю в среде, казалось бы профессиональных админов, тайных одептов БоХаЦе, пропагандирующих мем: «ОНИ НИ.УЯ НЕ ЗДЕЛАЮТ!» ( Что это? Профессиональное выгорание или банальная лень?

это только если у тебя один localhost. ;) если же этих localhost'ов over9000 — то заеб*ся. это раз.

Чудненько! over9000 порутанных серваков в случае нахождения одэя. А ведь как сложно применить сценарий: стучимся на, скажем, 2200 порт, нет ответа - стучимся на 22. И ничего запоминать не надо.

во вторых — всё, что нагло стучиться в 22 — это тупые боты, а их бояться смысла вообще никакого нет.

И как по Вашему хакер будет искать уязвимые версии ssh? Открою Вам страшную тайну: он не будет руками перебирать сетку /0, он соберет их с помощью ботсети.

funky
()

fail2ban, knockd

IPR ★★★★★
()
Ответ на: комментарий от beastie

переброс портов для немытых школьников.

С чего бы это? Смена порта - это весело и питательно, позволяет отсеять ботов и юных кулхацкеров, которые умело какают в логи. Но вот лично я не меняю порт, ибо без них мне скучно и одиноко :(

IPR ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.