It is possible to use smartcards to authenticate OpenVPN clients. However, it can be tricky to find OpenVPN, OpenSSL and OpenSC versions which play well together. Fortunately Alon from the OpenSC project provides custom builds that make things easier for many. Here are instructions for using them:
Builds are at , had to change location. Instructions are at . You need version 010 of the build. i686 - is 32bit x86_64 - is 64bit You need to install openvpn installer, which will install the tap driver. Then extract files from base and openvpn to specific directory and use this openvpn. You can also use the setup, I've never used it my-self but told that it is working.  http://www.opensc-project.org/downloads/users/alonbl/build/  https://www.opensc-project.org/build/
These instructions were originally published here.