Skip to content

Deployment Overview of ARK Survival Evolved Server on Server

Prerequisites and Basic Requirements

The deployment of the ARK Survival Evolved Dedicated Server requires the following system specifications and configurations:

  • Operating System: Ubuntu (Debian-based)

  • Privileges: Root or sudo access is required to install system packages, create users, and manage systemd services.

  • Required Packages: The following packages must be installed on the system:

  • curl

  • lib32gcc1

  • lib32stdc++6

  • screen

  • wget

  • tar

  • Firewall: The ufw (Uncomplicated Firewall) must be configured to allow specific UDP traffic for the game server.

FQDN of the Final Panel

The server is configured with the following domain parameters for the hostkey.in zone:

  • Zone: hostkey.in

  • Prefix: ark-server

  • FQDN Format: ark-server<Server ID>.hostkey.in:<port>

File and Directory Structure

The application files, configuration scripts, and data are organized within the home directory of the dedicated service user. The primary locations are:

  • Base Directory: /home/steam/ARK

  • SteamCMD Directory: /home/steam/steamcmd

  • Startup Script: /home/steam/ARK/ark_server_start.sh

  • Installation Script: /home/steam/install.sh

  • Systemd Service Unit: /etc/systemd/system/ark.service

Application Installation Process

The ARK Survival Evolved Dedicated Server is installed using SteamCMD. The process involves downloading the SteamCMD tool, extracting it, and executing a custom installation script to download the game server binaries.

  1. A dedicated system user named steam is created with the home directory /home/steam.

  2. The SteamCMD tool is downloaded from the official Steam CDN and extracted to /home/steam/steamcmd.

  3. An installation script located at /home/steam/install.sh is executed. This script invokes SteamCMD with the following parameters:

  4. Force installation directory: /home/steam/ARK

  5. Application ID: 376030 (ARK: Survival Evolved Dedicated Server)

  6. Validation: Enabled (validate)

  7. The server binaries are installed into the /home/steam/ARK directory.

Access Rights and Security

Security and access control are managed through user isolation and firewall rules:

  • Service User: The application runs under the non-root user steam.

  • Firewall Rules: The ufw firewall is configured to allow UDP traffic on the following ports:

  • 7777 (Game Port)

  • 27015 (Query Port)

  • 32330 (RCON Port)

Docker Containers and Their Deployment

This deployment does not utilize Docker containers. The application is installed directly on the host operating system using native binaries and managed via systemd.

Proxy Servers

No proxy servers (such as Nginx or Traefik) or SSL termination via Certbot are configured for this specific deployment. The server communicates directly over the defined UDP ports.

Permission Settings

File and directory permissions are set to ensure the steam user has full ownership and execution rights:

  • Owner: steam

  • Group: steam

  • Directories:

  • /home/steam/steamcmd

  • /home/steam/ARK

  • Scripts:

  • /home/steam/install.sh: Mode 0755

  • /home/steam/ARK/ark_server_start.sh: Mode 0755

  • Systemd Unit File: /etc/systemd/system/ark.service: Mode 0644

Location of Configuration Files and Data

The server configuration is embedded within the startup script rather than a separate configuration file. The primary configuration file is:

  • Startup Script: /home/steam/ARK/ark_server_start.sh

This script contains the following runtime parameters: | Parameter | Value | Description | | :--- | :--- | :--- | | map_name | TheIsland | The game map to load | | server_name | My ARK Server | The display name of the server | | server_password | TestPass123! | Password for joining the server | | admin_password | TestPass123! | Password for RCON/Admin access | | max_players | 20 | Maximum number of players | | server_port | 7777 | Main game port | | query_port | 27015 | Server query port | | rcon_port | 32330 | RCON port |

Available Ports for Connection

The following ports are open and configured for client and administrative connections:

  • 7777/UDP: Game traffic

  • 27015/UDP: Server query

  • 32330/UDP: RCON (Remote Console)

Starting, Stopping, and Updating

The ARK Survival Evolved Server is managed as a systemd service named ark. Use the following commands to control the service:

  • Start the server:

    sudo systemctl start ark
    

  • Stop the server:

    sudo systemctl stop ark
    

  • Restart the server:

    sudo systemctl restart ark
    

  • Enable auto-start on boot:

    sudo systemctl enable ark
    

  • Check service status:

    sudo systemctl status ark
    

The service is configured to restart automatically on failure with a 5-second delay (Restart=on-failure, RestartSec=5s).

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×