форум vBSupport.ru > В помощь веб-мастеру > Общие вопросы сайтостроения > Системное администрирование
Register Меню vBsupport Изображения Files Manager О рекламе Today's Posts Search
  • Родная гавань
  • Блок РКН снят
  • Premoderation
  • For English speaking users
  • Каталог Фрилансеров
  • If you want to buy some product or script
  • Администраторам
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей

Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
for English speaking users:
You may be surprised with restriction of access to the attachments of the forum. The reason is the recent change in vbsupport.org strategy:

- users with reputation < 10 belong to "simple_users" users' group
- if your reputation > 10 then administrator (kerk, Luvilla) can decide to move you into an "improved" group, but only manually

Main idea is to increase motivation of community members to share their ideas and willingness to support to each other. You may write an article for the subject where you are good enough, you may answer questions, you may share vbulletin.com/org content with vbsupport.org users, receiving "thanks" equal your reputation points. We should not only consume, we should produce something.

- you may:
* increase your reputation (doing something useful for another members of community) and being improved
* purchase temporary access to the improved category:
10 $ for 3 months. - this group can download attachments, reputation/posts do not matter.
20 $ for 3 months. - this group can download attachments, reputation/posts do not matter + adds eliminated + Inbox capacity increased + files manager increased permissions.

Please contact kerk or Luvilla regarding payments.

Important!:
- if your reputation will become less then 0, you will be moved into "simple_users" users' group automatically.*
*for temporary groups (pre-paid for 3 months) reputation/posts do not matter.
Уважаемые пользователи!

На форуме открыт новый раздел "Каталог фрилансеров"

и отдельный раздел для платных заказов "Куплю/Закажу"

Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже:
Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота.
Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
 
 
 
 
ERT
Знаток
Default Немного о защите сервера. fail2ban
4

Fail2ban — это инструмент, который отслеживает попытки залогиниться к различным сервисам, таким, как SSH, FTP, SMTP, Apache и другим, и если он находит постоянно повторяющиеся неудачные попытки с одного и того же IP-адреса или хоста, fail2ban остановит дальнейшие попытки залогиниться с этого IP-адреса/хоста, блокируя их с помощью правила iptables.
Как-то не доходили руки заглянуть в логи ауентификации. Недавно зашел, посмотрел и увидел огромное количество желающих попасть "ко мне в гости без приглашения". Установил fail2ban - эдакую тюрьму для IP злоумышленников.
Установка простая. Для linux.
HTML Code:
apt-get install fail2ban
Правим jail.conf в /etc/fail2ban
HTML Code:
# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = 127.0.0.1 - IP которые будут игнорироваться
bantime  = 600 - время бана в секундах (можно 36000 = 10 часов)
maxretry = 3 - количество не удачных попыток подключения.
Бан SSH по умолчанию включен, но можно изменить максимальное количество не удачных попыток соединения
HTML Code:
maxretry = 6
Включаем SSH DDos
HTML Code:
[ssh-ddos]
enabled = true (false - отключить)
port    = ssh
filter  = sshd-ddos
logpath  = /var/log/auth.log
maxretry = 6
Бан vsftpd либо proftpd (кто чем пользуется)
HTML Code:
[vsftpd]
enabled  = true (false - отключить)
port	 = ftp,ftp-data,ftps,ftps-data
filter   = vsftpd
logpath  = /var/log/vsftpd.log
# or overwrite it in jails.local to be
# logpath = /var/log/auth.log
# if you want to rely on PAM failed login attempts
# vsftpd's failregex should match both of those formats
maxretry = 6

[proftpd]
enabled  = true (false - отключить)
port	 = ftp,ftp-data,ftps,ftps-data
filter   = proftpd
logpath  = /var/log/proftpd/proftpd.log
maxretry = 6
Бан Mail servers
HTML Code:
[postfix]
enabled  = true (false - отключить)
port	 = smtp,ssmtp
filter   = postfix
logpath  = /var/log/mail.log

[couriersmtp]
enabled  = true (false - отключить)
port	 = smtp,ssmtp
filter   = couriersmtp
logpath  = /var/log/mail.log
Рестарт fail2ban
HTML Code:
/etc/init.d/fail2ban restart
Логи fail2ban находятся в /var/log/fail2ban.log.
Если Вы используете правила iptables для fail2ban, в логах будут ошибки:
HTML Code:
2011-11-03 15:36:18,402 fail2ban.jail   : INFO   Jail 'ssh-ddos' started
2011-11-03 15:36:18,410 fail2ban.jail   : INFO   Jail 'ssh' started
2011-11-03 15:51:41,522 fail2ban.actions.action: ERROR  iptables -D INPUT -p tcp -m multiport --dports ssh -j fail2ban-ssh-ddos
iptables -F fail2ban-ssh-ddos
iptables -X fail2ban-ssh-ddos returned 100
2011-11-03 15:51:41,523 fail2ban.jail   : INFO   Jail 'ssh-ddos' stopped
2011-11-03 15:51:42,450 fail2ban.actions.action: ERROR  iptables -D INPUT -p tcp -m multiport --dports ssh -j fail2ban-ssh
iptables -F fail2ban-ssh
iptables -X fail2ban-ssh returned 100
Фиксим эти ошибки.
Открываем /usr/bin/fail2ban-client. Находим:
HTML Code:
beautifier.setInputCmd(c)
и выше добавляем строку:
HTML Code:
time.sleep(0.1)
Должно выглядеть примерно так:
HTML Code:
    def __processCmd(self, cmd, showRet = True):
        beautifier = Beautifier()
        for c in cmd:
            time.sleep(0.1)
            beautifier.setInputCmd(c)
