Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.08.2010, 08:15   #11
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
Разъясните пожалуйста, получается что защита от частого "F5" лучше всего реализовать на онлайн таблице сессий и/или куках?
Вам уже Johnatan достаточно неплохо описал что надо делать. Механизм следующий:
- на странице на событие onload вешаем процедуру обновления он-лайн таблицы, в которую вносим id-юзера, время и ip.
- с таблицей работаем следующим образом: если пользователь есть в ней (он-лайн), то обновляем время, если нет, то добавляем. Через определённое время чистим таблицу от старых пользователей, которые давно не обновлялись.
- если обновление происходит чаще чем в 5 сек., то делаем пользователю предупреждение.
- чтобы не было двойных подключений при старте работе на сайте (например, при авторизации) проверяем есть ли пользователь он-лайн. Если есть, то работать не разрешаем.
Виталий Желтяков вне форума Ответить с цитированием
Старый 24.08.2010, 20:54   #12
maximka787
 
Регистрация: 08.11.2007
Сообщений: 7
По умолчанию

[QUOTE=Через определённое время чистим таблицу от старых пользователей[/QUOTE]
А как чистим? cron-ом? каждые 5 минут вызывать?


[QUOTE=
- чтобы не было двойных подключений при старте работе на сайте (например, при авторизации) проверяем есть ли пользователь он-лайн. Если есть, то работать не разрешаем.[/QUOTE]
Поясни пожалуйста, а что бывают двойные подключения?)
я программер не с таким стажем, но про повторное подключение не слышал. На одного юзера одна сессия вроде как.
maximka787 вне форума Ответить с цитированием
Старый 25.08.2010, 07:08   #13
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
А как чистим? cron-ом? каждые 5 минут вызывать?
Можно cron-ом. Я лично при внесении обновления времени удаляю старые записи которым более 5 минут.
Цитата:
Поясни пожалуйста, а что бывают двойные подключения?)
Это одна из лазеек, которой очень часто пользуются спамеры. Суть в следующем:
- Запускаем один броузер и авторизуемся.
- Запускаем второй броузер и тоже авторизуемся под тем же самым логином.
- В итоге получаем два клиента, которые работают от одного логина.
Виталий Желтяков вне форума Ответить с цитированием
Старый 25.08.2010, 11:50   #14
maximka787
 
Регистрация: 08.11.2007
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Виталий Желтяков Посмотреть сообщение
Это одна из лазеек, которой очень часто пользуются спамеры. Суть в следующем:
- Запускаем один броузер и авторизуемся.
- Запускаем второй броузер и тоже авторизуемся под тем же самым логином.
- В итоге получаем два клиента, которые работают от одного логина.
А с этим можно/нужно бороться?, или мало вероятно что так будут делать
maximka787 вне форума Ответить с цитированием
Старый 25.08.2010, 15:25   #15
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

У меня каждый запрос авторизированного юзверя (любого) делает запрос к базе, если есть записи старше 5 минут - почикать их. Запрос делается не каждый раз, а с вероятностью 50%. И не нужно крон напрягать.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 25.08.2010, 21:36   #16
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
А с этим можно/нужно бороться?, или мало вероятно что так будут делать
Можно не бороться и жить спокойно до появления на вашем сайте спамера или хакера. Ваше дело.
Виталий Желтяков вне форума Ответить с цитированием
Старый 25.08.2010, 22:40   #17
pumbo
Новичок
Джуниор
 
Регистрация: 25.08.2010
Сообщений: 3
По умолчанию

1. Использовать сессии(куки) - легко обходится
2. Записывать в БД IP пользователей и проверять, чтобы слишком много запросов не шло за определенный промежуток времени.

Второй вариант обычно используют для защиты от парсинга.
А для защиты от флуда (DDOS) не поможет, т.к. ддосить могут сразу с нескольких тысяч компьютеров.
pumbo вне форума Ответить с цитированием
Старый 25.08.2010, 22:43   #18
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от pumbo Посмотреть сообщение
А для защиты от флуда (DDOS) не поможет, т.к. ддосить могут сразу с нескольких тысяч компьютеров.
А у меня белый автомобиль!

Hint: найдите слово ddos здесь до вашего появления и получите приз. Отличная попытка сделать умное лицо.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 25.08.2010, 23:07   #19
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

"против лома нет приема" (с) народная мудрость

На 100% защититься от ДДоС - абсолютно реально и легко. Достаточно вытянуть из сетевухи сетевой кабель.

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

Защищаться можно долго, все зависит от Ваших возможностей.

П.С. Защита от ДДОСа - меньше всего касается темы о РНР.
SkyM@n вне форума Ответить с цитированием
Старый 25.08.2010, 23:30   #20
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Тем вообще не про DDoS. Зачем оффтопить?
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP test.php?a=1&b=1 не работает передача параметров бедный_студент PHP 5 25.08.2010 23:08
Защита кода Php Shyt Свободное общение 27 31.07.2010 10:13
Sorry за флуд,просто очень помощь нужна... gluk9090 Microsoft Office Access 4 12.05.2008 00:53
реализовать в локалке пинг флуд Небесный Работа с сетью в Delphi 15 02.11.2007 04:07