Linux
在 Linux 上添加一個 IPTables 條目以釋放 Redis
在我的 Windows 機器客戶端(命名它
WIN
)上,我安裝了一個 VirtualBox Ubuntu Linux Mint Redis 伺服器(命名它LS
),作為橋接適配器連接到本地網路。在我的
LS
我有$ hostname -I 10.14.30.51 $ ps -aux | grep redis avahi 647 0.0 0.1 6164 3072 ? Ss 10:14 0:03 avahi-daemon: running [redis-server.local] redis 2048 0.1 0.1 39772 3532 ? Ssl 10:23 0:26 /usr/bin/redis-server 127.0.0.1:6379 root 2471 0.0 0.0 5312 868 pts/0 S+ 14:27 0:00 grep --color=auto redis $ redis-cli ping PONG
在
/etc/redis/redis.conf
文件中我註釋掉了這一bind 127.0.0.1 ::1
行……但實際上來自 Windows 機器的連接不起作用……我想我需要在 LS 中添加一些東西
iptables
,但不確定到底是什麼
- 用 . 檢查監聽地址
ss -tlnp 'sport == :6379'
。如果您會看到127.0.0.1
或::1
在這些行中,您已經忘記在更改配置後重新啟動 redis。如果您看到類似的內容0.0.0.0:6379
,請執行下一步。- 檢查
protected mode
redis的。- 檢查輸出
iptables-save -c
。規則的順序非常重要。要允許傳入連接到 redis,您應該添加規則:iptables -A INPUT \ --src <allowed-ip> \ -p tcp --dport 6379 \ -j ACCEPT
當然,您可以允許來自任何 IP 地址的連接,但這不是一個好主意。