Wie deaktiviert man GNU/Linux-Netzwerke dauerhaft?

Wie deaktiviert man GNU/Linux-Netzwerke dauerhaft?

Wie kann man es Ubuntu 12 unmöglich machen, mit dem Netzwerk zu kommunizieren, obwohl eine Netzwerkkarte vorhanden ist (an die möglicherweise ein Kabel angeschlossen ist)?

ich fanddiese Antwortwas das Entfernen der NIC-Treiber empfiehlt, aber ich habe Bedenken, dass der Treiber während eines Upgrades neu installiert werden könnte. Ich habe nicht viel Erfahrung mit der Administration von Linux.

Gibt es eine bewährte Methode zum Ausführen von GNU/Linux ohne Netzwerkfunktionen?

Antwort1

Sie können dies tun, indem Sie verschiedene Netzwerkfunktionen im Linux-Kernel deaktivieren. Es wäre destruktiv, ALLE Netzwerkoptionen zu deaktivieren (weil einige Programme für den Betrieb eine Loopback-Schnittstelle verwenden - eines davon ist der X-Server). Was jedoch helfen kann, ist, alle NIC-Gerätetreiber im Kernel zu deaktivieren. Dadurch wird sichergestellt, dass keine externe Netzwerkaktivität stattfindet.

Aber hier ist noch ein weiterer Punkt - wie Sie sagten:

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

Dies setzt voraus, dass der Benutzer, der die Updates durchführt, Root-Zugriff auf das System hat. Wenn dies der Fall ist, können Sie das Problem nicht mit einer softwareähnlichen Lösung lösen. Da der Benutzer Root-Zugriff (und Kenntnisse) hat, kann er alle Änderungen vornehmen.

Ein weiterer Punkt – auch wenn der Benutzer keinen Root-Zugriff hat – besteht die Möglichkeit, die Linux-Livedistribution zu booten und beliebige Änderungen an den Konfigurationsdateien des Computers vorzunehmen, einschließlich des Ersetzens des Kernel-Images durch ein neues (und damit der Aktivierung der NIC-Treiber).

Dabei dreht es sich um die einfache Tatsache: Wenn man physischen Zugriff auf den Computer hat, kann man an ihm alles ändern (vorausgesetzt, man verfügt über das nötige Wissen und die nötigen Werkzeuge).

Im Folgenden sind einige mögliche Wege aufgeführt:

  1. Wenn Benutzer keine fortgeschrittenen Linux-Kenntnisse haben,Kompilieren des Linux-Kernelsohne NIC-Treiber (USB-Netzwerkkarten nicht vergessen) im Kernel wird meiner Meinung nach ausreichen.

  2. Sie können die Netzwerkkarte auch in den BIOS-Einstellungen deaktivieren. Diese Einstellungen können jedoch wiederum zurückgesetzt werden, wenn Sie physischen Zugriff auf den Computer haben.

  3. Sie können festlegeniptablesRegeln zum Ablehnen jeglichen externen Netzwerkverkehrs.

  4. Verwendenphysisches Sicherheitsgerätwie Port-Lock-Kit;

Antwort2

CONFIG_NET=n

Diese Option steuert die Netzwerkunterstützung im Kernel. Wie in der Dokumentation selbst beschrieben, kann dies jedoch viele Userland-Programme beschädigen, die netzwerkartige Dinge tun:

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>.

Ich habe diese Option hier getestet:https://github.com/cirosantilli/linux-kernel-module-cheat/blob/71d673bac48f43a2e38f5e1e4f94b10da15b7cee/kernel_config_fragment#L58

Ergebnis: Viele (alle?) Netzwerksysteme geben einen Fehlerstatus zurück und unternehmen nichts, z. B.:

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

TODO: UNIX-Sockets? In dieser Version nicht vorhanden ncund ich war zu faul, es auszuprobieren.

Ich kann immer noch die Shell verwenden und grundlegende Dienstprogramme aufrufen. Aber beispielsweise der X-Server benötigt Netzwerksystemaufrufe, um zu funktionieren, und startet nicht richtig.

verwandte Informationen