Redis es un almacén de valor clave flexible, configurable y de código abierto que utiliza un modelo de almacenamiento de datos del sistema en memoria para lograr un alto rendimiento. Tiene una serie de características que incluyen transacciones, conmutación por error automática, pub / sub y otras características únicas. Redis es ampliamente conocido por su rendimiento, escalabilidad, flexibilidad y amplio soporte de idiomas.
Se basa en la simplicidad con unas pocas líneas de código que recorren un largo camino. Independientemente de su trabajo de almacenamiento, tiene un soporte decente para alta disponibilidad y agrupación que hace un buen trabajo para mantener sus datos seguros. Redis está diseñado para servir a los clientes que desean un entorno seguro y confiable. Esta guía proporciona instrucciones para instalar y configurar Redis en un servidor CentOS 7.
Empezado
Antes de comenzar, necesitará lo siguiente:
- Un servidor dedicado que reinstalará CentOS7
- Dos gotas de cada tamaño.
- Acceda a su sistema a través de SSH con un sudo Usuario root.
> Para instalar los paquetes requeridos en CentOS7, primero ejecute el siguiente comando:
$ yum install wget make gcc
Paso 1: instala Redis
En este caso, es importante agregar los paquetes adicionales para Enterprise Linux (EPEL) y usarlos para instalar Redis. EPEL contiene varios paquetes de software de código abierto.
Utilice YUM para instalar EPEL:
$ sudo yum install epel-release
Después de instalar EPEL Redis, use yum para instalar:
$ sudo yum install redis -y
Espere unos minutos para que se complete el proceso, luego inicie Redis:
$ sudo systemctl start redis.service
Opcional: para iniciar Redis automáticamente en el arranque, ejecute el siguiente comando:
$ sudo systemctl enable redis
Ejecute el siguiente comando para verificar el estado de Redis:
$ sudo systemctl status redis.service
producción
redis.service - Redis persistent key-value database Loaded: loaded (/usr/lib/systemd/system/redis.service; disabled; vendor preset: disabled) Drop-In: /etc/systemd/system/redis.service.d └─limit.conf Active: active (running) since Thu 2018-03-01 15:50:38 UTC; 7s ago Main PID: 3962 (redis-server) CGroup: /system.slice/redis.service └─3962 /usr/bin/redis-server 127.0.0.1:6379
> Asegúrese de que Redis se haya instalado correctamente ejecutando el siguiente comando:
$ redis-cli ping
Si Redis se está ejecutando, debería ver una respuesta PONG. Esto muestra que la aplicación Redis se está ejecutando correctamente en su servidor web. Ahora podemos configurarlo para aumentar la seguridad en el sistema.
Paso 2: configurar Redis
La mejor manera de asegurarse de que Redis sea seguro es asegurarse de que el servidor en el que se ejecuta sea seguro. Esto se puede lograr asegurándose de que Redis esté conectado a un host local o una dirección IP reservada. También es importante asegurarse de que el servidor web tenga un firewall que se esté ejecutando correctamente.
Primero, abra el panel de configuración de Redis y ejecute el siguiente comando:
$ sudo vi /etc/redis.con
Busque una línea que muestre Corbata como sigue:
/etc/redis.conf bind 127.0.0.1
Si desea acceder a Redis desde un host diferente, se recomienda que se conecte a una dirección IP diferente para aumentar la exposición a terceros. Deberías tener algo como esto:
/etc/redis.conf bind your_private_ip
Si no desea vincular Redis a otro host, no es necesario que agregue reglas de firewall de Redis adicionales. La razón de esto es que todo el tráfico dirigido a Redis se usa en modo estándar, a menos que las políticas del firewall lo permitan abiertamente.
Sin embargo, a menos que planee conectarse a Redis desde otro host, es importante ajustar la configuración del firewall ejecutando el siguiente comando en su firewall:
$ sudo firewall-cmd --permanent --new-zone=redis
Especifique el puerto que debe permanecer abierto. De forma predeterminada, Redis usa el puerto 6397:
$ sudo firewall-cmd --permanent --zone=redis --add-port=6379/tcp
Ingrese una dirección IP privada pero segura para acceder a Redis:
$ sudo firewall-cmd --permanent --zone=redis -add source=client_server_private_IP
Vuelva a cargar la configuración del firewall del sistema para que se apliquen los siguientes cambios:
$ sudo firewall-cmd --reload
Con estas configuraciones, un firewall actualiza y aplica estas reglas en una zona Redis específica tan pronto como se muestra la información de la dirección IP de su cliente.
Paso 3: configurar la contraseña de Redis
Este proceso habilita la funcionalidad de sus componentes de seguridad, que requieren que sus clientes verifiquen su identidad antes de que puedan acceder a los datos del sistema. En este caso, el código de acceso de la clave se configura directamente en Redis de la siguiente manera:
/etc/redis.conf
Abre el archivo:
$ sudo vi /etc/redis.conf
Haga clic en la sección SEGURIDAD y busque el siguiente texto:
/etc/redis.conf # requirepass foobared
Asegúrese de comentar la política eliminándola # y cambia la sección que dice Zócalo a una contraseña más segura
Cuando escriba el comando anterior, verá el mismo código de acceso. Por lo tanto, debe crear una nueva contraseña y realizar algunos cambios en las palabras entre comillas.::
echo "HostAdvice" | sha256sum
La contraseña debe ser fuerte y larga para garantizar que su sistema sea seguro.
La salida del comando debe ser:
/etc/redis.conf requirepass password_copied_from_output
Una vez que haya configurado la contraseña, ahora puede acceder a Redis:
$redis-cli
Ejecute el siguiente comando para probar que la contraseña creada para Redis funciona e intente configurar un valor de clave antes del proceso de autenticación:
127.0.0.1:6379> set key1 10
Si Redis no se ha autenticado, se devuelve el siguiente error:
Output (error) NOAUTH Authentication required.
El siguiente comando se autentica con su contraseña en su archivo Redis:
127.0.0.1:6379> auth your_redis_password
La aplicación Redis indica que la contraseña ha sido autenticada con el texto “OK”.
Luego ejecute el comando anterior y asegúrese de que tenga éxito.
Use el comando para salir del sistema
redis-cli. 127.0.0.1:6379> quit
A estas alturas, las personas no autorizadas deberían tener dificultades para acceder a sus archivos de Redis.
Paso 4: Establecer la propiedad y los permisos de los datos
En esta sección se describen varios propietarios de datos y permisos de archivos que es posible que deba cambiar para proteger su instalación de Redis. Esto es para garantizar que solo el usuario autorizado acceda a Redis.
Puede hacer esto escribiendo el siguiente comando:
$ ls -l /var/lib | grep redis
La salida debería verse así:
drwxr-xr-x 2 redis redis 4096 Aug 6 09:32 redis
Para asegurarse de que el usuario de Redis pueda acceder al directorio de datos, cambie la configuración de permisos para autorizar el archivo 770 de la siguiente manera:
$ sudo chmod 770 /var/lib/redis
Además, cambie la carpeta de configuración de la aplicación con el permiso de archivo 644 en modo estándar. Ejecute el siguiente comando:
$ ls -l /etc/redis.conf
La salida debería verse así:
rw-r--r-- 1 root root 30176 Jan 14 2014 /etc/redis.conf
La autorización 664 puede ser legible, lo que puede ser un problema de seguridad crítico. Así que configure los permisos de archivo. Para hacer esto, ejecute el siguiente comando
sudo chown redis:redis /etc/redis.conf
Cambie la propiedad y el permiso para asegurarse de que solo el usuario de Redi pueda acceder al archivo:
$ sudo chmod 660 /etc/redis.conf
Verifique los permisos con el siguiente comando:
$ ls -l /etc/redis.conf
La salida debería verse así:
total 40 -rw------- 1 redis redis 29716 Sep 22 18:32 /etc/redis.conf
Reinicie Redis para confirmar que está configurado:
$ sudo service redis-server restart
Felicitaciones, ahora tiene Redis completamente instalado y configurado para que su sistema sea seguro.
Conclusión
Esto es suficiente para comenzar a instalar Redis en su servidor. Esto le facilita aprovechar las funciones de seguridad de Redis. La característica de seguridad más importante a considerar es el firewall de la aplicación para evitar que usuarios no autorizados accedan a su servidor.