itsneufox / installation_openmp_ubuntu

Open Multiplayer (open.mp) server installation guide for Ubuntu and other Debian based Linux
4 stars 0 forks source link

Easy open.mp Server Installation
(All Debian based Linux)



[!NOTE] If you are using the SA:MP server and didn't convert to open.mp yet, please stop here and read this guide!

[!NOTE] If you are using the FCNPC plugin, please stop for now because this plugin does not work for open.mp currently.
You can help with a donation here on the Open Collective!

Contents

Introduction

Welcome! This repository contains a comprehensive guide on installing an open.mp server on Ubuntu or another Debian based Linux.
Whether you're a beginner or just looking to refresh your knowledge, this guide should have something for you.

Prerequisites

Before starting, you should have:

Phase 1: Preparing the Environment

  1. Connecting via SSH:
    • Use PuTTY or your hosting SSH solution to connect to your instance.

[!NOTE] Seek online guides or your hosting provider's documentation if you're unsure how to connect to your Linux Instance.

  1. Updating your Linux Instance:

    • Before proceeding, let's ensure your system is up to date by running:
    sudo apt update
    sudo apt upgrade
  2. Creating a secure service account:

    • For security reasons, we should create a dedicated service account without a home directory:
    sudo useradd -M svc-omp-server
  3. Locking the service sccount:

    • Let's prevent the service account from being used for login:
    sudo usermod -L svc-omp-server
  4. Creating a directory for the server files:

    • We will use the /opt directory, this is the standard location for third-party applications:
    sudo mkdir /opt/omp-server
  5. Setting permissions for the directory:

    • Changing the group of the directory to match the service account:
    sudo chgrp svc-omp-server /opt/omp-server
    • Setting the g+s flag so new files inherit the correct group and remove access for others:
    sudo chmod g+s /opt/omp-server
    sudo chmod o-rwx /opt/omp-server

Phase 2: Installing open.mp Server Files

  1. Let's navigate to the server directory:

    • We need to switch to the /opt/omp-server directory where the server will be stored:
    cd /opt/omp-server
  2. Downloading the open.mp server files:

    • Download the latest release of the open.mp server:
    sudo -u svc-omp-server wget https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-linux-x86.tar.gz

[!NOTE] You should check for the latest release at the open.mp GitHub Releases page: https://github.com/openmultiplayer/open.mp/releases.

  1. Extracting the server files:

    • Once downloaded, extract the files:
    sudo -u svc-omp-server tar -xzf open.mp-linux-x86.tar.gz

Phase 3: Configuring and Starting the Server

  1. Installing the required x86 libraries:

    • Since the server runs as a 32-bit application, you need to enable 32-bit architecture support:
    sudo dpkg --add-architecture i386
    sudo apt update
    sudo apt install libc6:i386
  2. Making the server executable:

    • Change the permissions so the server can be executed (only required once):
    cd /opt/omp-server/Server/
    sudo chmod +x omp-server
  3. Starting the server:

    • Use the following command to start the server in the background:
    nohup ./omp-server &
    • The terminal will output a process ID (PID). Write this number down for future reference.

Phase 4: Managing the Server

  1. Stopping the server:

    • To stop the server, use the PID from step 12 and run:
    sudo kill <PID>
  2. Finding the Process ID (if forgotten):

    • If you forget the process ID, run:
    top
    • Look for the omp-server process in the list, note the PID, press 'Q' to quit, and then kill the process as shown in step 13.

Phase 5: Uploading Your Gamemode and Files

  1. Upload your custom gamemodes and scripts:
    • Use WinSCP or Filezilla to transfer your gamemodes and scripts to the /opt/omp-server directory. Important: Make sure to use .so files for Linux plugins, as .dll files are only supported on Windows.

Help

For any issues related to the server or this guide, please join the official open.mp Discord server and post your questions in the #openmp-support channel.


Final words

If you notice any inaccuracies or have suggestions regarding this guide, feel free to reach out to me @itsneufox on the official open.mp Discord server. I appreciate your feedback!

A big thank you to Vince0789, Mido and others for raising important security concerns and assisting in enhancing the security practices in this guide!

Additionally, thanks to the open.mp team for their incredible work and dedication!