não pode alcançar a porta nginx com o netcat

2

Eu tenho este arquivo de configuração simples do nginx:

server {
  listen 4000;
  location / {
    root /usr/share/nginx/html;
    index index.html index.htm;
    try_files $uri $uri/ /index.html =404;
  }
}

O serviço nginx está sendo executado, mas se eu executar:

nc -z localhost 4000

Eu não recebo uma resposta, mas se eu verificar a porta 80, ela funciona:

nc -z localhost 80
Connection to localhost 80 port [tcp/http] succeeded!

Estou executando o nginx na janela de encaixe com as portas 80 e 4000 expostas.

    
por Simon Ernesto Cardenas Zarate 18.06.2018 / 20:53

1 resposta

2

Há duas coisas envolvidas aqui.

  1. Possivelmente você está usando dois nc s diferentes. Um mudo e um verboso. Nesse caso, para o mudo, use a opção -v para que ele fale ou use o código de saída $? . (0 para sucesso, 1 para falha.)

  2. Se 1. não for o caso, use -v ou $? de qualquer forma. Difícil dizer qual pode ser a razão desse comportamento misto para diferentes portas.

Ilustração:

$ nc -z localhost 8080
$ echo $?
0
$ nc -z localhost 8081
$ echo $?
1
$ nc -zv localhost 8081
nc: connect to localhost port 8081 (tcp) failed: Connection refused
nc: connect to localhost port 8081 (tcp) failed: Connection refused
$ nc -zv localhost 8080
Connection to localhost 8080 port [tcp/http-alt] succeeded! 
    
por 18.06.2018 / 21:04