¿Cómo se podría hacer imposible que Ubuntu 12 se comunique con la red, aunque haya una tarjeta de red presente (que puede tener un cable conectado)?
encontréesta respuestaque recomienda eliminar los controladores de la NIC, pero me preocupa que el controlador pueda volver a instalarse durante una actualización. No tengo mucha experiencia en la administración de Linux.
¿Existe una mejor práctica para ejecutar GNU/linux sin capacidades de red?
Respuesta1
Puede hacer esto deshabilitando diferentes capacidades de red en el kernel de Linux. Será destructivo desactivar TODAS las opciones de red (porque algunos programas utilizan una interfaz de bucle invertido para su funcionamiento; uno de ellos es el servidor X). Pero, ¿qué puede ayudar? Deshabilite los controladores de dispositivos NIC del kernel. Esto garantizará que no haya actividad de la red externa.
Pero aquí hay otro punto, como usted dijo:
but I'm concerned that the driver might be re-installed during an upgrade
Esto supone que el usuario que realiza las actualizaciones tiene acceso root al sistema. Si este es el caso, no puedes resolver el problema con una solución similar a un software. Dado que el usuario tiene acceso de root (y conocimiento), el usuario podrá realizar cualquier cambio.
Otro punto, incluso si el usuario no tiene acceso de root, existe la posibilidad de iniciar la distribución en vivo de Linux y realizar cambios en los archivos de configuración de la computadora, incluida la sustitución de la imagen del kernel por una nueva (habilitando así los controladores NIC).
Todo esto se trata de ese simple hecho: si uno tiene acceso físico a la computadora, puede cambiar cualquier cosa en ella (siempre que tenga conocimientos y herramientas).
A continuación se muestran algunas formas posibles:
Si los usuarios no tienen conocimientos avanzados de Linux, entoncescompilando el kernel de LinuxSin controladores NIC (no se olvide de las tarjetas de red USB) en el kernel será suficiente en mi opinión.
Además, puede desactivar la tarjeta de red en la configuración del BIOS, pero nuevamente, estas configuraciones se pueden restablecer si uno tiene acceso físico a la computadora.
Puedes configurariptablesreglas para rechazar cualquier tráfico de red externo.
Usardispositivo de seguridad físicacomo kit de bloqueo de puerto;
Respuesta2
CONFIG_NET=n
Esta opción controla el soporte de red en el kernel. Pero como dicen los propios documentos, esto podría romper muchos programas de usuario que hacen cosas que parecen de red:
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>.
He probado esa opción en:https://github.com/cirosantilli/linux-kernel-module-cheat/blob/71d673bac48f43a2e38f5e1e4f94b10da15b7cee/kernel_config_fragment#L58
Resultado: muchos (¿todos?) sistemas de red devuelven un estado de falla y no hacen nada, por ejemplo:
# nc -l -p 8000 127.0.0.1
nc: socket: Function not implemented
TODO: ¿Sockets UNIX? No estaba presente en esa versión nc
y me daba pereza probarlo.
Todavía puedo usar el shell y llamar a utilidades básicas. pero, por ejemplo, X-server requiere llamadas al sistema de red para funcionar y no se inicia correctamente.