Creating an internal yum repository is incredibly easy to do. In an overview, the steps are
- Archive all of the rpm files using rsync (or manually select which RPMs you want, and put them in the directory)
- Run the 'createrepo' command on the directory
- Make the directory accessible via a web server
For rsync, you basically take a look at the mirror list, select one that lists rsync as an available option, and use the command:
/usr/bin/rsync -avrt --exclude=debug/ \
There is some existing documentation on a piece of software called MirrorManager, but I have never used it. It sounds like it should works fine, and maybe someone else can speak to that.
There's also a useful page in the Fedora documentation wiki with a section on How can someone make a private mirror.
Incidentally, since this is an enterprise network, have you given thought to providing desktops with CentOS, rather than Fedora? The length of support is much longer, and you're dealing with much more stable software.
It's definitely possible to maintain an internal repo for CentOs as well.
I do it for my servers, and if there are any packages that I need, I just put them on my local repo and install them, rather than using a large repo that I can't control, like EPEL.