Como desabilitar permanentemente a rede GNU/linux?

Como desabilitar permanentemente a rede GNU/linux?

Como seria impossível para o Ubuntu 12 se comunicar com a rede, mesmo que haja uma placa de rede presente (que pode ter um cabo conectado)?

eu encontreiesta respostaque defende a remoção dos drivers da NIC, mas estou preocupado que o driver possa ser reinstalado durante uma atualização. Não tenho muita experiência em administração de Linux.

Existe uma prática recomendada para executar o GNU/linux sem recursos de rede?

Responder1

Você pode fazer isso desativando diferentes recursos de rede no kernel do Linux. Será destrutivo desabilitar TODAS as opções de rede (porque alguns programas usam interface de loopback para operação - um deles é o servidor X). Mas o que pode ajudar é desabilitar qualquer driver de dispositivo NIC do kernel. Isso garantirá que não haja atividade de rede externa.

Mas aqui está outro ponto - como você afirmou:

but I'm concerned that the driver might be re-installed during an upgrade

Isso pressupõe que o usuário que está fazendo atualizações tenha acesso root ao sistema. Se for esse o caso, você não pode resolver o problema com uma solução semelhante a um software. Como o usuário tem acesso root (e conhecimento) - o usuário poderá fazer qualquer alteração.

Outro ponto - mesmo que o usuário não tenha acesso root - existe a possibilidade de inicializar a distribuição Linux Live e fazer quaisquer alterações nos arquivos de configuração do computador, incluindo a substituição da imagem do kernel por uma nova (habilitando assim os drivers NIC).

Tudo isso tem a ver com o simples fato de que se alguém tiver acesso físico ao computador, poderá alterar qualquer coisa nele (desde que tenha conhecimento e ferramentas).

Então, a seguir estão algumas maneiras possíveis:

  1. Se os usuários não tiverem conhecimento avançado em Linux, entãocompilando o kernel do Linuxsem drivers NIC (não se esqueça das placas de rede USB) no kernel será suficiente IMO.

  2. Além disso, você pode desabilitar a placa de rede nas configurações do BIOS - mas, novamente, essas configurações podem ser redefinidas se alguém tiver acesso físico ao computador.

  3. Você pode definirtabelas de ipregras para rejeitar qualquer tráfego de rede externo.

  4. Usardispositivo de segurança físicacomo kit de bloqueio de porta;

Responder2

CONFIG_NET=n

Esta opção controla o suporte de rede no kernel. Mas, como dizem os próprios documentos, isso pode quebrar muitos programas de usuário que fazem coisas com aparência de rede:

menuconfig NET
    bool "Networking support"
    select NLATTR
    select GENERIC_NET_UTILS
    select BPF
    ---help---
      Unless you really know what you are doing, you should say Y here.
      The reason is that some programs need kernel networking support even
      when running on a stand-alone machine that isn't connected to any
      other computer.

      If you are upgrading from an older kernel, you
      should consider updating your networking tools too because changes
      in the kernel and the tools often go hand in hand. The tools are
      contained in the package net-tools, the location and version number
      of which are given in <file:Documentation/Changes>.

      For a general introduction to Linux networking, it is highly
      recommended to read the NET-HOWTO, available from
      <http://www.tldp.org/docs.html#howto>.

Eu testei essa opção em:https://github.com/cirosantilli/linux-kernel-module-cheat/blob/71d673bac48f43a2e38f5e1e4f94b10da15b7cee/kernel_config_fragment#L58

Resultado: muitos (todos?) Sistemas de rede retornam um status de falha e não fazem nada, por exemplo:

# nc -l -p 8000 127.0.0.1
nc: socket: Function not implemented

TODO: Soquetes UNIX? Não estava presente nessa versão nce tive preguiça de experimentar.

Ainda posso usar o shell e chamar utilitários básicos. mas, por exemplo, o X-server requer chamadas de sistema de rede para funcionar e não inicia corretamente.

informação relacionada