mail-in-a-box / mailinabox

Mail-in-a-Box helps individuals take back control of their email by defining a one-click, easy-to-deploy SMTP+everything else server: a mail server in a box.
https://mailinabox.email/
Creative Commons Zero v1.0 Universal
14.05k stars 1.44k forks source link

Add support for Proxied (Cloudflare) and DDNS web records #2394

Closed tognee closed 5 months ago

tognee commented 5 months ago

I'm using Cloudflare as an external DNS and my root A record is proxied on Cloudflare. That means it doesn't have a static IP address.

I keep getting daily emails that tells me the root A record changed because of that, if the address was static I could've added it in the external DNS settings.

Cloudflare DNS has API endpoints that could be used to fix this use case, maybe it can be used to manage the DNS directly without using glue nameservers (my domain registrar gave me issues about them).

myfirstnameispaul commented 5 months ago

I am not able to make sense of what you are asking for, but MiaB includes the name server to provide the correct DNS records for supporting the myriad mail standards that most people screw up. You can just use MiaB as a mail server without all that stuff, but probably it isn't the best solution in that case due to all the noise it would generate.

In regards to glue records, every domain used for DNS server functionality requires a glue record, and ICANN requires registrars to support glue records, and every software package created for registrars supports glue records. If your registrar has some kind of issue with glue records, the solution is to change registrars, if possible, as they are demonstrating themselves to be technically incompetent.

I'm not really clear on how a domain can be configured with Cloudflare without Cloudflare being the name server. If you want to replace unbound with Cloudflare API support in MaiB, I think that is something "someone" would have to submit as a change, as I doubt the current contributors are going to make what would likely be a fairly substantial change to the project.

tognee commented 5 months ago

You can just use MiaB as a mail server without all that stuff, but probably it isn't the best solution in that case due to all the noise it would generate.

I'm using MiaB without glue records. I copied all records to my DNS after setup and the system check doesn't have any problem with it. The email server works fine and that's why I am using MiaB.

The main issue I'm facing is that the mail server is expecting to manage the web hosting as well. There is no documented way to turn it off, and I keep getting emails that my root A record changed and it's not the one MiaB expects.

In regards to glue records, every domain used for DNS server functionality requires a glue record, and ICANN requires registrars to support glue records, and every software package created for registrars supports glue records

My registrar supports glue records, it doesn't support having two glue records with the same IP address. It makes some sense as the ns2 should be a fallback if the first one isn't available. If both are the same IP then the fallback is useless.

I'm not really clear on how a domain can be configured with Cloudflare without Cloudflare being the name server.

Cloudflare is configured as my name server. I copied the records from MiaB on my Cloudflare Dashboard.

To make it more clear, what I'm asking is:

  1. A way to disable domain record check as it is incompatible with proxied domains or DDNS domains (domains that change IP addresses frequently)

or

  1. A way to let the DNS of MiaB talk to Cloudflare DNS to change the records though the REST API

or

  1. A way to let MiaB sync it's DNS with Cloudflare ones through the REST API
myfirstnameispaul commented 5 months ago

Okay, so, to summarize my current understanding of what you are asking other people to do: change several core functionality features so you don't have to receive an automated email each day. However, MiaB already has its own API so that other services can configure MiaB, so this seems already supported from the perspective of the project, itself. Cloudflare may already provide the features necessary to make use of the MiaB API, but that is up to Cloudflare users to figure out.

The issue of two IP addresses on MiaB glue records is already solved, you just didn't spend any time searching for the solution.

tognee commented 5 months ago

The issue of two IP addresses on MiaB glue records is already solved, you just didn't spend any time searching for the solution.

May I ask where this is documented?

tognee commented 5 months ago

Also what I'm asking is a discussion to find a solution to the issue, I'm not demanding anything.

myfirstnameispaul commented 5 months ago

May I ask where this is documented?

https://mailinabox.email/

Need Help?

  1. Ask on the forum. Other users may be able to help.
myfirstnameispaul commented 5 months ago

Also what I'm asking is a discussion to find a solution to the issue, I'm not demanding anything.

The discussion forum will likely provide you with more responses. GitHub issues on this project are generally related to the development of the project. Discussion based issues rarely have any responses to them.

tognee commented 5 months ago

Ask on the forum.

That's not documentation.

I still think this is an issue with the project, but I will close it as "wontfix" as I see that there is no communication with the Devs.

Thanks for your help.

myfirstnameispaul commented 5 months ago

This is an open source project that regularly reviews nearly all submitted PRs in a surprisingly timely manner. However, as a review of the current Issues demonstrates, discussion-based topics rarely receive any responses despite the fact that a substantial number of contributors and developers are subscribed to this feed.

Akshually, the project website is documentation.

JoshData commented 5 months ago

I will close it as "wontfix" as I see that there is no communication with the Devs

It is hard for me to keep up with conversations that don't have a specific and clear request for something that needs me. I see you opened #2397 that makes a very concrete proposal, which I responded to.