Red Hat, Suse and Canonical do charge.
Just because RH, Suse and Canonical charge, does not mean those are requirements. You can always opt to have linux and not pay for their support.
You are leaving a gaping hole in your servers if you are not patching them (the distro's that charge and you decide not to pay)
- you can choose to pay RedHat, Suse and Canonical
- you cannot choose not to pay Microsoft