M'RCON2 System (Simple y sencillo) -
MatrixenXD - 26.07.2015
Hola, hoy hace poquito buscaba un sistema de RCON-2 y como solo encontraba sistemas de administraciуn con sistema de segunda rcon me puse a crear uno yo solo ya que buscaba uno a parte.
M'RCON2 System
Este sistema trae una seguridad para su servidor, sabemos que hay Hacks que pueden llegar a violar la contraseсa Rcon de su servidor y con eso una vez que se obtenga con los comandos de Rcon se puede modificar y hasta apagar el servidor.
Este sistema trae dos protecciones:
-Sistema de segunda RCON
--Al iniciar con la Rcon al instante aparece un dialogo (INPUT) en el cual se debe ingresar la segunda rcon que es solamente modificable desde el cуdigo, al fallar 3 veces en el ingreso de la RCON2 el mismo usuario se llevarб un Ban.
-Sistema de intentos en la primera RCON
--Al fallar 3 veces con la Rcon el mismo usuario se llevarб un ban
Es un sistema sencillo pero a medida lo irй mejorando.
El sistema no requiere ningъn include para su compilaciуn
Descarga:
Mediafire: Source
Mediafire: Compilaciуn
Pastebin: Source
Creditos:
Yo :3
+ la gente que me enseсo este lenguaje :3
~Saludos
Re: M'RCON2 System (Simple y sencillo) -
SickAttack - 26.07.2015
Un link a pastebin?
Respuesta: M'RCON2 System (Simple y sencillo) -
Johansitho - 26.07.2015
Se ve bueno, Lo implementarй a mi GameMode, Claro, Respetando los debidos crйditos.
Saludos.
Respuesta: Re: M'RCON2 System (Simple y sencillo) -
MatrixenXD - 26.07.2015
Quote:
Originally Posted by SickAttack
Un link a pastebin?
|
Aquн
~Saludos.
Re: Respuesta: Re: M'RCON2 System (Simple y sencillo) -
SickAttack - 26.07.2015
Quote:
Originally Posted by MatrixenXD
|
Como esta el sistema no va ha funcionar correctamente. En "!success", no estas validando IP's. Y hay que usar "break" cuando es necesario.
Mira aquн y veras porque:
Versiуn con un jugador con la misma IP:
pawn Код:
// [ DEVELOPMENT GAMEMODE ]
// INCLUDES:
#include <a_samp>
#include <foreach>
// MAIN:
main()
{
print("Development Mode: rcon_protection.amx");
}
// CALLBACKS:
public OnGameModeInit()
{
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
new playerid = -1;
foreach(new i: Player)
{
if(strcmp(ip, GetPlayerIP(i), true) == 0)
{
playerid = i;
break;
}
}
if(playerid != -1)
{
if(success)
{
if(IsPlayerAdmin(playerid)) // Change this for your admin system's condition that validates a player's admin level possession.
{
printf("[RCON] %s (%d) has logged-in.", PlayerName(playerid), playerid);
}
else
{
printf("[RCON] %s (%d) was kicked from the server (Bad RCON Login).", PlayerName(playerid), playerid);
Kick(playerid);
}
}
}
return 1;
}
// FUNCTIONS:
stock PlayerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
return name;
}
stock GetPlayerIP(playerid)
{
new ip[16];
GetPlayerIp(playerid, ip, sizeof(ip));
return ip;
}
Versiуn para 3 jugadores con la misma IP:
pawn Код:
// [ DEVELOPMENT GAMEMODE ]
// INCLUDES:
#include <a_samp>
#include <foreach>
// MAIN:
main()
{
print("Development Mode: rcon_protection_multiple.amx");
}
// CALLBACKS:
public OnGameModeInit()
{
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
new playerid[3] = -1, count;
foreach(new i: Player)
{
if(strcmp(ip, GetPlayerIP(i), true) == 0)
{
playerid[count] = i;
count ++;
if(count == 3) break;
}
}
for(new i = 0; i < 3; i ++)
{
if(playerid[i] != -1)
{
if(success)
{
if(IsPlayerAdmin(playerid[i])) // Change this for your admin system's condition that validates a player's admin level possession.
{
printf("[RCON] %s (%d) has logged-in.", PlayerName(playerid[i]), playerid[i]);
}
else
{
printf("[RCON] %s (%d) was kicked from the server (Bad RCON Login).", PlayerName(playerid[i]), playerid[i]);
Kick(playerid[i]);
}
}
}
}
return 1;
}
// FUNCTIONS:
stock PlayerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
return name;
}
stock GetPlayerIP(playerid)
{
new ip[16];
GetPlayerIp(playerid, ip, sizeof(ip));
return ip;
}
Respuesta: M'RCON2 System (Simple y sencillo) -
MatrixenXD - 27.07.2015
Pos a mi sv me funcionу, lol.
Pero si tu lo dices Sick, lo agregarй para la v0.2 con tus creditos.
Re: M'RCON2 System (Simple y sencillo) -
elpana27 - 21.07.2016
me funciono de maravilla gracias brother
Re: M'RCON2 System (Simple y sencillo) -
Right - 22.07.2016
No le veo la utilidad. Esto es algo que se ve implementado en muchos servidores y Gamemodes liberados, no es nuevo.
Sin mencionar que los diбlogos se pueden "esconder" o "evitar" con nuestro querido s*beit. De nada sirve mostrar un diбlogo como mйtodo de verificaciуn si este puede ser no respondido.
No nos olvidemos de que si el servidor tiene RCON remota habilitada, el usuario podrнa usar RCON desde una consola para йstos fines. La mejor soluciуn es evitar que el usuario ingrese a RCON, de alguna forma.