SANDBOX — this is a test environment. No servers are actually deployed and no real payments are charged.
Back to NxLabs

NxLabs / Vintage Story

Server Authentication

BBy BoboDev

Increase the security for your server by adding a new account register and login

Description

<div class="markdown-heading" dir="auto"><h1 class="heading-element" dir="auto" tabindex="-1">Server Auth</h1> <a id="user-content-server-auth" class="anchor" href="https://github.com/LeandroTheDev/server_auth/tree/1.0.9#server-auth" aria-label="Permalink: Server Auth"></a></div> <p dir="auto">Increase the security for your server by adding a new account register and login on player connections, totally server side,</p> <div class="markdown-heading" dir="auto"> <h1 class="heading-element" dir="auto" tabindex="-1">Version to choose</h1> <a id="user-content-version-to-choose" class="anchor" href="https://github.com/LeandroTheDev/server_auth/tree/1.0.9#version-to-choose" aria-label="Permalink: Version to choose"></a></div> <table> <thead> <tr> <th>Game Version</th> <th>Mod Version</th> </tr> </thead> <tbody> <tr> <td>1.x.x</td> <td>RSA Encryption (Both)</td> </tr> <tr> <td>1.x.x-rc</td> <td>Simple (Server Only)</td> </tr> </tbody> </table> <div class="markdown-heading" dir="auto"> <h3 class="heading-element" dir="auto" tabindex="-1">warning</h3> </div> <p dir="auto">In the last version the configuration <code>uidAuthentication</code> is removed, if this is used as false in previous versions, updating the mod will make all players need to register again!!</p> <p dir="auto">Features:</p> <ul dir="auto"> <li>Register account system ex: /register 123</li> <li>Login account system ex: /login 123</li> <li>Change password system ex: /changepassword 321</li> <li>Admin change password system ex: /forcechangepassword test 321</li> <li>Configuration files</li> <li>RSA Encryption for passwords</li> <li>Passwords saved is hashed using SHA256</li> </ul> <p dir="auto">Player unlogged cannot:</p> <ul dir="auto"> <li>Drop items</li> <li>Execute commands</li> <li>Break blocks</li> <li>Get dropped items</li> <li>Use inventory</li> <li>Deal damage</li> <li>Receive damage</li> <li>Lose saturation</li> <li>Move</li> </ul> <div class="markdown-heading" dir="auto"> <h3 class="heading-element" dir="auto" tabindex="-1">Observations</h3> </div> <p dir="auto">Players not registered will not count as unlogged player. (Configurable)</p> <p dir="auto">Players has 20 seconds to login, if player not logged will be automatically disconnected from the server. (Configurable)</p> <p dir="auto">Too many wrongs password will kick user and ban for some seconds. (Configurable)</p> <p dir="auto">Entering too many times in server and not logging will ban the user for some seconds. (Configurable)</p> <p dir="auto">When a player enters in the server all the inventory is saved locally and the player inventory is clear, so the unlogged players will not have access to the inventory, when the player successfully login in, the inventory is restored.</p> <p dir="auto">Unfurtunally you can view the players passwords in servers log if you have acess to it, this is because the native code logs all commands from players, you know how to disable it? feel free to pull request.</p> <p dir="auto">The players password is saved based in the player UID (you can force to use player name instead but this is UNSECURE), if the player changes the name the password for login will be the same.</p> <p dir="auto">Changing authentication to uid and player name will cause incosistences with players needing register again, be carefull changing it in mid game</p> <div class="markdown-heading" dir="auto"> <h3 class="heading-element" dir="auto" tabindex="-1">Considerations</h3> </div> <p dir="auto">This mod change a lot of native code, and can break easily throught updates, please make a backup in your world before adding it.</p> <p dir="auto">Performance can be a impacted on the server, because of authentication verification.</p> <p dir="auto">To much unlogged players can cause performances leaks because of forcing stop moviment.</p> <div class="markdown-heading" dir="auto"> <h1 class="heading-element" dir="auto" tabindex="-1">About Server Auth</h1> </div> <p dir="auto">Server Auth is open source project and can easily be accessed on the github, all contents from this mod is completly free.</p> <p dir="auto">If you want to contribute into the project you can access the project github and make your pull request.</p> <p dir="auto">You are free to fork the project and make your own version of Server Auth, as long the name is changed</p>

Ratings & reviews

No ratings yet

Sign in to leave a rating or comment.