Jump to content

Mensajes recomendados

¡Bienvenidos colegas de Metin2Zone!

DZyfo4o.png
 

Hoy les presento mi primer tema en el foro, les traigo un proyecto que estoy comenzando a desarrollar el cual llamo "Administrador Total" o por su siglas AT y que sera gratuito para la comunidad. El programa esta realizado desde su raíz completamente por mi, trabaja bajo el lenguaje de objeto pascal y una framework bastante especial e elegante que logre dominar en mis últimos estudios.

Voy a estar subiendo constantemente actualizaciones al tema, con los avances y los nuevos links de descarga. El programa tendrá 2 versiones para usarse ustedes pueden optar por la que crean mas cómoda, paso a comentarles cuales son:

1) El programa consta de 1 solo archivo que sera una librería, si, un .dll el cual se llamara AT.dll este se debe montar como isapi en un servidor IIS (Internet information services) y bueno redirigiendo las paginas como deben obtendrán el programa funcionando en la web.

2) El programa consta de un carpeta "servidor", la cual deben instalar en su dedicado o el servidor que usen para hospedaje web, habilitar el puerto 8028 (80 por servicio web, 28 por las siglas AT) y si esta todo bien instalado ejecutan el .exe que se encuentra en la carpeta servidor, este levantara un servicio y funcionara como servidor sin tener que realizar la tarea compleja de montar un servicio sapi en IIS.

En mi opinión, prefiero por estética y seguridad la opción de montar un servicio ISAPI en IIS. Pero como es una tarea compleja para alguien que nunca monto un isapi en IIS, se puede optar por la salida fácil que también se las brindo.

 

AT - v0.0.1
(Fecha de publicación: Lunes 15 de Enero de 2018)

Spoiler

Esta versión contiene:


- Instalación del sistema:

Un paso a paso en el cual pide que subas el sql a tu base de datos, pongas datos de conexión, usuario maestro, etc.

1) Pide completar datos de acceso al servidor mysql

2) Pide llenar campos para crear una base de datos y su prefijo

3) Una pantalla que muestra si los datos ingresados son correctos y si se pudo establecer conexión, si los permisos son correctos y si se pudo crear la base de datos.

4) Pide completar datos de la cuenta maestra la que tendrá acceso total a todo el sistema.

5) Finaliza la instalación y te lleva al Login.

- Login:

Sistema de login para personal autorizado, da acceso al sistema, se pueden agregar usuarios con diferentes rangos.

- Sistema de usuarios:

Los usuarios sirven para ingresar al sistema de administración, y según el rango tienen acceso a diferentes partes de la administración. Por ahora son cuentas independientes del servidor metin, se puede llegar a pensar en hacer algo diferente.

- Configuración del Sistema:

Se pueden cambiar configuraciones básicas y avanzadas del programa.

Entre ellas como configuración básica, se puede poner el nombre del servidor metin, datos de contacto, tema especial del sistema (hay diferentes logins para las diferentes eventualidades, navidad, año nuevo, etc).....etc y entre las avanzadas pueden volver a configurar el servidor MySql (en caso de alguna modificación), restaurar un punto del sistema gracias a un archivo de backup (por ahora se genera manual, mas adelante se creara un sistema automático y que se pueda configurar un plan), reiniciar sistema (borra TODO y se pone en modo instalación), etc.

- Configuración de Cuentas:

En este apartado se pueden crear cuentas nuevas para ingresar al sistema, asignarles un Rol, crear Roles, Modificar cuentas o Roles ya existentes, etc.
Los roles son los accesos permitidos a ciertas partes del sistema, por ejemplo, un rol de administrador tiene habilitado el acceso a todo, en cambio un rol de soporte técnico, tendrá limitado el acceso a partes de información delicada del servidor de metin. Esto viene por defecto de una forma configurado, pero en este apartado ustedes mismos pueden cambiar los roles y crear nuevos para dejar el acceso personalizado a la forma de trabajo mas eficiente para ustedes.

- Configuracion de un nuevo servidor:

Los roles altos tendrán acceso a configurar un servidor nuevo de metin2 en donde pondrán los datos de acceso al MySql y al dedicado del servidor nuevo que se esta configurando, para que luego este se pueda controlar, editar y realizarle mantenimiento desde todos los menus del sistema.

- Menus:

1) Terminal Control: Se accede a la terminal (consola) del servidor dedicado deseado.
2) Estado en vivo: Marca el estado actual del servidor, consumo de memoria, espacio en el disco, etc. Es una vista general del estado del servidor y desde acá también se puede reiniciar, apagar o encender el servidor.

