WSL (Windows Subsystem for Linux) 中 允许远程链接
在 WSL (Windows Subsystem for Linux) 中,默认情况下,Redis 只允许从本地连接。如果你希望从其他机器或主机连接到 Redis,可以通过以下步骤配置 Redis 以允许远程连接。
步骤 1: 修改 Redis 配置文件
Redis 配置文件通常位于 /etc/redis/redis.conf
或 /etc/redis.conf
。
-
打开 Redis 配置文件:
sudo nano /etc/redis/redis.conf
-
找到
bind
配置项,默认情况下它可能是这样的:bind 127.0.0.1 ::1
-
修改它,允许所有IP连接(这对于开发环境适用):
bind 0.0.0.0
这将允许任何 IP 地址连接到 Redis 服务器。
-
找到
protected-mode
配置项:protected-mode yes
如果你希望在远程连接时禁用保护模式,可以将其改为:
protected-mode no
-
保存并退出编辑器(在
nano
中按Ctrl + X
然后按Y
再按Enter
)。
步骤 2: 修改防火墙设置
确保 Windows 防火墙或 WSL 中的防火墙允许外部访问 Redis 端口(默认是 6379)。
在 Windows 防火墙中打开端口:
- 打开 Windows Defender 防火墙,点击“高级设置”。
- 在左侧点击“入站规则”,然后点击右侧的“新建规则”。
- 选择“端口”,然后点击“下一步”。
- 选择“TCP”,并设置端口号为 6379。
- 允许连接,点击“下一步”。
- 给规则命名,例如
Allow Redis
, 然后点击“完成”。
在 WSL 中检查防火墙设置:
如果你在 WSL 中使用 ufw
(Uncomplicated Firewall),确保允许 6379 端口的连接。
-
安装并启用
ufw
:sudo apt update sudo apt install ufw
-
允许 Redis 端口(6379):
sudo ufw allow 6379
-
启用防火墙:
sudo ufw enable
步骤 3: 重启 Redis 服务
完成上述修改后,重启 Redis 服务以使配置生效:
sudo systemctl restart redis
或者,如果你是通过命令行启动 Redis 的:
sudo redis-server /etc/redis/redis.conf
步骤 4: 检查连接
此时,Redis 应该已经允许来自任何 IP 地址的连接。你可以尝试从其他机器(或本地浏览器中)使用 redis-cli
连接到 Redis:
redis-cli -h <WSL_IP> -p 6379
你可以通过以下命令获取 WSL 的 IP 地址:
ip addr show eth0
找到 inet
字段显示的 IP 地址,例如 172.20.x.x
,然后在远程机器上使用该 IP 地址连接。
注意:
- 在生产环境中,直接将 Redis 配置为接受来自任何 IP 地址的连接是不安全的,强烈建议使用
protected-mode
和 Redis 密码保护。 - 如果你不希望禁用
protected-mode
,可以通过配置 Redis 密码来确保安全,修改配置文件中的requirepass
设置:requirepass yourpassword
完成以上步骤后,Redis 就能在 WSL 中允许远程连接了。
原文地址:https://blog.csdn.net/WithCYwind/article/details/145203142
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!