From what you previously posted, you imply that you have no idea how a server even works. For us to explain to you how to set one up and run it would involve too much, there are tons of tutorials if you search on Google.
You can use srcds or rent a server. I use srcds for my server because its free and easy. Look up a tutorial on google saying: Garrys mod 10 srcds tutorial
You still need to forward ports either way, if you are behind a firewall/router, there is no way your gonna get any server to work without forwarding the ports.