How to install and Secure Redis on Ubuntu 22.04
Tags: redis, ubuntu, linux, beginners
Published: 2022-05-25 10:07:26

Redis is a data store that can store key-value data structures on memory and disk by optimizing the rapid creation of applications through the availability of very versatile data structures. Moreover, you can use it as a NoSQL database or even a message broker with the Pub-Sub pattern. Redis is written in C programming language. The Redis project is developed and maintained by a project core team and, as of 2015, is sponsored by Redis Labs .

Therefore, it represents one of the best solutions for developing applications requiring rapid real-time data exchange. For different application contexts, it's one of the most used open-source databases nowadays.

This tutorial will help you install the Redis server and PHP extensions on an Ubuntu 22.04 LTS system.

Table of contents:

1. Prerequisites
2. Install Redis
3. Configure Redis
4. Install PHP Extension (Optional)
5. Connect to Redis Server
6. Managing the Redis Service

## Step 1: Prerequisites

- System running Ubuntu 22.04
- Access Terminal Command line
- Sudo or root privileges on local or remote machines

## Step 2: Install Redis
Redis packages are available under the default apt repository for the installation of Redis on an Ubuntu VPS.

Start by updating the packages to the latest version. Run the following command:
```
sudo apt update
```
Install Redis using the following command.
```
sudo apt install redis-server
```
Once the installation is completed, you can check the version of Redis using the following command.
```
redis-server -v
```

## Step 3: Configure Redis
Redis can start without a configuration file using a built-in default configuration. Aim to make Any extra parameter exchange, you can use ict configuration file: /etc/redis/redis.conf. Edit the Redis configuration file in a text editor to make changes:
```
sudo nano /etc/redis/redis.conf
```
### Configure Memory
Update the following values ​​in the Redis configuration file. You can use its configuration file /etc/redis/redis.conf:
```
maxmemory 256mb
maxmemory-policy allkeys-lru
```
### Configure supervisord
For Ubuntu, we can safely select the systemd as the supervised so that Redis can interact with your supervision tree. You can use its configuration file /etc/redis/redis.conf:
![How to install and Secure Redis on Ubuntu 22.04 - TechvBlogs](https://res.cloudinary.com/techvblogs/image/upload/v1653458885/blog/how-to-install-and-secure-redis-on-ubuntu-22-04/Selection_019_tlttfy_qskole.png)

### Binding to localhost
By default, the Redis server doesn't accept remote connections. You can connect to Redis only from 127.0.0.1 (localhost) - the machine where Redis is running.

If you are using a single server setup where the client connecting to the database is also running on the same host, you should not enable remote access. You can use its configuration file /etc/redis/redis.conf:
```
bind 127.0.0.1 ::1
```
![How to install and Secure Redis on Ubuntu 22.04 - TechvBlogs](https://res.cloudinary.com/techvblogs/image/upload/v1653458888/blog/how-to-install-and-secure-redis-on-ubuntu-22-04/Selection_020_lluvvu_y7qmbe.png)

Verify redis is listening on all interfaces on port 6379. Run the following command:
```
ss -an | grep 6379
```

### Configure Password
Configuring a Redis password enables one of its two built-in security features - the auth command, which requires clients to authenticate to access the database. You can use its configuration file /etc/redis/redis.conf:
![How to install and Secure Redis on Ubuntu 22.04 - TechvBlogs](https://res.cloudinary.com/techvblogs/image/upload/v1653459822/blog/how-to-install-and-secure-redis-on-ubuntu-22-04/Selection_038_qqb4hu.png)
Redis for the changes to take effect.

## Step 4: Install PHP Extension (Optional)
Next, if you need to use Redis with a PHP application, you need to install Redis PHP extension on your Ubuntu system. To install the Redis PHP extension, type:
```
sudo apt install php-redis
```
The installer will automatically enable the redis extension for all the pre-installed PHP versions. If your installer new PHP version after this, you can use the below command to help the redis module. Run the following command:
```
sudo phpenmod -v <Any PHP Version> -s ALL redis
```

## Step 5: Connect to Redis Server
Redis provides redis-cli utility to connect to the Redis server. Run the following command:
```
redis-cli
```
Few more examples of the redis-cli command-line tool.
```
redis-cli info
redis-cli info stats
redis-cli info server
```

## Step 6: Managing the Redis Service
Now that you have your service up and running, let's go over basic management commands.

To stop your service, run this command:
```
sudo systemctl stop redis-server
```
To start your service, run this command:
```
sudo systemctl start redis-server
```
To disable your service, run this command:
```
sudo systemctl disable redis-server
```
To enable your service, run this command:
```
sudo systemctl enable redis-server
```
To status your service, run this command:
```
sudo systemctl status redis-server
```
Thank you for reading this article.