I'd suggest using an ansible/chef/puppet/whatever script, that you customize to meet the needs of your particular application.
Some simple ones you could start with are available at http://tinyurl.com/AnsibleFirst5 and/or http://hardening.io/
Expand to add additional configuration and hardening for your particular infrastructure.
(2) For anything not listening to 127.0.0.1: what is it and do you need it?
(3) If answer to #2 is "dunno" or "no," turn it off.
:)
They call them 'benchmarks', but they are really just checklists of things to do (disable X, lock down Y, etc.)
https://www.digitalocean.com/community/tutorials/7-security-...
https://wiki.archlinux.org/index.php/Simple_stateful_firewal...
https://access.redhat.com/documentation/en-US/Red_Hat_Enterp...
NSA have also put out some good hardening guides