3) Estadísticas Generales: Es un resumen de la cantidad de cuentas, personajes, administradores (gm), gremions, etc del servidor.
4) Edición & Mantenimiento: en este apartado se encuentran varias opciones entre ellas crear una cuenta, editarla, crear personaje, editarlo, dar gm, dar ban, ver personajes con ban y motivo, habilitar/inhabilitar eventos, logs, habilitar/inhabilitar comandos, trabajar los archivos de la carpeta pack del cliente, trabajar los protos del cliente y servidor, etc


Hay que tener en cuenta que es la primer versión del programa, por lo tanto es sencillo no tiene muchas opciones actualmente, pero día a día sigo agregando cosas y programando nuevos menús, los cuales iré subiendo en nuevas versiones. Se agradece cada granito de arena que aporten con ideas nuevas para el programa y cosas que creen necesarias agregar que faciliten el mantenimiento y control de un servidor desde un solo programa integral.
 

Instalación del Sistema

Método por ISAPI

Spoiler

Requerimientos:

1) Apache 2.2 o superior

2) Servicio IIS 5.1 o superior

IIS 5

El primer paso que vamos a realizar es crear un nuevo directorio virtual:

E7JzxhB.png

Le damos en siguiente:

aZPWnzE.png

En este paso ingresamos el alias o nombre que queremos que tenga el directoria virtual:

vUtn3XW.png

Acá vamos a asignarle el directorio que le corresponde, que en mi caso sera el siguiente:

ftB8oUR.png

En este paso vamos a asignarle los permisos al directorio virtual que acabamos de crear, es obligatorio tener tildado el permiso "execute" como vemos en la siguiente imagen:

NJAgsOS.png

Con esto ya terminamos, deberíamos darle en finalizar y meter en el directorio que le asignaron al principio todos los archivos que se encuentran en la descarga dentro de la carpeta "ISAPI" ojo, no la carpeta que dice "Servidor" esa es para el método fácil y rápido. Una vez que ya copiaron todos los archivos a su directorio en mi caso "E:\adminsitradortotal\" procedemos a darle permisos a esta carpeta click derecho, permisos y buscan que deben haber dos usuarios que se crearon automáticamente con la instalación del directorio virtual que por defecto son:

IUSR_<NombreDelPc> y IWAM_<NombreDelPc> en mi caso serian IUSR_Nicolas-PC y IWAM_Nicolas-PC

a esos dos usuarios les damos control total, todos los permisos y guardan los cambios.

Si todo esta bien configurado ingresan a

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

En mi caso seria
Debes iniciar sesión para ver el contenido del enlace en esta publicación.

y ya pueden empezar a meter mano en el sistema, felicidades montaste un modulo ISAPI!

OJO LA VERSIÓN DE IIS 5 ES LA MAS FÁCIL DE INSTALAR PERO ES UNA VERSIÓN QUE SE VOLVIÓ UN POCO OBSOLETA POR SU ANTIGÜEDAD

divisor.png

IIS 6

Para lo que es la versión 6 de IIS ya se viene un poco mas complicada la situación, en este primer paso lo que haremos sera crear un nuevo grupo de aplicaciones:

s21Pm4E.png

Elegimos un nombre para nuestro nuevo grupo de aplicaciones:

oU5wlTb.png

Luego en las propiedades de nuestro nuevo grupo de aplicaciones en la pestaña de reciclaje o en ingles "Recycling" vamos a destildar la opción de reciclar procesos de trabajo como se ve en la siguiente foto:

NYGOvUP.png

Ahora en la pestaña que le sigue que es la de rendimiento, vamos a desactivar la opción de cerrar los procesos de trabajo después de estar inactiva por X tiempo, como en la imagen:

mZSdOZF.png

En este siguiente paso vamos a hacer como en la versión anterior, crear un nuevo directorio virtual ya sea en la web que viene por defecto o cualquier otro sitio que ya tengan creado esto depende de cada uno y de si ya usaban IIS antes de mi guía.... los pasos son similares a la versión anterior pero voy a guiarlos como se hace, primero le dan click derecho a default website o al sitio que tengan creado le dan a nuevo y directorio virtual en ingles new -> Virtual Directory una vez acá es idéntico a la versión anterior, le ponen un nombre en mi caso otra vez sera administradortotal le dan a siguiente, les pregunta el directorio al que vincula, yo nuevamente pondré el disco E ( E:\administradortotal\ ) le dan a siguiente, viene el paso de los permisos y acá lo mismo dejan Lectura o READ y tildan también Execute ISAPI, siguiente y finalizar. Ahora si seguimos con lo diferente a la versión anterior, ahora nos posicionamos en nuestro nuevo directorio virtual le damos click derecho y propiedades, vemos que abajo de todo dice Grupo de Aplicaciones o Application Pool, en esa opción seleccionaremos el grupo creado anteriormente en mi caso ATPool:

IRi435Z.png

Y otro de los pasos nuevos en esta versión es la de agregar la extensión ISAPI en la lista de extensiones permitidas, para eso vamos a Web Service Extension click derecho y add new:

