If you use a high-level mathematical language (Mathematica, Maple, etc.), generating this data is very easy. I use Mathematica personally, but some are free and apparently very good.
In a pinch, you can use Wolfram Alpha to do a lot:
Generate random prime:
Inverse mod p:
(Returns random prime p, random integer a, a^-1 mod p)
It gets tricky supplying large numbers because queries are limited to 200 characters. Also you can't store variables and use them in subsequent queries. That is why using the actual applications is better. (For example, the last query above would simply be PowerMod[a,-1,p] if you could store a and p after you generate them.)