Firewall settings with "imagent"

Solution 1:

IMAgent is a process that listens for FaceTime invitations. It will be active even if FaceTime isn't running. You don't have to block it, but if you don't use FaceTime you can open the application, open preferences, and turn off FaceTime. That should quit the IMAgent process.

Solution 2:

The top-voted answer is wrong. IMAgent can be used for non-FaceTime messaging purposes. For example, it will connect to your Jabber account if you added one in Messages.

Solution 3:

imagent is part of iMessage/Messages/Facetime (see e.g. here) and needs to accept incoming connections for the same reasons as Skype and GoogleTalk do.