Isso é comumente feito, sim. (Embora no lado do servidor, o stunnel é mais comum.)
Seu problema principal é cipher=aNULL
, que bibliotecas TLS recentes podem não aceitar. (Para não mencionar, firewalls e IDSes podem considerar tal conexão muito incomum e suspeito.)
Em vez disso, use um TLS regular autenticado por certificado com um certificado autoassinado:
openssl req -new -subj "/CN=ponies" -days 365 -extensions v3_req -x509 \
-out tunnel.crt -newkey rsa:2048 -keyout tunnel.key -nodes
socat OPENSSL-LISTEN:10000,fork,cert=tunnel.crt,key=tunnel.key,verify=0 ...
(Isso só precisa ser feito no lado do servidor; os clientes não são autenticados por padrão).