1) This is not necessary, but it’s nice to have an interface to manage your data. Thus, you can have several administrators in which they do not need to touch the database / code through the console (for ease of use, security, etc.).
2) It is entirely up to you, however localhost / admin can reduce the number of complications with subdomains.
3) , ... . , : Obscurity .
4) /, , , 1). , . ( ..) .
5) , , . , , , / , VPN " " (ontop , ). , /, - ip-.