What is the best way to prevent spam on my openVPN servers and how to ?
This depends on the purpose of your VPN. If you want to use it to allow people to access internal resources of your organization, simply block all outgoing traffic originating from the VPN at your firewall. I don't know, but maybe OpenVPN even offers an option for this. People must then configure their VPN clients to only route traffic for the internal resources through the VPN.
If you want to use it as a proxy/anonymity network, meaning users should route all their traffic through the VPN, things get more difficult or impossible, depending on what restrictions you consider acceptable for the users.
If you want to block outgoing port 25 traffic, this won't be enough, as there are still port 465 (SMTPS) and 587 (Submission). But blocking those means users cannot use their desktop mail programs (Thunderbird, Outlook etc) at all, a heavy restriction. Theoretical, this could be solved by offering a properly configured (authentication, sending rate limits) internal SMTP server, but this isn't working so good with SPF etc. these days.
Blocking spam submission via web mailers (Yahoo, GMail, Hotmail etc) is even more difficult. The first option is, again, blocking access to them, preventing users from legitimate use. The second would be to force the use of a rate-limiting proxy that allows only a limited numbers of connections per minute for any given site.