RJS_Jake 159 Posted June 4, 2020 Hello everyone, This post is meant for instructing people on how to host Linux based servers, both with GUI and non-GUI. However we recommend everyone to use a GUI version, since the process can be much faster and easier. The first section of this post will be generic and applied to both GUI and non-GUI version of Linux. Note: This guide assumes you have got a Linux Distribution installed with 64-bit architecture. INSTALLING STEAMCMD AND SERVER TOOLS: Login as root and install the necessary softwares Debian/Ubuntu: $ apt-get install screen lib32gcc1 CentOS: $ yum -y install screen glibc libstdc++ glibc.i686 libstdc++.i686 Create a user $ adduser your-user-name Enter your password and make sure it's secured enough. When prompted for personal infos like names, company,.. you can choose to skip by pressing Enter. When asked for information is correct, write Y and Enter. Logout the root account and login with your new account Make a directory named TFEServerTools $ mkdir TFEServerTools Enter TFEServerTools folder $ cd TFEServerTools Download and extract SteamCMD from Steam official depot $ wget -q -O - https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xzv or $ curl -so - https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xzv Create a script for downloading/updating the server tools $ echo "./steamcmd.sh +login anonymous +force_install_dir servertools +app_update 1170680 validate" > updateserver.sh Make the script executable $ chmod +x updateserver.sh Install or update the server tools. If you want to update, just run the same script $ ./updateserver.sh Once it's finished, quit SteamCMD using $ exit SETTING UP CONFIG FILES Note: Since the Server Manager is programmed to be used in Windows, it is recommended that you run the tools in Linux, then use Server Manager from Windows to connect and manage your lobbies and server. Before we start doing anything, let's go into the server tools installation folder using $ cd TFEServerTools/CommunityTool Non-GUI distribution: Setup config files using script $ ./Setup.sh The script will create a default admin account for use of connecting with Server Manager, as well as others nessesary config files. GUI distribution: Install Mono-develop package $ apt-get install mono-complete MonoDevelop is an open-source development environment. We can use its environment to run ServerManager.exe, which is basically a window-based application. Simply run ServerManager.exe in the same folder to run the installation. Following the instruction to setup your first admin account. All the config files will be generated automatically as well (same as running Setup.sh script). Final step is to create script files for Master Server Controller, Dedicated Server Controller and Helper Master Server Controller script $ printf "#/bin/bash\n'../jre/bin/java' -jar MS.jar" > MS/MS.sh $ chmod +x MS/MS.sh Dedicated Server Controller script $ printf "#/bin/bash\n'../jre/bin/java' -jar DSC.jar" > DSC/DSC.sh $ chmod +x DSC/DSC.sh Helper script $ printf "#/bin/bash\n'jre/bin/java' -jar Helper.jar" > Helper.sh $ chmod +x Helper.sh RUNNING SERVER TOOLS AND CONNECTING After all setups are done, now it's time to start your server tools. Note: In order to run the script properly, please make sure to go back to the base directory "CommunityTool" before doing the steps. GUI distribution: Start ServerManager.exe in Linux distribution using monodevelop by double clicking Click on START SERVER green button and everything will be started for you Non-GUI distribution: Start Screen mode $ $ screen Then press Enter to continue. Create a screen session for all server tools $ screen -S servertool Immediately after, you will be switched to servertool session automatically. Create a new sub-screen for Master Server Controller by using Ctrl+A + C, then start MS.sh script $ cd MS $ ./MS.sh Create a new sub-screen for Dedicated Server Controller by using Ctrl+A + C, then start DSC.sh script $ cd DSC $ ./DSC.sh Create a new sub-screen for Helper by using Ctrl+A + C, then start Helper.sh script $ ./Helper.sh Note: make sure everything is run in order! To switch between sub-screens, you can use Ctrl A + Ctrl A. Once finish starting up the server tools, you can use ServerManager.exe from Window machines to connect to the Linux server with IP and admin accounts. Note: for non-GUI distribution, make sure to change the default password of the default admin account. PORTS TO ALLOW AND OPEN Steam Query ports : 27015-27020 (last port depends on how many rooms you will want to open) Game ports : 7777-7780 (last port depends on how many rooms you will want to open) Server tools ports : 1111-1114 @KattoorMade a very handy script to automate the installation process. Check it out below: (thanks!) https://www.taskforceelite.com/topic/483-linux-automated-server-tool-installation/ 1 1 Quote Share this post Link to post Share on other sites
wad3g 0 Posted September 12, 2020 Since you're able to host a server on Linux, does that mean it could, theoretically, also run on macOS? Quote Share this post Link to post Share on other sites
IcIshoot 133 Posted December 4, 2020 The guide is missing some ports - specifically the TSTFE Lobbies. Copied from the windows guide, could a moderator update the original post? Service Port Type Port Range Steam TCP/UDP 27015-27020 TSTFE_Lobbies TCP/UDP 27070-27080 Unreal_Engine TCP/UDP 7777-7790 TSTFE_MasterServer TCP/UDP 1111 IcI 1 Quote Share this post Link to post Share on other sites
RJS_Psycho 621 Posted December 10, 2020 Good catch @icishoot Updating now Quote Share this post Link to post Share on other sites
Warrior 81 Posted January 2 Is this guide up2date or have any things changed? To me its looks like something has changed at the tar file either it has changed or is missing... Quote Share this post Link to post Share on other sites
Kattoor 216 Posted January 2 2 hours ago, Warrior said: Is this guide up2date or have any things changed? To me its looks like something has changed at the tar file either it has changed or is missing... Step 6? Why do you think it changed? Quote Share this post Link to post Share on other sites
Warrior 81 Posted January 2 (edited) Because I get this error: Oh Shiiiiit...... NOT 0 (number zero) but upper capitals o 😬 $ wget -q -O - https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xzv Edited January 2 by Warrior 1 Quote Share this post Link to post Share on other sites
Red Dog 6 Posted January 18 Which would would better Ubuntu or Kubuntu? Quote Share this post Link to post Share on other sites
RJS_lllama loves you 333 Posted February 10 On 1/18/2021 at 3:38 PM, Red Dog said: Which would would better Ubuntu or Kubuntu? Late reply @Red Dog, but I think it's the matter of personal preferences, these both are almost identical and the difference lies in window manager I believe (Gnome for Ubuntu and KDE for Kubuntu). If you feel adventurous, you could try some other fun distro - whenever I linux, I always come back to BunsenLabs, also debian-based, with OpenBox on top 🙂 Quote Share this post Link to post Share on other sites
pure 1 Posted February 19 On 1/18/2021 at 9:38 AM, Red Dog said: Which would would better Ubuntu or Kubuntu? Good start would be something easy, like Ubuntu. I personally have Pop!_OS and it's been pretty good for a beginner like me. https://itsfoss.com/best-linux-beginners/ 1 Quote Share this post Link to post Share on other sites
Red Dog 6 Posted Monday at 04:32 PM Thanks for the info! Quote Share this post Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.