Cx3T54U.png

Antes de esto, ya me estaba olvidando jaja, deben copiar todos los archivos descargados de la carpeta ISAPI al directorio que le asignaron al directorio virtual, y ahora si en la ventana que les salio completan los datos como yo, nombre le ponen lo que quieran en mi caso "ExtensionAT" y en los files que pide completan la ruta con la ruta de ustedes sin olvidarse de poner "modulos/AT.dll" que es donde todos tienen el dll del sistema en mi caso seria "E:\administradortotal\modulos\AT.dll" como ven en la foto:

zwD834h.png

Y con esto ya terminamos ahora solo queda como ultimo paso ir al directorio que le asignamos como en la versión anterior y ver que en los permisos del directorio de windows los usuarios IUSR y IWAM tengan control total, y ingresan por localhost al dll.

divisor.png

IIS 7

En lo que es esta versión les voy a deber muchas fotos ya que varios pasos son iguales a las anteriores 2 versiones y por que estas las saque de otro lugar ya que yo no uso IIS 7 no lo tengo instalado disculpen, bueno volviendo al tema creamos un grupo de aplicaciones (pool), completan con el nombre que le quieren asignar y acá lo único que cambia es que tenemos una opción de ".NET Framework" la cual debemos poner como "No Managed Code" como se ve en la foto:

DRmqdDk.png

Una vez creado el grupo, le damos click derecho configuraciones avanzadas y las configuramos tal cual a la siguiente foto:

2W8Ex3G.png

Ahora vamos a agregar una nueva aplicación

fB3ciwz.png

Muy parecido a lo que yo les mostré en mis configuraciones en las versiones anteriores, le ponemos un nombre a la aplicación y el directorio, pero en este caso MUY IMPORTANTE, es el directorio donde se encuentra la dll en mi caso seria "E:\adminsitradortotal\modulos\" ya que como saben una vez que copian todas las carpetas que descargaron de ISAPI al directorio que usaran con IIS siempre el dll se encuentra de la carpeta modulos que viene en la descarga.
uDqB84h.png

Ahora les aparece la aplicación, le dan click derecho administrar aplicación y opciones avanzadas
hTgtOQu.png

Y aca seleccionan el grupo de aplicación creado en el primer paso y el directorio
5Euutad.png

El siguiente paso es ir a los mapas como muestra esta foto

aPMY56Y.png

Seleccionan ISAPI-DLL click derecho y editar permisos
ah9uljE.png

Y tildan Execute:
BPo6J9b.png

Si no ven ISAPI-DLL, no les aparece, lo que deben hacer es ir a las configuraciones de windows (donde instalan IIS) y tildar la opción:
k2cmbED.png

ya con  eso pueden verlo y hacer el paso anterior, ahora van a las opciones de ingreso:

TkpGsPN.png

Y ponen a la autentificacion anónima como disponible y como usuario por defoult eligen IUSR

tcF2asY.png

Como en versiones anteriores en la carpeta del directorio virtual le dan los permisos de control total al usuario

kcuPozM.png

6hQX8XF.png

Y con esto ya tienen la ISAPI funcionando con IIS 7

 

 

Método por Servidor Local

Spoiler

Este es un método mucho mas fácil pero rustico, dentro de la descarga encontraran una carpeta llamada "Servidor" contiene varios archivos y un Setup.exe deben ejecutar ese ejecutable, y en los pasos de instalación elegir como ruta de instalación el disco local C:\ por lo tanto una vez finalizada la instalación debería visualizarse asi "C:\ServidorAT", luego de elegir la ruta les pregunta si quieren configurar el servidor ahora o mas tarde, si eligen ahora les preguntara los datos de acceso al servidor MySQL, les pedirá crear una base de datos y el prefijo, les pedirá subir el SQL y por ultimo les pide datos del usuario maestro, pero en el instalador este no dice si hubo errores en el proceso, por lo tanto, recomendaría que elijan configurar mas tarde y lo configuran cuando inician por primera ves el programa. Bueno, una vez pasado el paso anterior, les pedirá permisos de administrador si no lo ejecutaron como tal para poder modificar los registros de windows y abrir un puerto en el firewall de windows (puerto 8028) le dan que si, y en el ultimo paso les pregunta si quieren crear icono en el escritorio y si quieren que se agregue al sistema de  arranque, RECOMIENDO que le pongan que si a las 2 casillas, y le dan a finalizar. Automáticamente cuando termine se les abre un programa minimizado que es el servidor, si lo abren verán que es una pequeña consola con estadísticas del servidor. Y  ya estaría funcionando, con tan solo entrar a localhost:8028 podrán  visualizar el sistema y comenzar a usarlo o configurarlo si no lo habían echo.