После рестарт fail2ban:
HTML Code:
/etc/init.d/fail2ban restart
Смотрим логи теперь, в котором уже есть заблокированные IP :
HTML Code:
2011-10-30 03:08:50,185 fail2ban.jail   : INFO   Jail 'vsftpd' stopped
2011-10-30 03:08:51,091 fail2ban.jail   : INFO   Jail 'apache-noscript' stopped
2011-10-30 03:08:51,293 fail2ban.jail   : INFO   Jail 'ssh-ddos' stopped
2011-10-30 03:08:51,402 fail2ban.jail   : INFO   Jail 'ssh' stopped
2011-10-30 03:08:51,500 fail2ban.jail   : INFO   Jail 'named-refused-tcp' stopped
2011-10-30 03:08:51,501 fail2ban.server : INFO   Exiting Fail2ban
2011-10-30 03:08:52,258 fail2ban.server : INFO   Changed logging target to /var/log/fail2ban.log for Fail2ban v0.8.4-SVN
2011-10-30 03:08:52,358 fail2ban.jail   : INFO   Creating new jail 'apache-noscript'
2011-10-30 03:08:52,359 fail2ban.jail   : INFO   Jail 'apache-noscript' uses poller
2011-10-30 03:08:52,470 fail2ban.filter : INFO   Added logfile = /var/log/apache2/error.log
2011-10-30 03:08:52,570 fail2ban.filter : INFO   Set maxRetry = 250
2011-10-30 03:08:52,873 fail2ban.filter : INFO   Set findtime = 600
2011-10-30 03:08:52,973 fail2ban.actions: INFO   Set banTime = 36000
2011-10-30 03:08:54,184 fail2ban.jail   : INFO   Creating new jail 'vsftpd'
2011-10-30 03:08:54,184 fail2ban.jail   : INFO   Jail 'vsftpd' uses poller
2011-10-30 03:08:54,285 fail2ban.filter : INFO   Added logfile = /var/log/vsftpd.log
2011-10-30 03:08:54,386 fail2ban.filter : INFO   Set maxRetry = 6
2011-10-30 03:08:54,688 fail2ban.filter : INFO   Set findtime = 600
2011-10-30 03:08:54,789 fail2ban.actions: INFO   Set banTime = 36000
2011-10-30 03:08:55,999 fail2ban.jail   : INFO   Creating new jail 'ssh-ddos'
2011-10-30 03:08:55,999 fail2ban.jail   : INFO   Jail 'ssh-ddos' uses poller
2011-10-30 03:08:56,101 fail2ban.filter : INFO   Added logfile = /var/log/auth.log
2011-10-30 03:08:56,202 fail2ban.filter : INFO   Set maxRetry = 6
2011-10-30 03:08:56,504 fail2ban.filter : INFO   Set findtime = 600
2011-11-01 03:49:47,223 fail2ban.actions: WARNING [vsftpd] Ban 64.59.72.176
2011-11-01 06:40:54,290 fail2ban.actions: WARNING [ssh] Ban 58.62.173.159
2011-11-02 02:17:28,560 fail2ban.actions: WARNING [ssh] Ban 87.204.34.123
2011-11-02 06:02:45,437 fail2ban.actions: WARNING [ssh] Ban 180.139.138.178
2011-11-02 11:10:45,424 fail2ban.actions: WARNING [ssh] Ban 196.22.160.48
2011-11-02 20:20:45,118 fail2ban.actions: WARNING [ssh] Ban 184.164.158.82
2011-11-03 08:35:48,926 fail2ban.actions: WARNING [ssh] Ban 174.46.89.102
2011-11-03 11:22:25,276 fail2ban.actions: WARNING [ssh] Ban 122.72.19.96
Все работает. Актуально для версии iptables v1.4.8 и Fail2ban v0.8.4-SVN.
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
netwind
Гуру
 
netwind's Avatar
Default
0

Quote:
Originally Posted by ERT View Post
Как-то не доходили руки заглянуть в логи ауентификации. Недавно зашел, посмотрел и увидел огромное количество желающих попасть "ко мне в гости без приглашения".
Конечно, смотреть в логи полезно, но выводы, которые ты сделал их этого лога для большинства арендующих сервера и vps совершенно непрактичны.
Ну долбят и что? у тебя там разве простые пароли?
 
 
ERT
Знаток
Default
0

