Production Troubleshooting
This guide provides troubleshooting solutions for common errors and operational challenges.
1. Authentication & Permission Errors
401 Unauthorized (invalid_credentials)
- Symptom: CLI or driver requests fail with
BastionAuthErrororinvalid_credentials. - Cause: Incorrect username/password, expired access key, or mistyped secret key.
- Fix:
- Verify credentials using
liorans3 whoami. - If using Access Keys, check if the key was revoked or rotated via
liorans3 key list. - Reconfigure local profile via
liorans3 configure.
- Verify credentials using
403 Forbidden (password_change_required)
- Symptom: Mutating operations or bucket creations fail with
password_change_required. - Cause: Fresh server deployment where the bootstrap admin account has not changed its initial password.
- Fix: Change the admin password via CLI or SDK:
liorans3 user passwd --old admin --new "YourNewPassword123!"
403 Forbidden (forbidden)
- Symptom: Attempting to create buckets or manage users fails.
- Cause: Authenticated account possesses
readwriteorreadonlyrole instead ofadmin. - Fix: Re-authenticate using an account with the
adminrole.
2. Capacity & Storage Errors
507 Insufficient Storage (quota_exceeded)
- Symptom: Single
PUTor multipart assembly fails withQuotaExceededError. - Cause: The target bucket has exceeded its configured
quota_bytes. - Fix:
- Inspect current quota via
liorans3 bucket info <bucket>. - Increase the quota limit:
liorans3 bucket update <bucket> --quota-gb 100
- Or remove the quota limit entirely:
liorans3 bucket update <bucket> --no-quota
- Inspect current quota via
507 Insufficient Storage (storage_capacity_exhausted)
- Symptom: All mutating writes across all buckets are rejected.
- Cause: Host storage free space has dropped below
BASTION_MIN_FREE_SPACE_BYTES(default: 512 MiB). - Fix:
- Check host disk usage with
df -h. - Expand host disk volume or purge unnecessary temporary files.
- Tune
BASTION_MIN_FREE_SPACE_BYTESin.envif operating on small disks.
- Check host disk usage with
3. Network & Reverse Proxy Issues
Connection Refused / ConnectionError
- Symptom: CLI reports
Failed to connect to Bastion server. - Cause:
bastion-servercontainer is not running, or listening on a different port. - Fix:
- Run
docker compose psto inspect container status. - View server logs with
docker compose logs bastion. - Run
liorans3 doctorto diagnose endpoint resolution.
- Run
TLS / Certificate Errors
- Symptom: Browser or SDK throws certificate verification errors (
UNABLE_TO_VERIFY_LEAF_SIGNATURE). - Cause: Caddy was unable to obtain an ACME certificate because ports 80/443 were blocked or DNS
A/AAAArecords do not point to the server. - Fix:
- Inspect Caddy logs:
docker compose logs caddy. - Verify that inbound TCP traffic on ports
80and443is permitted through your firewall/security group. - Verify DNS propagation with
dig +short s3.yourdomain.com.
- Inspect Caddy logs: