如何配置 redis 以允许我通过 SOCKS 代理进行连接?

Nat*_*han 3 ssh-tunnel socks redis

我的远程机器上运行着一个 redis 服务器。目前仅设置为绑定 127.0.0.1。

我可以使用 ssh -D 9999 mydomainwhatever.net ssh 进入机器以打开 SOCKS 代理,然后配置我的操作系统的网络首选项以使用该代理进行所有连接。

然后可以使用在我的本地机器上运行的 redis-cli 连接到在远程机器上运行的 redis 服务器吗?我实际上正在尝试使用 redis-py 作为客户端,但我认为这无关紧要。

我不想将 redis 暴露在互联网上。

小智 9

在这个答案中,我假设使用了默认的 redis 端口 (6379)。您可以通过 ssh 创建一个隧道,因此 localhost->6379 将使用以下命令指向 mydomainwhatever.net:6379:

ssh -L 6379:localhost:6379 user@mydomainwhatever.net
Run Code Online (Sandbox Code Playgroud)

然后您可以使用 redis 客户端连接到 localhost:6379。