An unofficial authentication server for Factorio
Find a file
2024-02-10 10:13:44 +00:00
src Set up tracing-error 2024-02-10 10:13:44 +00:00
.editorconfig Add .editorconfig 2024-02-09 20:21:31 +00:00
.gitignore Add cargo project scaffold 2024-02-09 20:22:29 +00:00
Cargo.lock Set up tracing-error 2024-02-10 10:13:44 +00:00
Cargo.toml Set up tracing-error 2024-02-10 10:13:44 +00:00
clippy.toml Add clippy configuration 2024-02-10 09:20:44 +00:00
LICENSE.txt Add license 2024-02-09 20:22:03 +00:00
README.md Add README.md 2024-02-09 20:21:27 +00:00

factoriauth - an unofficial Factorio authentication server

Let's say you and your friends are

  • on an oil rig,
  • in space, or
  • in the far future,

and you want to host a Factorio server. Because you don't have an internet connection (or the official authentication servers don't exist anymore), your only option is to disable require_user_verification in the server config - but this allows anyone to connect as any user, which is no good, especially for PvP scenarios! Wouldn't it be great if you could set up your own authentication server?

factoriauth is exactly that. It allows clients to log in as custom users provided by one of several authentication backends (e.g. LDAP or a passwd-style file), and allows servers to validate that these custom users are properly authenticated.

Roadmap

Complete

Nothing yet!

Planned

  • user token generation (POST /api-login)
    • auth backends: LDAP, user file, PAM(?)
  • server padlock generation (POST /generate-server-padlock-2)
  • user_server_key generation (POST /generate-user-server-key-2)
  • server padlock proxying (to allow e.g. factorio.com users to join servers using a custom auth server)

Unplanned

Setup

Configuring factoriauth

TBD

Configuring clients/servers

To use the auth server, the following snippet needs to be added to the clients' and servers' config.ini, replacing the URL of the server as appropriate:

[servers]
auth-server=https://my-auth-server.example/

Running factoriauth

TBD