
Actualmente en mi configuración he configurado un dominio example.com
para conectarme a un sitio web. Luego control.example.com
conéctese a un panel de control con el puerto 2054. Entonces, para acceder al panel de control sería https://control.example.com:2054
; sin embargo, por alguna razón también puedo acceder al panel de control https://example.com:2054
sin el subdominio.
¿Hay alguna manera de evitar esto y solo hacerhttps://control.ejemplo.com:2054/mientras previenehttps://ejemplo.com:2054/de acceder?
Respuesta1
¿Hay alguna manera de evitar esto y solo hacerhttps://control.ejemplo.com:2054/mientras previenehttps://ejemplo.com:2054/de acceder?
Sí. La forma más sencilla probablemente sea utilizar Nginx comoproxy inverso. Puede encontrar una descripción básica del uso de Nginx en esta capacidad.aquí.
En resumen, querrás configurar dos bloques de servidores similares a los siguientes:
# Block access to example.com:2054, assuming Nginx is servicing that port.
#
server {
listen 2054;
server_name example.com;
# 404 - Not Found is returned, but 403 - Forbidden is another option
location / {
return 404;
}
}
# another (unblocked) virtual host on the same port e.g. control.example.com:2054
#
server {
listen 2054;
server_name control.example.com;
# Proxy our web data
location / {
proxy_pass http://10.0.0.10:3005;
}
}
Este ejemplo supone que se utilizan dos puertos diferentes, ya que esta configuración es fácil de manejar. El puerto con el que desea acceder públicamente al servicio debe reenviarse, el puerto de servicio interno (real) no. La proxy_pass
IP debe (obviamente) ser la IP de la PC que ejecuta el servicio al que desea acceder.
En caso de que la solución anterior no sea adecuada para usted, tenga en cuenta que es posible que pueda hacer algo coniptableso similar.