连接到unix域套接字上的openvpnpipe理界面

这应该是非常容易的,我想我错过了一些明显的东西。

OpenVPN文档声明你可以在Unix域套接字上运行pipe理接口。 好的,没问题,我试过了。

openvpn --dev tun --management /dev/openvpn unix 

似乎工作; 设备被创build,OpenVPN启动。

如何连接到pipe理界面? 这不是TCP,所以Netcat将无法工作。 我试图直接向套接字回显命令,并得到一个错误:

 $ echo "help"| /dev/openvpn bash: /dev/openvpn: No such device or address 

我知道我错过了一些基本的东西,但是我可以在互联网上find任何实际连接到Unix域套接字pipe理接口的零例子。

我自己回答,发布后1分钟。

简短的回答,“使用socat”

参考: https : //unix.stackexchange.com/questions/26715/how-can-i-communicate-with-a-unix-domain-socket-via-the-shell-on-debian-squeeze

很长的回答:

 $ apt-get install socat $ socat - UNIX-CONNECT:/dev/openvpn >INFO:OpenVPN Management Interface Version 1 -- type 'help' for more info 

编辑:我最终真的在做什么

当TCP上的telnet / netcat工作的很好时,我不喜欢安装新工具的想法。 所以最后我configuration了一个TCPpipe理侦听器的OpenVPN,并阻止(通过防火墙和hosts.allow)外部访问它监听的端口。 即一个只能连接到本地主机上的OpenVPNpipe理端口。