Si estás utilizando Nginx Proxy Manager (NPM), puedes añadir autenticación de una manera bastante sencilla a través de la interfaz gráfica.

Aquí te explico cómo hacerlo con autenticación básica:
Pasos para configurar la autenticación básica en Nginx Proxy Manager:
Configura la autenticación:
En el menú ve a la pestaña de Access Lists

Primero escribe el nombre en Name.
Marca la opción Satisfy Any (esto permitirá que cualquiera de los métodos configurados sea suficiente para autenticarse).
Crea un authorization indicando el Username y Password.
Pulsa en save.
Ahroa vamos a asigarlo:
Selecciona el Proxy Host:
- Ve a la pestaña «Proxy Hosts».

- Encuentra el proxy que apunta a tu servidor Ollama y haz clic en Edit.

Dentro de Access List elige la nueva:

Verifica la configuración:
- Accede a tu dominio, y se te pedirá un nombre de usuario y contraseña.
Realizar peticiones HTTP:
En este ejemplom en Python vamos a ver cómo podemos crear una petición HTTP con esta credencial.
import requests from requests.auth import HTTPBasicAuth # URL del dominio donde está Ollama detrás de Nginx url = 'https://tudominio.com/api-endpoint' # Credenciales username = 'user' password = 'pass123' # Hacer la solicitud con autenticación básica response = requests.get(url, auth=HTTPBasicAuth(username, password)) # Imprimir el resultado de la respuesta if response.status_code == 200: print('Respuesta exitosa:', response.json()) # Si la respuesta es JSON else: print(f'Error {response.status_code}: {response.text}')
auth=HTTPBasicAuth(username, password)
: Esto agrega el encabezado Authorization
a la solicitud con las credenciales codificadas en Base64.
response.status_code
: Verifica el código de estado HTTP para saber si la solicitud fue exitosa.
response.json()
: Si el servidor devuelve una respuesta en formato JSON, puedes convertirla a un diccionario de Python.
Cambia las credenciales por las tuyas.

2 comentarios en «Añadir autenticación en Nginx Proxy Manager para tus dominios»