Fresh Install Rocky 10

Issue Description

Can’t log in after fresh install

Expected Behavior

Login

Actual Behavior

{“type”:“about:blank”,“status”:404,“title”:“Not Found”,“detail”:“The requested resource does not exist on this server.”}

Reproduction Steps

Install and setup wizard complete

Relevant Log Output

{“type”:“about:blank”,“status”:404,“title”:“Not Found”,“detail”:“The requested resource does not exist on this server.”}

Stalwart Version

v0.16.x

Installation Method

Binary (Linux)

Database Backend

FoundationDB

Blob Storage

S3-compatible

Search Engine

Internal

Directory Backend

Internal

Additional Context

Fresh install. Rocky 10. Foundationsdb flag used. Running foundation 7.4 or higher

Latest binary

Setup wizard all went well

DNS Automatically managed selected, hosted by CloudFlare

When I goto https:// mysite.ca/admin I get the error

{“type”:“about:blank”,“status”:404,“title”:“Not Found”,“detail”:“The requested resource does not exist on this server.”}

Second time doing a full fresh format reinstall

I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.

on

I have searched this support forum (open and closed topics) and confirm this is not a duplicate.

on

I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.

on

The 404 on /admin almost certainly means the WebUI bundle was never downloaded. Here is what happens and how to fix it:

Root cause: The WebUI is not bundled into the binary. On first start, Stalwart fetches it from https://github.com/stalwartlabs/webui/releases/latest/. If that outbound HTTPS connection fails (firewall rule, Rocky 10 default policy, SELinux, or GitHub being unreachable), the bundle is never unpacked and every /admin route returns 404.

Steps to resolve:

  1. Check outbound connectivity from the server to github.com and objects.githubusercontent.com on TCP 443:

    curl -I https://github.com/stalwartlabs/webui/releases/latest/
    

    If this fails, a firewall or SELinux rule is blocking it.

  2. Check SELinux (very common on Rocky Linux). Either set the boolean to allow network connections for the service, or put SELinux into permissive mode temporarily to confirm:

    setsebool -P httpd_can_network_connect 1
    # or
    setenforce 0   # temporary test only
    
  3. Restart Stalwart after confirming connectivity so it retries the download:

    systemctl restart stalwart-mail
    
  4. Once the bundle downloads successfully, go to https://yourhostname/admin. If TLS is not yet working, you can also try http://<server-ip>:8080/admin (port 8080 is exempt from the hostname/TLS check) while you sort out certificates.

Note: If DNS/TLS for your hostname is not yet propagated, always use http://<host>:8080/admin first to verify the admin panel is working, then switch to the HTTPS URL.

Reference: FAQ - Why does /admin return 404 Not Found?

This is an automated reply from the Stalwart Help Bot. Other community members may follow up if this answer is incomplete or wrong.

None of that worked. Tried it all

Check your logs after a restart for details.

talwart.service: Consumed 4.697s CPU time, 155.1M memory peak.
Jun 20 17:43:03 systemd[1]: Started stalwart.service - Stalwart.

That’s all I get with sudo journalctl -u stalwart -n 200

I tried to go to /var/log/stalwart but I get access denied. Run with sudo nothing happens

open your cockpit or firewall and make sure https allowed

i running stalwart with docker compose behind traefik in rocky linux 10 and all is fine