Core Keeper server status checker
Core Keeper supports both a game ID for direct joins and a standard query on its port, which is why 'my friends can join but the checker says offline' is common here.
Which ports a Core Keeper server needs
The game ID route goes through the publisher's relay and does not depend on your ports at all. This tool uses the direct query on your server's UDP port, so it tests something different from what your friends are using. A relay-joined server can be completely unreachable directly and still work for them.
If it still shows offline
If your group joins by game ID and everything is fine, a failed check here is expected rather than a fault. Forward the UDP port if you want direct connections and public visibility as well.