 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Как защитить сервер от атак ботами?
| |
| AVANGARD | Дата: Вторник, 01.04.2008, 06:03 | Сообщение # 1 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 197
Награды: 3
Город: Омск
Репутация: 51
Замечания: 0%
Статус: 
| Вчера просматривая логи сервера наткнулся на такой факт как атака ботами! 10 пользователей с разными никами с одного IP зашли в одно и то же время... Как можно от этого защититься?
Респект пацанам из SAMP! наш сайт http://www.joylife.ru/ [FS] ButtonEditor [GM] BattleField2[changemap] В разработке: [FS] NEW_Alkatras
|
| |
|
|
| RockStarGamer | Дата: Вторник, 01.04.2008, 06:05 | Сообщение # 2 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1604
Награды: 1
Город: New York city
Репутация: 60
Замечания: 0%
Статус: 
| Пинг-контроль, боты будут кикатся за свой большой пинг или просто добавить имена ботов чёрный список, забанив их по нику
|
| |
|
|
| AVANGARD | Дата: Вторник, 01.04.2008, 06:40 | Сообщение # 3 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 197
Награды: 3
Город: Омск
Репутация: 51
Замечания: 0%
Статус: 
| Хы нет нужно наверное что то типа запрета на множественный вход сиодного IP... займусь таковым скриптом!
Респект пацанам из SAMP! наш сайт http://www.joylife.ru/ [FS] ButtonEditor [GM] BattleField2[changemap] В разработке: [FS] NEW_Alkatras
|
| |
|
|
| RockStarGamer | Дата: Вторник, 01.04.2008, 06:49 | Сообщение # 4 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1604
Награды: 1
Город: New York city
Репутация: 60
Замечания: 0%
Статус: 
| А смысл ? ники ботов не меняются
|
| |
|
|
| DeXt3R | Дата: Вторник, 01.04.2008, 13:41 | Сообщение # 5 |
|
Местный
Группа:
Продвинутые
Сообщений: 748
Награды: 1
Город: hz
Репутация: 14
Замечания: 0%
Статус: 
| Боты пролетают по пинг лимиту. А на серверах русхоста еще и антибот стоит ;]
|
| |
|
|
| AVANGARD | Дата: Среда, 02.04.2008, 05:13 | Сообщение # 6 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 197
Награды: 3
Город: Омск
Репутация: 51
Замечания: 0%
Статус: 
| Сделаю свой антибот!
Респект пацанам из SAMP! наш сайт http://www.joylife.ru/ [FS] ButtonEditor [GM] BattleField2[changemap] В разработке: [FS] NEW_Alkatras
|
| |
|
|
| DarkByte | Дата: Среда, 02.04.2008, 05:49 | Сообщение # 7 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1577
Награды: 7
Город: Челябинск
Репутация: 182
Замечания: 0%
Статус: 
| Quote (AVANGARD) Хы нет нужно наверное что то типа запрета на множественный вход сиодного IP... займусь таковым скриптом! Quote (AVANGARD) Сделаю свой антибот! :) Зачем изобретать велосепед? Поищи на форуме, я выкладывал скрипт собственного производства, банит тех кто заходит с одого айпи >1 раза
MusicSig vkontakte - расширение функционала ВКонтакте для Google Chrome
|
| |
|
|
| XAOC | Дата: Среда, 02.04.2008, 07:13 | Сообщение # 8 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| мой UAS так-же отлично справляется с ботами)
|
| |
|
|
| EKup | Дата: Среда, 02.04.2008, 09:06 | Сообщение # 9 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 75
Награды: 2
Город: Ульяновск
Репутация: 10
Замечания: 0%
Статус: 
| В начало OnPlayerConnect(playerid): Code new name[30], ip2[30], ip[30], tmp[256]; const MaxPlayersWith_1_IP = 2; GetPlayerIp(playerid, ip2, sizeof(ip2)); GetPlayerName(playerid, name, sizeof(name)); new numIPs = 0; for(new i=0; i<MAX_PLAYERS; i++) if(IsPlayerConnected(i) && (i!=playerid)) { GetPlayerIp(i, ip, sizeof(ip)); if(strcmp(ip, ip2) == 0) { numIPs++; if(numIPs >= MaxPlayersWith_1_IP) { format(tmp, sizeof(tmp), " Игрок %s, был забанен, тк его ип(%s) совпал с ип %d игроков на сервере. Подозрение на ботов", name, ip2,MaxPlayersWith_1_IP); SendClientMessageToAll(COLOR_ORANGE, tmp); BanEx(playerid, " Подозрение на атаку ботов"); return 0; } } } в данном случае с 1 ип разрешено играть максимум двум игрокам. Если надо сделать больше или меньше - меняй MaxPlayersWith_1_IP
Текущая версия ERPG GM: 2.7.0 RC1(03.10.2009) http://3val.ru/games/samp/changelistServ.php
Сообщение отредактировал EKup - Среда, 02.04.2008, 09:07 |
| |
|
|
| dura4ok | Дата: Среда, 02.04.2008, 17:23 | Сообщение # 10 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 357
Награды: 1
Город: Cеверодонецк
Репутация: 24
Замечания: 0%
Статус: 
| Да не парьтесь))) прога для запуска ботов одна. в ней 16 статических ников. просто пишется функция чека имени и кика и вставляется в OnPlayerConnect. боты сами по себе не страшны, только чат засоряют. Добавлено (02.04.2008, 11:21) --------------------------------------------- http://forum.sa-mp.com/index.php?topic=49525.msg364654#msg364654 не без моего участия но у себя я немного по-другому сделал, еще первый вариант. только если вас бомбят из подсетки и вы не хотите заглушить всю подсеть, смените Ban на Kick Добавлено (02.04.2008, 11:36) --------------------------------------------- и еще. чтобы чат не засирало надписями типа "Carl зашел на сервер" "Carl покинул сервер" - введите глобальную переменную new isbot[MAX_PLAYERS]; - в public CheckName(playerid) после идентификации бота добавьте isbot[playerid] = 1; - в OnPlayerConnect в начале будет CheckName(playerid) за ним добавьте if(isbot[playerid] ==1) {} else {содержимое OnPlayerConnect} - в OnPlayerDisconnect - if(isbot[playerid] ==1) {isbot[playerid] = 0;} else {содержимое OnPlayerDisconnect} примерно так. написал по памяти, если что, могу посмотреть у себя и привести точный вариант. Добавлено (02.04.2008, 17:23) --------------------------------------------- чуть упростил сейчас и вотЪ вроде бы самое оно. вставляйте в свой мод и больше их не увидите))) Code forward CheckName(playerid); Code new isbot[MAX_PLAYERS]; в OnPlayerConnect(playerid) Code isbot[playerid] = 0; CheckName(playerid); if(isbot[playerid] == 0) { содержимое public OnPlayerConnect(playerid) НЕ включая return 1, который в самом низу }
в OnPlayerDisconnect(playerid,reason) Code if(isbot[playerid] == 0) { содержимое public OnPlayerDisconnect(playerid,reason) } внизу или где хотите)) Code new IllegalNames[16][32] = { "Carl", "Rocky", "Pepe", "Arnoldo", "SgtPepper", "Pepsi", "Pepno", "Azucar", "Vino_Toro", "Zoquete", "Pacman", "Batman", "AquilesBrinco", "Manfrey", "Sopapeala", "Papirola" };
public CheckName(playerid) { new PlayerName[24]; GetPlayerName(playerid, PlayerName, sizeof(PlayerName)); for(new names = 0; names < sizeof(IllegalNames); names++) { if(strcmp(PlayerName, IllegalNames[names], true) == 0) { isbot[playerid] = 1; Kick(playerid); } } } в окне сервера появляются сообщения вида [join] Carl has joined the server [part] Carl has left the server в игровом чате ессно ничего не появляется enjoy
Сообщение отредактировал dura4ok - Среда, 02.04.2008, 17:33 |
| |
|
|
| DarkByte | Дата: Среда, 02.04.2008, 19:07 | Сообщение # 11 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1577
Награды: 7
Город: Челябинск
Репутация: 182
Замечания: 0%
Статус: 
| Quote (dura4ok) Да не парьтесь))) прога для запуска ботов одна. в ней 16 статических ников. просто пишется функция чека имени и кика и вставляется в OnPlayerConnect. боты сами по себе не страшны, только чат засоряют. Только вот для того чтобы изменить ники ботов достаточно немного умения работы с хексредактором... или проще взять исходные коды этих ботов, или ЛЮБЫХ других, подчёркиваю, потому что это не единственные боты для сампа которые заходят на сервер толпой
MusicSig vkontakte - расширение функционала ВКонтакте для Google Chrome
|
| |
|
|
| dura4ok | Дата: Четверг, 03.04.2008, 10:04 | Сообщение # 12 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 357
Награды: 1
Город: Cеверодонецк
Репутация: 24
Замечания: 0%
Статус: 
| DarkByte, Quote Только вот для того чтобы изменить ники ботов достаточно немного умения работы с хексредактором... или проще взять исходные коды этих ботов, или ЛЮБЫХ других, подчёркиваю, потому что это не единственные боты для сампа которые заходят на сервер толпой 99% использующих эту программу - редкие алени, соображалки не хватит) исходники? а где взять, может ты знаешь? я не видел. конечно, может и есть другие программы, смотришь лог, добиваешь имен. минутное дело.
|
| |
|
|
| DarkByte | Дата: Четверг, 03.04.2008, 13:21 | Сообщение # 13 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1577
Награды: 7
Город: Челябинск
Репутация: 182
Замечания: 0%
Статус: 
| Quote (dura4ok) 99% использующих эту программу - редкие алени, соображалки не хватит) исходники? а где взять, может ты знаешь? я не видел. конечно, может и есть другие программы, смотришь лог, добиваешь имен. минутное дело. cool А если ники состоят из случайного набора символов? А если ник бота совпадёт с чьим то ником и игрок попадёт в баню... Исходники появились незадолго после выхода самой проги, мало кто об этом знал, но недавно видел на каком то сайте валялся
MusicSig vkontakte - расширение функционала ВКонтакте для Google Chrome
|
| |
|
|
| dura4ok | Дата: Четверг, 03.04.2008, 16:20 | Сообщение # 14 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 357
Награды: 1
Город: Cеверодонецк
Репутация: 24
Замечания: 0%
Статус: 
| DarkByte, такими пока меня не бомбили, но это уже конечно будет глобальная трабла.
|
| |
|
|
| zTron | Дата: Четверг, 03.04.2008, 16:40 | Сообщение # 15 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 186
Награды: 4
Город: Харьков
Репутация: 39
Замечания: 20%
Статус: 
| Проверено на папиролах. Простенько и со вкусом. F.S. //============================================================================ #pragma tabsize 0 #include <a_samp> #include <a_players> #define COLOR_RED 0xAA3333AA public antibot() { new plida[16]; new plnamea[128]; new stringg[128]; for(new i=0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(GetPlayerPing(i) >= 60000) { GetPlayerIp(i, plida, sizeof(plida)); GetPlayerName(i,plnamea,sizeof(plnamea)); format(stringg,sizeof(stringg),"Detected possible bot from %s, %s - kicked.",plida,plnamea); SendClientMessageToAll(COLOR_RED,stringg); print(stringg); Kick(i); } } } } public OnFilterScriptInit() { SetTimer("antibot",10000,1); } //============================================================================ Каждый в игре проверяется на сверхвысокий пинг еже 10-ти секундно. Если зашкалило - кикает. Зачем сразу банить? Иногда при закидонах сетки,при подключении к серверу у некоторых бывает пинг выше 60000 и через пяток секунд падает до 50-130.
109.86.185.7:7777 ..::TrSB::.. PEN1: S.A.
Сообщение отредактировал zTron - Четверг, 03.04.2008, 16:57 |
| |
|
|
|
 |
|
 | |
| |
|