Quote:
Originally Posted by netwind View Post
Ну долбят и что? у тебя там разве простые пароли?
А что в этом хорошего? Поставь время бана на сутки, на неделю, чтобы вообще отбить желание "долбить". Да еще коннект по SSH настрой, MaxAuthTries 2, чтобы сбрасывало после второй, не правильной, попытки ввода пароля. А так же в iptables добавь правила для sshguard и защиту от ddos атак:
HTML Code:
## Создание цепочки правил sshguard
# Максимум 2 новых запроса в минуту для одного ip
$IPT -N sshguard
# Вкл. лог по желанию
$IPT -A sshguard -m state --state NEW -m recent --name SSH --rcheck --seconds 60 --hitcount 2 -j LOG --log-prefix "SSH-shield:"
$IPT -A sshguard -m state --state NEW -m recent --name SSH --update --seconds 60 --hitcount 2 -j DROP
$IPT -A sshguard -m state --state NEW -m recent --name SSH --set -j ACCEPT
$IPT -A sshguard -j ACCEPT
## Применение для трафика ssh цепочку sshguard
$IPT -A INPUT -p tcp --dport 22 -j sshguard
# Защита от DDOS
$IPT -I INPUT 1 -p tcp -m tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 15 --connlimit-mask 32 -j DROP
$IPT -A INPUT -s х.х.х.х -j DROP
$IPT -A INPUT -p tcp -m tcp --dport 80 -m string --string "GET / HTTP" --algo kmp --to 1024 -m recent --set --name httpddos --rsource 
$IPT -A INPUT -p tcp -m tcp --dport 80 -m string --string "GET / HTTP" --algo kmp --to 1024 -m recent --update --seconds 10 --hitcount 2 --name httpddos --rsource -j DROP
Лишняя защита никогда не помешает. Что плохого в дополнительной безопасности сервера?
 
 
netwind
Гуру
 
netwind's Avatar
Default
0

Quote:
Originally Posted by ERT View Post
Лишняя защита никогда не помешает. Что плохого в дополнительной безопасности сервера?
это непрактично. к тому же однажды помешает зайти тебе на сервер не вспомнив пароль за 3 попытки, то есть вообще убийственно.
 
 
ERT
Знаток
Default
1

Как защита сервера может быть не практичной? Защита от DDos'a - это не практично или защита ssh от Bruteforce? Защита почтового сервиса - это тоже не практично? Как однажды тебе это может помешать зайти на сервер не вспомнив пароль?
Quote:
ignoreip = 127.0.0.1 - IP которые будут игнорироваться
netwind, я Вас прошу, прежде чем комментировать читайте все полностью.
P.S. Я никому, ничего, не навязываю. Сервер положат однозначно, если кому-то очень нужно будет. Но добавив некоторые правила в iptables и установив дополнительную защиту - вы избавитесь от "баловства" всяких недорослей, которые будут мешать нормальной работе вашего веб сервера.
 
 
netwind
Гуру
 
netwind's Avatar
Default
0

Quote:
Originally Posted by ERT View Post
Как однажды тебе это может помешать зайти на сервер не вспомнив пароль?
ну вот пытаешься ты удаленно через GPRS что-то починить находясь в поезде в совершенно новом месте да еще и забыв пароль. В принципе с десятого раза ты бы его вспомнил и вошел бы, но скрипты уже забанили этого gprs-провайдера.
Quote:
Originally Posted by ERT View Post
"баловства" всяких недорослей, которые будут мешать нормальной работе вашего веб сервера.
так и без защиты мне не мешают.
 
 
ERT
Знаток
Default
0

А Вы все пароли в голове держите? Или у Вас он везде один и тот же? Лично я в txt файле, на флешке, на случай если забуду (у меня их просто дофига).
Я думаю, что серьезные работы с сервером, находясь в поезде, делать не стоит.
Эта дискуссия может длиться до бесконечности. Вы свое мнение выразили - я свое. Остальные пусть решают - стоит им дополнительно защитить свой сервер или нет.
P.S. Два, последних вопроса. У вас есть свои, личные, серьезные проекты? Вас ddos'или?
Меня да.
 
 
хрюк
Гость
Default

Quote:
Originally Posted by ERT View Post
Лично я в txt файле, на флешке
Спасибо, записал ))
 
 
ERT
Знаток
Default
0

Я понял. Флешку не потеряйте.
А комментарий крутой. Это все? А Вы вообще поняли о чем идет речь?
По поводу хранения паролей.
У меня три сервера в инете, причем ни где-то там арендованных, а лично моих, которые я сам же и собирал. У root и пользователей разные пароли + порядка 15 баз банных, в которых пароли сгенерированы.

Last edited by ERT : 11-03-2011 at 10:58 PM.
 
 
netwind
Гуру
 
netwind's Avatar
Default
0

Quote:
Originally Posted by ERT View Post
Вы свое мнение выразили - я свое.
Ok. На этом и остановимся. И никаких P.S.
 

Tags
fail2ban, ftp, ssh


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 02:15 AM.


Powered by vBulletin® Version zEdition
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.