[CHECK] Garrys Mod web console

  • Beste community,


    (Graag topic even door lezen)


    Al een tijdje lag het concept op het stapeltje, maar ben er nooit echt aan toe gekomen. Wel heb ik vroegere versies van het idee uit geprobeerd te werken, maar werkte het niet helemaal zoals ik wou (ben nog al kritisch op zulk soort dingen :P).


    Toen ben ik aan de bak gegaan met NodeJS en heb het idee opnieuw deels uitgewerkt met gebruik van NodeJS. Na een lange tijd heb ik uiteindelijk een POC (Proof Of Concept) gemaakt.


    Wat is het?
    Het idee wat al een tijdje op de plak ligt, is het beheren van game servers via een externe website. De server logt op de game server in d.m.v. rcon of andere manieren als de game rcon niet ondersteund. In de toekomst wil ik er graag nog een GUI (Graphical User Interface) omheen gaan bouwen.
    De reden voor dit concept is omdat ik vroeger erg veel mensen moest helpen met het opzetten en beheren van hun game server. Toen heb ik het concept bedacht om een 'noob-proof' website te maken zodat onervaren administratoren hun server makkelijk kunnen beheren. Dit concept is nog niet uitgewerkt, maar heb ik wel de achterliggende gedachte weten te realiseren, namelijk de CLI (Command Line Interface).


    Wat doet het?
    Tot zo ver is het een CLI. Hier worden commando's naar de game server verstuurd via rcon, en het resultaat op de pagina weergeven. Het is een beetje te vergelijken met de console van de game server zelf, alleen word er niks via rcon automatische naar de website gestuurd (denk hierbij bijvoorbeeld aan dingen als chat berichten etc.). Alleen resultaten van de ingevoerde commando's worden terug naar de website gestuurd.


    Voorbeeld
    Op het moment heb ik het proof of concept draaien op m'n server. Daarnaast heb ik een test garry's mod server op gezet die bij mij localhost draait. Omdat het een localhost server is, kan het zijn dat deze niet altijd aan staat. De server is namelijk alleen bedoelt voor test doeleindes en niet om daadwerkelijk op te gamen. De login gegevens van deze server zijn hieronder te vinden.


    Link naar het proof of concept
    IP / Hostname: home.rwolthuis.nl:27015
    Rcon Password: POCvoorbeeld123


    Wat zou ik graag willen weten
    Eventuele bugs die te vinden zijn of ideeën voor toekomstige features zijn altijd welkom. Let erop dat me het hier niet om het uiterlijk van de POC gaat, maar daadwerkelijk om de 'technische' bugs (bijvoorbeeld commando's die foutmeldingen geven etc.).


    Overige info
    Ondanks dat het garry's mod logo op de POC afgebeeld staat, en garry's mod in de topic name staat, is het systeem ook te gebruiken op overige SRCDS servers (Counter Strike Source, Day of Defeat Source.. etc.). Daarnaast zou het moeten werken op alle SRCDS servers, en niet alleen op de test server. De test server is alleen bedoeld voor mensen die het systeem graag willen testen zonder dat zij beschikken over een server of deze in willen vullen op de website. De verbinding is op het moment nog gewoon HTTP i.p.v. HTTPS, dat zal later nog worden gerealiseerd.


    Alvast bedankt!


    Edit:
    Omdat niet iedereen misschien zo een paar commando's weet om te testen, kunnen de volgende misschien van pas komen "status", "stats", "hostname", "sv_cheats", "maps" (uiteraard allemaal zonder de quotes). Bij eventueel twijfel wat een commando doet, kan er 'help [commando]' ingevuld worden, bijvoorbeeld 'help status'. Commando's zoals 'exit' en 'rcon_*' zijn disabled.

  • Cool project! Ook al heb ik nog nooit een gameserver gehad of gebruikt, dus ken de doelstelling niet. ;)


    Wel valt me op dat XSS mogelijk is. Misschien niet direct een security risk, maar ik zou het wel even fixen.


    Ook de scroll waarbij nieuwe resultaten bovenaan komen te staan is voor mij nogal onwennig, en voor iedereen die wel eens met de commandline te maken heeft denk ik.


    Edit: Sorry, ik heb hem stuk gemaakt. ;) quit command moet je even blokkeren denk ik ;)

  • Hey Stefan,


    Bedankt voor het melden! Quit commando is geblockeerd.


    Ik denk dat XSS op het moment geen security risk is, dit omdat alle input velden die worden doorgespeeld naar PHP wel worden gecontrolleerd. In de console zelf heeft alleen de gebruiker er in dat geval last van. Maar ik ga hier zeker op letten als het veder uitgewerkt is.


    De nieuwe resultaten die bovenaan staan had ik tijden terug gemaakt met een reden, deze reden weet ik alleen zelf niet meer. Nu je erover begint, vind ik 't zelf ook irritant, en zal het binnenkort even wijzigen.


    Bedankt voor de input!

  • Ik merk het, welke commando(s) heb je hiervoor uitgevoerd?


    Het systeem wat nu online staat gaat me niet om wie wel en wie niet de server weet uit te krijgen. Uit eindelijk zou de gebruiker zijn eigen server dan uit zetten. De test server met boven genoemde login gegevens is alleen bedoelt als test server en bedoeld voor de mensen die niet beschikken over een (test) server en / of de rcon gegevens van hun huidige servers niet willen invoeren.


    Edit
    Test server reboot zich nu elke keer als iemand hem uit weet te zetten.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!