Automating the installation of PostgreSQL on Linux with ansible is a couple lines of tasks in a playbook + a template for postgresql.conf and pg_hba.conf. Automating the installation of SQL Server on Windows (as well as the installation of Windows in general if you aren't using System Center) is a huge pain in the ass.
That's enough less "care and feeding" for me.
about the most annoying thing about running windows is updates as they mostly want to restart the box.
If you delay your updates, it can take 40 + minutes to restart once you decide to install them
Also if you're installing it manually (and thus having to configure it manually) the odds are good that you're a developer in which case it'll also only be accessed locally.
It's a sane default to not listen to the network. A lot of users won't need it. Those that do can enable it.
The port thing is handled automatically when you have your network clients working correctly.
For the record I'm a SQLite/Postgres guy, the only reason I even know about the port thing is having to help a customer troubleshoot some software that uses SQL express a few weeks ago. Definitely not a MS defender normally, but your complaints are really silly.