Recuerden que yo digo localhost por que hablo en el caso de un servidor local, para los que lo instalen en el servidor que tienen el servicio web montado, ingresan con su web y puerto por ejemplo pepitoelmetinero.com:8028 y es mas si no les gusta que aparezca el puerto, como saben crean una regla que cuando ponen pepitoelmetinero.com/administracion o administracion.pepitoelmetinero.com muestre el contenido de pepitoelmetinero.com:8028 es simplemente engañar al cliente, pero queda mas elegante y mantienen al menos no a tan simple vista lo que seria el puerto.

No pongo fotos ya que es muy sencillo, ni siquiera hace falta que lo explique creo que con ejecutar el exe ya solos podían darse cuenta. Pero por las dudas escribí un poco para guiarlos, en el caso que quieran ayuda con algo me contactan o me escriben acá, puedo ayudarlo con el tema de crear la regla, etc si es que no saben como.

Fotos del Sistema

Spoiler

Ds95okj.png

Como pueden ver ingrese por localhost al puerto 8028, esta a lo crudo por que es local solo para pruebas. En adelante no mostrare la URL, para realizar un zoom y apreciar mejor la foto.

ey5dkfb.png

Xpvy9mG.png

mN5lVhn.png

vZzYa8w.png

MUqOk6W.png

zoGTnKo.png

Descargas

Spoiler

Actualmente no se encuentra ninguna descarga, la primer versión estará disponible el lunes 15 de enero.

Por ahora solo les presento el proyecto que voy a ofrecerles, y de paso, ya dejo armada la guía de como instalarlo, en cuanto termine la primer versión por completo y pase la prueba de testeo sera subida la descarga, el tiempo estimado es el lunes 15 de enero, luego iré actualizando el post con nuevas fechas de lanzamiento de nuevas actualizaciones, sera básicamente el mismo método, les diré el numero de versión el contenido nuevo que tendrá y la fecha en que se estima que estará subida para descargar. A medida que voy realizando cosas nuevas voy ampliando la galería de fotos, claramente no puedo poner fotos de TODO lo que contiene el programa, pero pondré variadas para mostrar aproximadamente como es el programa en cada menú.

 

Para los que controlan servidores en masa en alguna empresa o trabajaron de algo parecido, podría decirles que estoy intentado crear una especia de Nagios (para los que lo conocen, en el ámbito de servidores es muy conocido por las empresas que contienen una cantidad increíble de servidor que mantener bajo control) pero exclusivamente para Metin2 sumado a muchas otras opciones mas de mantenimiento especificas de Metin2.

 

Muchas gracias por leerme, espero que les guste mi proyecto y aporte. Cualquier idea que se les ocurra es muy bienvenida.

Enlace para comentar
Compartir en otros sitios

  • 2 months later...

Un millon de disculpas a todos, como veran me atrase bastante con el proyecto por motivos personales, otros proyectos y otras tareas que tuve que realizar en mi ambiente laboral. Hace unos dias retome el proyecto y segui avanzando, cambie un poco la tematica por tema de seguridad, y el open source lo publicare por GitLab en un repositorio para todo aquel que quiera realizarle modificaciones personales, aunque recomiendo que lo mejor seria que despejen sus dudas y hagan sus peticiones, y yo mismo incluyo las mejoras que quieran... ¿por que esto? Claro si quieres meterte a investigar el codigo y hacerlo por tu cuenta no hay ningun problema, pero como yo soy el programador del sistema estare mas famialerizado y podre realizar lo que necesiten en menor tiempo.

Estoy terminando de pulir la instalacion que daba errores en console.log, les dejo un fotito:

QHnkDeI.jpg

SZg0Dlc.jpg

Como ven ya pude ir puliendo el console.log, mi idea es entregarles un proyecto lo mas limpio de errores y warning posible, una web application optima.

Nuevamente disculpen la tardanza, ya retome la programacion del mismo y prometo en poco tiempo brindarles la primer version.

Enlace para comentar
Compartir en otros sitios

Les dejo el ultimo avance termine de pulir el "Requisitos" para la correcta instalacion del sistema, en el video engaño al if, cambiando la variable al valor que deberia tener para dejarte seguir con la instalacion. Era mas rapido que tener que ir al servidor y darle chmod 0777. Saludos.

 

Enlace para comentar
Compartir en otros sitios

  • 2 months later...

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, regístrate para publicar con su cuenta.

Guest
Responder a este tema...

×   Has pegado contenido con formato .   Eliminar formato

  Only 75 emoji are allowed.

×   Tu enlace se ha incorporado automáticamente.   Mostrar un enlace en su lugar

×   Se ha restaurado el contenido anterior. .   Borrar editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recientemente navegando por este tema   0 miembros

    • No hay usuarios registrados visitando esta página.
×
×
  • Crear nuevo...