Como configurar o inetd.conf para habilitar uma porta

Quando você abre uma porta no Iptables, não significa que existirá um Daemon(um programa rodando em background gerenciado pelo sistema) para aquela porta.


Quando você abre uma porta no Iptables, não significa que existirá um Daemon(um programa rodando em background gerenciado pelo sistema) para aquela porta. Para habilitar um Daemon para tal porta é necessário configurarmos o inetd.O inetd é um Daemon (geralmente os Daemons terminam com a letra “d”, exemplo: o daemon do TCP é o tcdp, ou seja, um programa que gerencia o TCP), e o arquivo de configuração dele é o “inetd.conf“.Precisei habilitar a inicialização do serviço de leitura de Sockets(usado em ligações de redes de computadores para um fim de um elo bidirecional de comunicação entre dois programas), e para isso precisava de uma porta “livre”, a porta 8080 já tem um serviço pré-definido, de webcaching.

Se você visualisar o arquivo de serviços

nano /etc/services

Verás que na linha correspondente a porta 8080 terá seguinte informação

nome      porta/protocolo        apelido     #comentário 
http-alt 8080/tcp webcache # WWW caching service
http-alt 8080/udp   # WWW caching service

Mas se verificar no nmap 127.0.0.1, mesmo que inicie algo nessa porta, não conseguira escutar nela, pois é necessário configurar o inetd.conf. Para editá-lo, abra-o com seu editor de preferência, para editar precisa ser root

su
nano /etc/inetd.conf

Assim que o mesmo estiver aberto, crie uma nova linha, sem comentário(sem o #) e inclua a porta 8080 (você também pode usar outra porta, mesmo se não houver nome para ela, só criar o nome no /etc/services) da seguinte maneira(serviço, tipo de soquete, protocolo, opções, usuário, caminho do serviço e o serviço opc.)

Meu_Servico    stream    tcp    nowait      root   /usr/bin/php5   /usr/bin/php5 -i

Isso quer dizer que: dei o nome de “Meu_Servico”; informei que o tipo de socket será “stream”; o protocolo será “tcp”; a opção será “nowait“(para outros serviços que não seja tcp, usa-se “wait”); o nome do usuaŕio “marcos”(se quiser o root, deve digitá-lo nesse campo); o caminho do programa, nesse caso eu pus “/usr/bin/php” como exemplo, mas se você quiser deixar para qualquer programa, basta deixá-lo em branco; e o último campo é opcional, serve pra passar argumentos pro programa servidor que será rodado(ex.: /bin/bash -i, rodará em modo interativo.).

Obs.: Se você não for mais usar a porta, precisa comentar a linha utilizando o “#” na frente. Após habilitar e salvar, agora basta reiniciar o inetd, no Debian (Não sei se também nas Debian-Likes(Ubuntu, Backtrack, Linux Mint) é o mesmo modo(caminho) de reiniciar), o comando é:

/etc/init.d/openbsd-inetd restart

Se você rodar um telnet na porta 8080, verás que já estará escutando:

telnet localhost 8080

Ao rodar esse comando, será encaminhado ao subshell, então dê um exit, para retornar ao Shell.

Pronto, agora a porta estará esperando pelo serviço.

Espero que gostem e comentem!


debian gnulinux servidores redes


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!