到 Memcached 的 SSH 隧道不起作用

到 Memcached 的 SSH 隧道不起作用

我已经创建了一个到我的 memcached 服务器的 SSH 隧道,如下所示:

 ssh -f -N [email protected] -L 11211:127.0.0.1:11211

当我在我的机器上执行 netstat 时,我得到以下信息:到目前为止看起来不错。

tcp        0      0 127.0.0.1:11211    0.0.0.0:*    LISTEN      976/ssh

当我通过 telnet 连接到服务器时,出现以下问题:

telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
channel 2: open failed: connect failed: Connection refused
Connection closed by foreign host.

因此我去了 memcached 服务器并跟踪了 auth.log 文件,并在尝试 telnet 到服务器时发现了此消息:

Apr  4 13:56:06 vmcachd sshd[1410]: error: connect_to 127.0.0.1 port 11211: failed.

有人知道问题是什么吗?我有一个类似的 postgresql 设置,它运行得很好!任何帮助都非常感谢。

谢谢

答案1

做一个:

 ssh -f -N [email protected] netstat -putan 

应该会显示一些正在监听 127.0.0.1:11211(或 0.0.0.0:11211)的内容,检查“本地地址”列

如果您看到其他内容(例如在另一个界面中监听),则有两个选项:

  1. 您更改隧道以侦听该接口,即:ssh -f -N [email protected] -L 11211:192.168.3.106:11211
  2. 让 memcache 监听 127.0.0.1 即:你用它启动服务memcached -l 127.0.0.1(或者它在 ubuntu/debian 中对应的 /etc/default/memcached)

答案2

感谢您的帮助,我通过重新安装最新的 Centos 7 操作系统和最新的 memcache 服务器解决了这个问题,现在一切都运行正常。之前我的 memcache 服务器运行在旧版本的 Debian 6.0.6/squeeze 上,不确定这是否与此有关,但重新安装最新的操作系统肯定解决了我的问题。

相关内容