Paso 3: Acceda a una instancia de DCS Redis en Windows
Esta sección describe cómo acceder a una instancia de DCS Redis 3.0 a través de una red pública mediante redis-cli en Windows.
El acceso público ayuda al personal de I+D a establecer un entorno local para el desarrollo o las pruebas, mejorando la eficiencia del desarrollo. Sin embargo, en el entorno de producción (entorno oficial), acceda a una instancia de DCS Redis a través de una VPC para garantizar un acceso eficiente.
Prerrequisitos:
Antes de utilizar redis-cli para acceder a una instancia de DCS Redis a través de una red pública, asegúrese de que:
- La versión de instancia es Redis 3.0 y se ha habilitado el acceso público.
- Si se necesitan certificados para acceder a la instancia de DCS, descargue el certificado desde la página de detalles de la instancia de DCS. Para más detalles, consulte Consulta de detalles de instancia.
Conexión a Redis con la encriptación SSL
- Asegúrese de que la regla de grupo de seguridad permita el acceso público a través del puerto 36379.
Cuando el encriptación SSL está habilitado, permita el acceso público a través del puerto 36379 e instale el cliente Stunnel.
Figura 1 Regla de grupo de seguridad (puerto 36379)
- Obtenga la dirección de acceso público y los certificados de la instancia en la página Basic Information de la instancia.
- La dirección de acceso público se muestra en la sección Connection.
- Los certificados se pueden descargar haciendo clic en Download Certificate for Public Access en la sección Connection. Después de la descompresión, obtendrá dcs-ca.cer (el certificado de clave pública en formato binario) y dcs-ca-bundle.pem (el archivo de certificado en formato de texto).
Figura 2 Consulta de la dirección de acceso público (SSL habilitado; puerto 36379)
- Descargue el paquete de instalación más reciente de Windows Stunnel (por ejemplo, stunnel-5.44-win32-installer.exe) desde https://www.stunnel.org/downloads.html en el dispositivo local de Windows.
- Ejecute el programa de instalación Stunnel e instale el cliente Stunnel.
- Configurar el cliente Stunnel: Haga clic con el botón derecho en en la barra de tareas y elija Edit Configuration. Agregue la siguiente configuración y, a continuación, guarde y salga.
[redis-client] client = yes CAfile = D:\tmp\dcs\dcs-ca.cer accept = 8000 connect = {public access address}
En la configuración:- client: indica Stunnel. El valor fijo es yes.
- CAfile: especifica un certificado de CA, que es opcional. Si se requiere un certificado de CA, descargue y descomprima el certificado dcs-ca.cer como se indica en 2. Si no es necesario, elimine este parámetro.
- accept: especifica el número de puerto de escucha definido por el usuario de Stunnel. Especifique este parámetro al acceder a una instancia de DCS mediante un cliente de Redis.
- connect: especifica la dirección de servicio y el número de puerto de Stunnel. Establezca este parámetro en la dirección de acceso público de instancia obtenida en 2.
Cuando la encriptación SSL está habilitada, la configuración es similar a la siguiente:
[redis-client] client = yes CAfile = D:\tmp\dcs\dcs-ca.cer accept = 8000 connect = 49.**.**.211:36379
- Haga clic con el botón derecho en l en la barra de tareas y elija Reload Configuration.
- Abra la herramienta CLI cmd.exe y ejecute el siguiente comando para comprobar si 127.0.0.1:8000 se está escuchando:
netstat -an |find "8000"
Supongamos que el puerto 8000 está configurado como el puerto de escucha en el cliente.
Si se muestra 127.0.0.1:8000 en el resultado devuelto y su estado es LISTENING, el cliente Stunnel se está ejecutando correctamente. Cuando el cliente de Redis se conecta a la dirección 127.0.0.1:8000, Stunnel reenviará las solicitudes a la instancia de DCS Redis.
- Acceda a la instancia de DCS Redis.
- Obtenga y descomprima el paquete de instalación del cliente Redis.
El paquete de instalación del cliente Windows Redis se puede descargar aquí
- Abra la herramienta CLI cmd.exe y ejecute comandos para ir al directorio donde se guarda el paquete de instalación del cliente de Redis descomprimido.
Por ejemplo, para ir al directorio D:\redis-64.3.0.503, ejecute los siguientes comandos:
D:
cd D:\redis-64.3.0.503
- Ejecute el siguiente comando para acceder a la instancia de DCS Redis elegida:
redis-cli -h 127.0.0.1 -p 8000 -a <password>
En el comando anterior:
- La dirección siguiente -h indica la dirección del cliente Stunnel, que es 127.0.0.1.
- El puerto siguiente -p es el puerto de escucha del cliente Stunnel, que se ha configurado en el campo de accept en 5. 8000 se usa un ejemplo aquí.
No utilice la dirección de acceso público y el puerto mostrados en la consola para los parámetros -h y -p.
<contraseña> indica la contraseña utilizada para iniciar sesión en la instancia de DCS Redis elegida. Esta contraseña se define durante la creación de una instancia de DCS Redis.
Ha accedido correctamente a la instancia si se muestra el siguiente resultado del comando:
127.0.0.1:8000>
Ingrese info y se devolverá la información de la instancia de DCS. Si no se devuelve ninguna información o se interrumpe la conexión, haga clic con el botón derecho en el icono Stunnel de la barra de tareas y elija Show Log Window en el menú contextual para mostrar los registros de Stunnel para el análisis de causa.
- Obtenga y descomprima el paquete de instalación del cliente Redis.
Conexión a Redis sin la encriptación SSL
- Asegúrese de que la regla de grupo de seguridad permita el acceso público a través del puerto 6379.
Cuando la encriptación SSL está deshabilitada, se puede acceder a la dirección de acceso público de instancia solo si se permite el acceso a través del puerto 6379.
Figura 3 Regla de grupo de seguridad (puerto 6379)
- Obtener la dirección de acceso público de la instancia.
La dirección de acceso público se muestra en la sección Connection.Figura 4 Consulta de la dirección de acceso público (SSL deshabilitado; puerto 6379)
- Obtenga y descomprima el paquete de instalación del cliente Redis.
El paquete de instalación del cliente Windows Redis se puede descargar aquí
- Abra la herramienta CLI cmd.exe y ejecute comandos para ir al directorio donde se guarda el paquete de instalación del cliente de Redis descomprimido.
Por ejemplo, para ir al directorio D:\redis-64.3.0.503, ejecute los siguientes comandos:
D:
cd D:\redis-64.3.0.503
- Ejecute el siguiente comando para acceder a la instancia de DCS Redis elegida:
redis-cli -h{acceso a la red pública IP } -p 6379 -a <contraseña>
En este comando, {acceso a la red pública IP } indica la dirección IP de la instancia de DCS Redis obtenida en 2. <contraseña> indica la contraseña utilizada para iniciar sesión en la instancia de DCS Redis elegida. Esta contraseña se define durante la creación de una instancia de DCS Redis.
Ha accedido correctamente a la instancia si se muestra el siguiente resultado del comando:
139.**.**.175:6379>
Ingrese info y se devolverá la información de la instancia de DCS.
Resolución de problemas
- Síntoma: se muestra "Error: Connection reset by peer" o se muestra un mensaje que indica que el host remoto cierra por la fuerza una conexión existente.
Posible causa 1: El grupo de seguridad está configurado incorrectamente. Debe habilitar el puerto 36379 o 6379.
Posible causa 2: Se ha habilitado el encriptación SSL, pero Stunnel no está configurado durante la conexión. La dirección IP mostrada en la consola se utilizó para la conexión. En este caso, siga estrictamente las instrucciones proporcionadas en Conexión a Redis con la encriptación SSL.
- Para obtener más información acerca de los errores de conexión de Redis, consulte Solución de problemas de conexión de Redis.