Steam and Kryonet?

Hello, I am currently in the stage where I want to implement co-op to my game. However I am having some trouble with some of the concepts.

[Notes]
I want to release my game on Steam
I want to have max of 4 players
I don’t want to spend money on servers
Also I cannot find a way to turn on UPNP

From my experience with Kryonet is the Server side has to portforward, which is not what I want. I want the player to be able to host their own server (On their machine), and players can join only if they are friends with the steam user. However I feel like i need to portforward (unless steam uses some sort of upnp)