В общем случае разница во всех этих сервисах в том, на каком уровне TCP/IP они работают. Отсюда вытекает, что они могут и что позволяют.
- Openvpn - работает на уровне L2 и L3, создает новое сетевое соединение, влияет на всю систему, можно пропустить весь трафик, нужны рутовые права.
- Stunnel - работает на L4, L5. Это SSL, только для вполне указанных сервисов. Рутовых прав не требует, работает с конкретными портами и протоколами, можно подключаться через проксю.
- IPSec - в принципе, как openvpn, только на L3. Чуть тяжелее в конфигурировании, зато более универсален. Можно подключаться с сетевых железок. А вообще, IPSec - целый фрейворк для конфигурирования различных шифрованных соединений
- SSH в режиме туннеля - тот же самый openvpn, который не надо настраивать. Он использует те же самые алгоритмы, библиотеки и функции, что и openvpn. Рутовые права, создание новых интерфейсов при этом никто не отменял. Я бы сказал - разовое мероприятие.
- SSH в режиме прокси - в принципе, аналог Stunnel. Также прикладной уровень, также SSL, также не нужно рутовых прав, также работает через проксю. Ну и нужно каждый раз заново запускать, тоже разовое мероприятие
В общем одни решения - SSL, другие - VPN. Через SSL общается конкретное приложение с другим конкретным. Через VPN могут общаться целые сети по любым протоколам.
Если интересно, вот
здесь более детальное описание, правда на буржуйском.