Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Важная информация

Перед тем как создать тему или задать вопрос, ознакомьтесь с данной темой, там собраны наиболее распространенные уязвимости и способы устранения.
Так же не поленитесь воспользоваться поиском, вполне возможно, что ваш вопрос уже поднимался на форуме.
При создании новой темы уделите внимание ее названию, оно должно кратко описывать суть вашего вопроса/проблемы. Все вновь созданные темы с названиями "Помогите", "Объясните", "Подскажите" и т.д. будут удалены, а их авторы наказаны.
2 страниц V   1 2

спам на сервере

Статус пользователя Energy
сообщение 28.4.2017, 7:30
Сообщение #21
Иконка группы

Стаж: 11 лет

Сообщений: 2839
Благодарности: выкл.

Код:
#include <amxmodx>
#define PLUGIN "Another Spambot Blocker"
#define VERSION "1.0"
#define AUTHOR "Metal Messiah"

new bool:can_say[33]
new join_time[33]
new spamcount[33]

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_clcmd("say","check_say")
}

public client_authorized(id)
{
join_time[id]=get_systime(0);
spamcount[id]=0;

new s_hlproxy1[32],s_hlproxy2[32],s_hlproxy3[32]
get_user_info(id, "_ip", s_hlproxy1, charsmax(s_hlproxy1))
get_user_info(id, "_cmd", s_hlproxy2, charsmax(s_hlproxy2))
get_user_info(id, "-cmd", s_hlproxy3, charsmax(s_hlproxy3))
if (!equal(s_hlproxy1, "") || !equal(s_hlproxy2, "") || !equal(s_hlproxy3, ""))
{
new uip[17],userauthid[32],username[32],time[32];
get_user_ip(id,uip,16,1);
get_user_authid(id, userauthid, 31);
get_user_name(id, username, 31);
format_time(time, sizeof(time) - 1, "%Y-%m-%d %H:%M:%S");
server_cmd("addip 60.0 %s",uip)
//log_to_file("hlproxy.log","%s %s %s %s %s %s %s",time,uip,userauthid,username,s_hlproxy1,s_hlproxy2,s_hlproxy3);
//amx_banip
//server_cmd("kick #%d NoHLProxyOnTheServer", get_user_userid(id))
}
if (get_user_flags(id) & ADMIN_LEVEL_H)
{
can_say[id]=true;
}
return PLUGIN_CONTINUE
}

public client_disconnect(id)
{
can_say[id]=false;
join_time[id]=0;
spamcount[id]=0;
}

public check_say(id)
{
//проверка времени разовая, булевые теоретически быстрее работают...
if (!can_say[id]) if((get_systime(0)-join_time[id]) > 30) can_say[id]=true;

//если писать можно
if(can_say[id])
{ //проверяем контент
new args[64];
read_args(args, 63);
remove_quotes(args);

if (
(contain(args, "1slot") != -1) || (contain(args, "Free Vip") != -1) ||
(contain(args, "Free Admin") != -1) || (contain(args, "Connect ") != -1) ||
(contain(args, "New IP") != -1) || (contain(args, "CoNNect ") != -1) ||
(contain(args, "Free") != -1) || (contain(args, " FREE ") != -1) ||
(contain(args, "3AXODITE") != -1) || (contain(args, "3AXODUTE") != -1) )
{
client_print(id,print_chat,"[ANTISPAM] Suge pula!");
spamcount[id]++;
if (spamcount[id]>2)
{
client_cmd(id,"bind b ^"buy^"");
client_cmd(id,"bind o ^"buyequip^"");

new uip[17],userauthid[32],username[32],time[32];
get_user_ip(id,uip,16,1);
get_user_authid(id, userauthid, 31);
get_user_name(id, username, 31);
format_time(time, sizeof(time) - 1, "%Y-%m-%d %H:%M:%S");
log_to_file("spambot_clear.log","%s %s %s %s |%s",time,uip,userauthid,username,args);

if (spamcount[id]>5)
{
server_cmd("kick #%d SPAMER", get_user_userid(id))
server_cmd("addip %f %s;wait;writeip",1440,uip)
}
return PLUGIN_HANDLED;
}
}
return PLUGIN_CONTINUE;
} else
{
new args[64];
read_args(args, 63);
remove_quotes(args);
new uip[17],userauthid[32],username[32],time[32];
get_user_ip(id,uip,16,1);
get_user_authid(id, userauthid, 31);
get_user_name(id, username, 31);
format_time(time, sizeof(time) - 1, "%Y-%m-%d %H:%M:%S");
//ТУТ НЕ БАНИТЬ НИ В КОЕМ СЛУЧАЕ! часто попадают vsem privet
log_to_file("spambot.log","%s %s %s %s |%s",time,uip,userauthid,username,args);
client_print(id,print_chat,"[ANTISPAM] 30 SECONDS OF SILENCE!")
return PLUGIN_HANDLED;
}
}



Отредактировал: Energy, - 28.4.2017, 7:30
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csparena
сообщение 28.4.2017, 8:01
Сообщение #22


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

DAL ты мне не ответил

Цитата(daL @ 27.4.2017, 23:50) *
csparena,
то что вы мне дали для ReHLDS,правильно?

нет.. без разницы.. поставь увидишь не бойся... он заблочить все как надо
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: