100% there is a necessity to be able to allow certain IP addresses or ranges to be accessed despite being private IPs, e.g., for internal networks and non-federated deployments, such as those used for research and testing.
It should not just be a boolean, but explicitly a list of allowed IP addresses or IP ranges that can bypass the SSRF filter.
This is a good question. I think no, but I have not clarified the original post enough. I imagine this a list of MUST requirements, so that the server does not pose a risk to the Fediverse.
Examples
Consider a server that enables people to send spam => BAD for the network
Consider a server that changes its client API every Monday => Horrible for users, as the application is probably unusable on Mondays and Tuesdays. Fortunately, it has no effect on the rest of the Fediverse. So no real harm is done. The application will suffer a slow and painful death if it was otherwise quite good.
Maybe, a better name would be “security checklist before releasing a Fediverse application”. However, I’m still collecting. So it will take some time.
My understanding is that if I click that button and followed several people on hachyderm.io, all relationships would be severed (I’m not going to spam people to test it).
This should be considered an obvious foot gun as one should probably warn with something like:
“Blocking hachyderm.io will sever your relationship with @alice@hachyderm.io and @bob@hachyderm.io”
This additional amount of friction would probably remove some of the “blocking is evil” discourse. As people would be more cognizant of the consequences of their actions.