允许远程连接 memcache 服务器

允许远程连接 memcache 服务器

我的 memcache 服务器已启动并运行服务器 A

service memcached start
memcached -d -u nobody -m 512 -p 11211 127.0.0.1
chkconfig --list | grep memcache
chkconfig memcached on

我还有一个网络应用程序服务器 B(不同的 IP)。我该如何配置服务器 A对于 memcache,允许来自服务器 B

答案1

默认情况下,memcached 仅服务于本地主机,否则它无法抵御更广泛的网络/互联网,因此不安全。正如您在发布的输出中看到的那样,它目前仅服务于 127.0.0.1 上的连接:

memcached -d -u nobody -m 512 -p 11211 127.0.0.1

因此,您需要编辑配置文件并为其指定要服务的网络接口的 IP 地址。为此,请转到配置文件所在的目录。在 ubuntu 上,这是:

cd /etc/

然后在您选择的编辑器中打开配置文件:

sudo nano memcached.conf

然后向下滚动直到找到以下内容:

# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 127.0.0.1

现在只需127.0.0.1用您的网络接口的 IP 替换并保存。

现在您需要重新启动 memcached 服务器:

sudo service memcached restart

Memcached 现在将仅处理通过该 IP/网络接口接收的请求。您可以使用以下命令进行测试:

ps aux | grep memcached

如果一切顺利,您应该会看到您在配置中输入的 IP 而不是本地主机。

答案2

在 Amazon ec2 Linux 中

打开-sudo vi /etc/sysconfig/memcached

将行 - OPTIONS="-l 127.0.0.1,::1" 替换为行 - OPTIONS="-l 0.0.0.0,::1"

相关内容