我有一个SSH隧道连接,从命令行工作正常;
ssh -f -N -L 4444:to.somewhere.com:80 [email protected] -p 22
现在我试图使这个连接与xinetd的需求连接。 我把这个自定义端口放在/ etc / service(工具4444 / tcp)中,并在/etc/xinetd.d中创build了一个configuration文件。
service tool { socket_type = stream instances = 1 wait = no user = root server = /usr/bin/ssh server_args = -f -N -L 4444:to.somewhere.com:80 [email protected] -p 22 port = 4444 disable = no }
重新启动xinetd之后,我尝试用wget连接到这个poort并获取消息;
绑定:地址已被使用
lsof -i也没有netstat -a在正手上没有显示任何打开的4444。
原因是xinitd会绑定到端口,当ssh尝试使用它时,端口已经被使用了。 要使用xinetd,你应该使用subprocess与stdin / stdout进行通信。
你可以在这里find一个指针如何用xinetdpipe理一个ssh隧道: