Redis là kho lưu trữ khóa/giá trị trong bộ nhớ nguồn mở, được sử dụng làm cơ sở dữ liệu, bộ nhớ đệm và môi giới tin nhắn. Đây là cơ sở dữ liệu khóa-giá trị trong bộ nhớ phân tán với độ bền tùy chọn. Nó hỗ trợ các cấu trúc dữ liệu phổ biến như chuỗi, hàm băm, danh sách, tập hợp, bitmap, tập hợp được sắp xếp, HyperlogLog, luồng và chỉ mục không gian địa lý với các truy vấn bán kính.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt và cấu hình Redis Server trên Ubuntu 20.04 LTS. Đầu tiên, chúng tôi sẽ cài đặt Redis Server, sau đó bảo mật cài đặt để sẵn sàng cho sản xuất.
Điều kiện tiên quyết
Đối với hướng dẫn này, chúng tôi sẽ cài đặt Redis Server trên Ubuntu 20.04 với 1GB RAM và 2 lõi CPU. Đây chỉ là để thử nghiệm và bạn sẽ cần nhiều hơn thế này cho sản xuất của mình.
Những gì chúng ta sẽ làm:
Chạy các lệnh apt bên dưới.
Sau đó, cài đặt gói Redis-server từ kho lưu trữ Ubuntu chính thức bằng lệnh apt bên dưới.
Sau khi cài đặt hoàn tất, bạn sẽ nhận được thông báo lỗi về dịch vụ Redis không khởi động được, hãy bỏ qua thông báo lỗi và chúng tôi sẽ cấu hình ở bước tiếp theo.
Đi tới thư mục '/etc/redis' và chỉnh sửa tệp cấu hình 'redis.conf' bằng trình soạn thảo vim.
Trước tiên, chúng ta cần chọn một địa chỉ IP 'bind' sẽ chạy dịch vụ Redis. Không nên sử dụng địa chỉ IP công khai cho dịch vụ Redis hoặc nếu bạn đang chạy dịch vụ Redis nhiều/cụm, bạn nên sử dụng mạng nội bộ.
Thay đổi địa chỉ 'bind' bằng địa chỉ IP localhost trong ví dụ này.
Sau đó, chúng ta cần thiết lập cách dịch vụ Redis sẽ chạy trên máy chủ. Vì chúng ta đang sử dụng máy chủ Ubuntu và systemd, nên chúng ta cần thay đổi cấu hình dòng 'supervised' thành 'systemd'.
Lưu và đóng.
Bây giờ hãy khởi động lại dịch vụ Redis và thêm nó vào thời gian khởi động.
Bây giờ hãy đảm bảo không có lỗi nào và sau đó kiểm tra trạng thái của nó.
Kết quả là dịch vụ Redis đã hoạt động và chạy trên Ubuntu 20.04 Server.
Bây giờ hãy kiểm tra cổng Redis mặc định '6379' bằng lệnh netstat bên dưới.
Và bạn sẽ nhận được kết quả là dịch vụ Redis đang chạy trên địa chỉ IP localhost với mặc định '6379'.
Bây giờ hãy kiểm tra Redis bằng lệnh 'redis-cli' như bên dưới.
Và bạn sẽ nhận được kết quả như bên dưới.
Nếu cài đặt của bạn đúng, bạn sẽ nhận được phản hồi của Redis Server với 'PONG' hoặc phản hồi với văn bản mà bạn đã nhập sau tùy chọn 'ping'.
Quá trình cài đặt và cấu hình cơ bản của Redis Server đã hoàn tất thành công.
Đi tới thư mục '/etc/redis' và chỉnh sửa tệp cấu hình 'redis.conf'.
Trong phần 'bind', hãy thay đổi địa chỉ IP bằng địa chỉ IP mạng nội bộ của riêng bạn.
Lưu và đóng.
Và bây giờ dịch vụ Redis sẽ chạy dưới 'INTERNAL-IP-ADDRESS'.
Để bật Xác thực mật khẩu cho máy chủ Rediser, bạn sẽ cần bỏ chú thích phần 'requirepass' trên tệp 'redis.conf' và nhập mật khẩu mạnh của bạn sau đó.
Thay đổi 'HakaseLabsRedisPasswd' bằng mật khẩu mạnh của bạn. Và bây giờ xác thực mật khẩu cho Redis đã được bật.
Để thay đổi hoặc tắt lệnh Redis, bạn có thể sử dụng tùy chọn 'rename-command'. Chỉnh sửa tệp cấu hình Redis 'redis.conf' và thêm một số cấu hình bên dưới.
Lưu và đóng.
Sau khi hoàn tất, hãy khởi động lại dịch vụ Redis bằng lệnh systemctl bên dưới.
Và bảo mật Redis cơ bản để bảo mật cài đặt Redis đã được áp dụng cho máy chủ của chúng tôi.
Cân nhắc thêm, bạn cũng có thể cần hỗ trợ 'Mã hóa dữ liệu' cho Redis, cũng như mã hóa bảo mật cần thiết ở phía ứng dụng.
Thay đổi '127.0.0.1' bằng địa chỉ IP của riêng bạn.
Sau khi kết nối với máy chủ, hãy thử lệnh ping.
Bây giờ bạn sẽ nhận được kết quả như bên dưới.
Bạn đang gặp lỗi vì bạn cần xác thực trước khi gọi bất kỳ lệnh nào trên shell Redis CLI.
Chạy lệnh sau để xác thực với máy chủ Redis.
Sau khi xác thực, bạn có thể thử lệnh ping và bạn sẽ nhận được phản hồi từ máy chủ Redis.
Dưới đây là kết quả sau khi bạn được xác thực với Máy chủ Redis.
Dưới đây là kết quả lỗi của các lệnh đó.
Tiếp theo, chạy các lệnh 'CUSTOM' cho từng lệnh.
Tạo Khóa mới bằng lệnh redis-cli như bên dưới.
Bây giờ hãy xóa tất cả các khóa và dữ liệu bằng lệnh 'FLUSHALL' đã đổi tên là 'DELITALL'.
Đối với lệnh 'CONFIG', bạn có thể thử truy xuất hoặc thiết lập giá trị mới của cấu hình Redis Server. Lệnh 'CONFIG' được đổi tên thành 'MYSERVERCONF'.
Và bên dưới là kết quả của lệnh tùy chỉnh được đổi tên mới này.
Quá trình cài đặt cơ bản của Redis Server trên Ubuntu 20.04 đã hoàn tất và bảo mật cơ bản cho Redis Server đã được áp dụng.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt và cấu hình Redis Server trên Ubuntu 20.04 LTS. Đầu tiên, chúng tôi sẽ cài đặt Redis Server, sau đó bảo mật cài đặt để sẵn sàng cho sản xuất.
Điều kiện tiên quyết
Đối với hướng dẫn này, chúng tôi sẽ cài đặt Redis Server trên Ubuntu 20.04 với 1GB RAM và 2 lõi CPU. Đây chỉ là để thử nghiệm và bạn sẽ cần nhiều hơn thế này cho sản xuất của mình.
Những gì chúng ta sẽ làm:
- Cài đặt Redis Server
- Cấu hình cơ bản của Redis Server
- Bảo mật Redis Server
- Kiểm tra
Bước 1 - Cài đặt Redis Server
Đầu tiên, chúng ta sẽ cập nhật tất cả các kho lưu trữ trên hệ thống Ubuntu và nâng cấp tất cả các gói.Chạy các lệnh apt bên dưới.
Mã:
sudo apt update
sudo apt nâng cấp
Mã:
sudo apt install redis-server
Bước 2 - Cấu hình cơ bản cho máy chủ Redis
Trong bước này, chúng ta sẽ thiết lập máy chủ Redis cơ bản. Trên hệ thống Linux, cấu hình Redis nằm ở thư mục '/etc/redis'.Đi tới thư mục '/etc/redis' và chỉnh sửa tệp cấu hình 'redis.conf' bằng trình soạn thảo vim.
Mã:
cd /etc/redis/
vim redis.conf
Thay đổi địa chỉ 'bind' bằng địa chỉ IP localhost trong ví dụ này.
Mã:
bind 127.0.0.1
Mã:
supervised systemd
Bây giờ hãy khởi động lại dịch vụ Redis và thêm nó vào thời gian khởi động.
Mã:
systemctl restart redis-server
systemctl enable redis-server
Bây giờ hãy đảm bảo không có lỗi nào và sau đó kiểm tra trạng thái của nó.
Mã:
systemctl status redis-server
Kết quả là dịch vụ Redis đã hoạt động và chạy trên Ubuntu 20.04 Server.
Bây giờ hãy kiểm tra cổng Redis mặc định '6379' bằng lệnh netstat bên dưới.
Mã:
ss -plnt4
Bây giờ hãy kiểm tra Redis bằng lệnh 'redis-cli' như bên dưới.
Mã:
redis-cli ping
redis-cli ping "Hello Redis"
Nếu cài đặt của bạn đúng, bạn sẽ nhận được phản hồi của Redis Server với 'PONG' hoặc phản hồi với văn bản mà bạn đã nhập sau tùy chọn 'ping'.
Quá trình cài đặt và cấu hình cơ bản của Redis Server đã hoàn tất thành công.
Bước 3 - Bảo mật cài đặt Redis
Trong bước này, chúng ta sẽ bảo mật cài đặt Redis của mình. Có 3 điều bạn phải biết về việc bảo mật Redis Server.1. Bảo mật mạng
Bảo mật mạng cho máy chủ Redis liên quan đến cấu hình 'bind' trên cấu hình Redis 'redis.conf'. Bạn nên sử dụng mạng riêng nội bộ cho cài đặt Redis của mình và không sử dụng mạng công cộng.Đi tới thư mục '/etc/redis' và chỉnh sửa tệp cấu hình 'redis.conf'.
Mã:
cd /etc/redis/
vim redis.conf
Mã:
bind INTERNAL-IP-ADDRESS
Và bây giờ dịch vụ Redis sẽ chạy dưới 'INTERNAL-IP-ADDRESS'.
2. Xác thực mật khẩu
Xác thực mật khẩu cho Redis sẽ cung cấp cho bạn quyền kiểm soát truy cập vào máy chủ Redis của mình. Đây là một lớp bảo mật nhỏ giúp tăng cường bảo mật máy chủ Redis của bạn và hiện tại nó chưa được bật theo mặc định khi cài đặt.Để bật Xác thực mật khẩu cho máy chủ Rediser, bạn sẽ cần bỏ chú thích phần 'requirepass' trên tệp 'redis.conf' và nhập mật khẩu mạnh của bạn sau đó.
Mã:
requirepass HakaseLabsRedisPasswd
3. Tắt lệnh Redis nguy hiểm
Redis cung cấp một tính năng để tắt một số lệnh Redis cụ thể. Tính năng này có thể được sử dụng để đổi tên hoặc tắt một số lệnh nguy hiểm như 'FLUSHALL' để xóa tất cả dữ liệu, lệnh 'CONFIG' để thiết lập tham số cấu hình thông qua Redis CLI, v.v.Để thay đổi hoặc tắt lệnh Redis, bạn có thể sử dụng tùy chọn 'rename-command'. Chỉnh sửa tệp cấu hình Redis 'redis.conf' và thêm một số cấu hình bên dưới.
Mã:
# rename-command COMMAND "CUSTOM"
rename-command FLUSHALL "DELITALL"
rename-command CONFIG "MYSERVERCONF"
Sau khi hoàn tất, hãy khởi động lại dịch vụ Redis bằng lệnh systemctl bên dưới.
Mã:
systemctl restart redis-server
Cân nhắc thêm, bạn cũng có thể cần hỗ trợ 'Mã hóa dữ liệu' cho Redis, cũng như mã hóa bảo mật cần thiết ở phía ứng dụng.
Bước 4 - Kiểm tra
Trong bước này, chúng ta sẽ kiểm tra triển khai Redis Server của mình bằng dòng lệnh 'redis-cli'.1. Kiểm tra máy chủ và xác thực
Kết nối với máy chủ Redis bằng lệnh redis-cli bằng cách chỉ định tên máy chủ/địa chỉ IP và cổng của máy chủ redis.
Mã:
redis-cli -h 127.0.0.1 -p 6379
Sau khi kết nối với máy chủ, hãy thử lệnh ping.
Mã:
ping
ping "Hello Redis"
Bạn đang gặp lỗi vì bạn cần xác thực trước khi gọi bất kỳ lệnh nào trên shell Redis CLI.
Chạy lệnh sau để xác thực với máy chủ Redis.
Mã:
AUTH HakaseLabsRedisPasswd
Mã:
ping
ping "Xin chào Redis"
2. Kiểm tra lệnh bị vô hiệu hóa/đổi tên
Chạy tất cả các lệnh mà chúng ta đã đổi tên trên shell và bạn sẽ nhận được lỗi lệnh.
Mã:
FLUSHALL
CONFIG
Tiếp theo, chạy các lệnh 'CUSTOM' cho từng lệnh.
Tạo Khóa mới bằng lệnh redis-cli như bên dưới.
Mã:
SET Tên "Hakase Labs"
SET Blog "Howtoforge.com"
Khóa *
Mã:
DELITALL
Mã:
MYSERVERCONF get bind
MYSERVERCONF get requirepass
Quá trình cài đặt cơ bản của Redis Server trên Ubuntu 20.04 đã hoàn tất và bảo mật cơ bản cho Redis Server đã được áp dụng.