
Atualmente na minha configuração configurei um domínio example.com
para conectar-se a um site. Em seguida, control.example.com
conecte-se a um painel de controle com a porta 2054. Então, para acessar o painel de controle seria https://control.example.com:2054
; no entanto, por algum motivo, também posso acessar o painel de controle https://example.com:2054
sem o subdomínio.
Existe uma maneira de evitar isso, e apenas fazerhttps://control.example.com:2054/enquanto previnehttps://example.com:2054/de acessar?
Responder1
Existe uma maneira de evitar isso, e apenas fazerhttps://control.example.com:2054/enquanto previnehttps://example.com:2054/de acessar?
Sim. A maneira mais simples provavelmente é usar o Nginx como umproxy reverso. Uma visão geral básica do uso do Nginx nesta capacidade pode ser encontradaaqui.
Resumindo, você desejaria configurar dois blocos de servidor semelhantes ao seguinte:
# 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 exemplo pressupõe que duas portas diferentes estejam em uso, pois essa configuração é fácil de manusear. A porta com a qual você deseja acessar publicamente o serviço deve ser encaminhada, a porta de serviço interna (real) não. O proxy_pass
IP deve (obviamente) ser o IP do PC que executa o serviço que você deseja acessar.
Caso a solução acima não seja adequada para você, observe que você pode fazer algo comtabelas de ipou similar.