Tentando abrir uma porta usando CentOS

Tentando abrir uma porta usando CentOS

(Sou novo nisso!) Estou executando um servidor virtual rodando CentOS. Estou tentando executar um servidor que escuta na porta 37760. O código que estou executando é executado com êxito, então executo

netstat -lptu

Para mostrar uma lista de portas em escuta e

tcp        0      0 localhost.localdomain:37760 *:*      LISTEN      15006/node

é uma das entradas. Porém, quando vou para ip:37760 no meu navegador, a conexão atinge o tempo limite!

Tenho certeza que é muito óbvio, mas alguma ajuda seria muito útil!!

Obrigado

Responder1

A netstatsaída mostra que nodeestá escutando apenas no host local, então você precisa usar um navegador nesse console virtual e navegar localhost:37760ou atualizar a configuração do que quer que nodeesteja para escutar em todos os endereços.

Responder2

Há uma excelente chance de que seu firewall local esteja bloqueando a conexão.

Verifique seu iptablesfirewall local. Você pode ver o estado atual executando algo como:

iptables -vnL

Isso produzirá uma saída semelhante a:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
9192K 3593M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
   18   740 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
1763K  180M ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
 6124  367K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22

Essas quatro regras são assim:

  • Permitir tráfego associado a uma conexão existente
  • Permitir tráfego ICMP.
  • Permitir todo o tráfego pela interface de loopback
  • Permitir novas conexões na porta TCP 22 (ssh)

Você pode ver o estado persistente em /etc/sysconfig/iptables. Você pode usar a system-config-firewallferramenta se desejar um mecanismo de configuração GUI ou pode aproveitar esta oportunidade para aprender mais sobre como funciona a configuração do firewall na linha de comando.

Responder3

CentOS, por padrão, transformaTabelas IPativado e impõe uma política de segurança bastante rígida com o SELinux. Se você estiver tentando acessar a porta de outro computador, a configuração padrão do IPTables descarta todas as conexões de entrada, exceto SSH. Se você não está preocupado com segurança, você pode simplesmente executar

sudo service iptables stop 

para desligar o IPTables completamente.

A outra coisa que pode estar atrapalhando você, no CentOs, éSELinux. Isso atua como uma segunda camada de segurança nos processos e no sistema de arquivos e evita que alguns servidores tenham permissão para servir arquivos por padrão, uma vez que eles não têm acesso ao diretório de onde servir os arquivos. Você tem algumas opções aqui.

1) Desligue o SELinux alterando a configuração /etc/selinux/configconforme mostrado abaixo:

SELINUX=disabled in /etc/selinux/config

2) Mais preferível, use audit2allowpara verificar se o SELinux bloqueia seu servidor e, em caso afirmativo, gere uma nova política de segurança para permitir o servidor. Veja issoCentOSEntrada Wiki, bem comoesseentrada do blog.

Por fim, se você estiver executando em uma VM, certifique-se de que sua VM tenha acesso à rede e permissões para usar a configuração NIC do hardware subjacente.

informação relacionada