Tôi đã vật lộn với kết nối từ xa với Redis trong một số ngày. Cuối cùng thì tôi cũng làm được. Đây là danh sách kiểm tra đầy đủ mà tôi tổng hợp để theo dõi để kết nối. Một số giải pháp được đưa ra trong các câu trả lời ở trên. Tuy nhiên, tôi muốn câu trả lời của mình là một wiki nano về chủ đề này :) Tôi cũng đã thêm một số liên kết hữu ích.
Nếu redis hoạt động cục bộ:
$ redis-cli
127.0.0.1:6379>ping
PONG
127.0.0.1:6379>
Nếu mật khẩu không được đặt
Xem /etc/redis/redis.conf
cấu hình (đây là locaion mặc định cho Ubuntu 18.04, bạn có thể có nó ở vị trí khác):
# The following line should be commented
# requirepass <some pass if any>
Nếu chế độ được bảo vệ được đặt thành 'không' trong cấu hình:
# The following line should be uncommented
protected-mode no
nếu ràng buộc IP được mở để truy cập từ internet trong cấu hình:
# The following line should be commented
# bind 127.0.0.1 ::1
Nếu tường lửa Linux cho phép các kết nối
(ở đây cho Ubuntu 18.04) Kiểm tra xem nó có cho phép lưu lượng truy cập internet đến để chuyển đến cổng hay không 6379
(cổng mặc định của Redis)
# To check if it the port is open
$ sudo ufw status
Status: active
To Action From
-- ------ ----
...
6379/tcp ALLOW Anywhere
6379/tcp (v6) ALLOW Anywhere (v6)
...
# To open the port
$ sudo ufw allow 6379/tcp
Khởi động lại dịch vụ Redis
Đừng quên khởi động lại dịch vụ Redis để các thay đổi có hiệu lực và xem nó đang chạy:
$ sudo systemctl restart redis.service
$ sudo systemctl status redis
Kiểm tra xem nó có hoạt động như một máy chủ từ xa không
từ dòng lệnh của bạn sử dụng redis-cli
như thể máy chủ Redis ở trên máy chủ từ xa:
$ redis-cli -h <your-server-ip>
<your-server-ip>:6379> ping
PONG
<your-server-ip>:6379> exit
$
Nếu bạn có thể ping-PONG máy chủ Redis của mình thông qua máy chủ internet được kết nối như một máy chủ từ xa thì kết nối Redis từ xa hoạt động.
Cảnh báo an ninh
Tất cả những điều trên làm cho dữ liệu Redis của bạn hoàn toàn mở cho bất kỳ ai từ internet.
Để bảo mật cơ bản việc sử dụng requirepass
và protected-mode yes
cài đặt Redis trong cấu hình Redis (xem ở trên) và chặn các lệnh nguy hiểm của Redis (xem liên kết ở trên), để hiểu sâu hơn, hãy xem bài viết này và phần bảo mật trang Redis ).
Liên kết hữu ích
Một số liên kết trợ giúp Cách cài đặt và bảo mật Redis trên Ubuntu 18.04 và cách thiết lập tường lửa Ubuntu 18.04 .
Hy vọng nó giúp.
redis-cli -h hostname