TCPWrappers ainda em uso?

3

De acordo com meu entendimento atual, os tcpwrappers podem ser usados via inetd ou xinetd. Ultimamente tenho sido informado de que o inetd / xinetd surgiu para fazer um uso mais eficiente do hardware nos dias anteriores e, portanto, raramente é visto hoje em dia.

Minha pergunta é, se os tcpwrappers agora também são considerados uma técnica ultrapassada. Se sim, qual é o substituto deles?

    
por benjamin 12.03.2011 / 23:38

5 respostas

4

O tcpwrappers foi originalmente implementado como um programa autônomo que verificaria hosts.allow e hosts.deny. Se a conexão passou, então o daemon desejado seria iniciado para executar uma única solicitação. A configuração do inetd seria configurada para executar o wrapper tcpd com o programa e as opções do daemon como parâmetros.

xinted é um inetd estendido. Tem significativamente mais opções de configuração do que o antigo inetd. Os serviços triviais, como echo, chargen, time, daytime e discard, são internos. Muitos processos daemon que frequentemente são executados continuamente podem ser executados a partir do xinetd. Isso geralmente é feito quando o serviço é raramente usado. Isso limita o número de processos que precisam ser executados à custa de tempos de inicialização mais lentos. Serviços que podem ser executados dessa maneira incluem servidores de email, vnc, apache e muitos outros daemons.

O inetd executa as mesmas tarefas que o xinetd, mas com uma configuração simples de uma linha para cada serviço. Isso limita a capacidade de configuração, mas simplifica a configuração automática. Os procedimentos de instalação que podem configurar automaticamente o inetd podem não conseguir fazer o mesmo para o xinetd. Muitos sites agora optam por usar o xinetd em vez de inetd.

O código do wrapper foi transformado em uma biblioteca e é frequentemente vinculado a daemons que estão sempre em execução. Esses daemons usarão a biblioteca para verificar as conexões de entrada antes de usá-las. Isso permite restrições baseadas em nome que não podem ser implementadas de maneira confiável em um firewall. Isso inclui várias verificações baseadas em DNS. Um dos daemons que geralmente é construído usando a biblioteca é xinetd.

    
por 13.03.2011 / 05:08
4

Serviços que são executados constantemente em determinadas portas. A razão pela qual o inetd e o semelhante salvaram a memória é que eles não exigiam que os daemons funcionassem o tempo todo, apenas sob demanda. Atualmente, os daemons sob demanda são muito raros.

Coisas como Apache, MySQL e Tomcat permanecem em execução e ouvindo suas portas designadas. Alguns até criam novos processos para lidar com cada conexão, outros apenas lidam com isso no mesmo processo. Por não ter que carregar um monte de código cada vez que uma conexão é iniciada, o custo para estabelecer uma conexão específica é menor do que seria com processos semelhantes ao inetd.

    
por 12.03.2011 / 23:44
4

Você está errado sobre TCPwrappers e [x] inetd.

tcpwrappers can be used via inetd or xinetd

Sim - mas você pode usá-los com qualquer daemon de rede - é apenas uma questão de usar uma biblioteca diferente quando você cria o aplicativo.

inetd/xinetd came into existence to make more efficient use of hardware in earlier days and are therefore seen rarely nowadays

Não, não realmente - rodar serviços via [x] inetd sempre foi muito ineficiente comparado a um daemon independente - a diferença que eles fazem é que o código é muito mais simples e é mapeado apenas na memória quando uma conexão é feita. / p>

Isso ainda é verdade hoje - se você estiver executando um servidor da Web dedicado, não há muito sentido em manter os daemons em execução, digamos, mensagens POP se houver apenas um único usuário se conectando algumas vezes por dia para coletar e-mails gerados tarefas agendadas. Ou iniciar um servidor VNC quando precisar de acesso remoto à GUI em uma máquina sem cabeçalho.

Uma das coisas boas sobre os tcpwrappers é que eles tornam as respostas complexas de script muito simples em comparação com um firewall baseado em kernel.

    
por 13.03.2011 / 01:51
3

O inetd / xinetd surgiu nos dias em que as pessoas estavam executando muitos serviços acessíveis remotamente em cada máquina - incluindo coisas como hora / data / chargen etc. Hoje em dia, dada uma internet mais hostil e uma maior consciência do potencial de Usando essas coisas para iniciar ataques DDOS, a maioria das máquinas rodará muito poucos servidores (muito poucos devem estar executando algo diferente de SSH), com máquinas específicas para coisas como DNS, SMTP, etc. Assim, os daemons mais novos que implementam tais protocolos geralmente têm tudo o que os wrappers faziam dentro deles.

Além disso, os recursos de firewall podem ser usados para fornecer a maior parte do que o tcpd / udpd costumava fazer.

    
por 12.03.2011 / 23:45
2

Essencialmente o trabalho que o TCP-Wrappers faz para serviços sendo chamados através de um "super servidor" pode ser substituído (por outros processos e um "super servidor") por firewalls com estado, através do iptables / netfilter no caso da maioria dos Linux modernos. instalações (e para funcionalidade básica, as regras de firewall sem estado também funcionariam).

    
por 13.03.2011 / 00:26

Tags