Limitar acceso a la red, desde kuser

Muy buen día comunidad.

He estado buscando la manera de limitar el acceso a internet en una pc de escritorio con kubuntu 9.04 (el lío de instalar karmic aún no lo resuelvo) en la cual se necesita restringir el acceso a el usuario "invitado", al que el sistema marca como 1001, es deir los sobrinos de la dueña de la máquina no deben poder accesar a internet.

Lo referente al tema que he encontrado en el foro y en San Google se limitan a explicar cómo cambiar los permisos de escritura, lectura y ejecución, pero no he encontrado cómo cerrar el paso a la red. Imagino que evitando que puedan ejecutar los navegadores para la red, mas no se cómo hacer eso.

Como siempre, agradezco su ayuda y tiempo.

para eso debes usar chmod, opción u para definir los permisos para ese usuario concreto.

Nunca he hecho algo así, pero creo que la cosa funciona así: inicias con el usuario que quieres restringir.

entonces:

sudo chmod u-rwx /usr/bin/konqueror

eso hace que ese usuario, no pueda leer(r), escribir(w) ni ejecutar (x) ese archivo
si por ejemplo pones:

sudo chmod u-rw,u+x /usr/bin/konqueror

entonces el usuario no podrá leer y escribir (en) ese archivo, pero podrá ejecutarlo.

si no pones u :

sudo chmod -rw,+x /usr/bin/konqueror

es lo mismo pero se aplica a todos los usuarios, el parámetro u indica que esos permisos solo se aplican al usuario con el que lo ejecutas.

Por supuesto, después de aplicar los permisos, deberías eliminar de sudoers al usuario en cuestión para que no pueda cambiarlos de nuevo

para más información:

man chmod

EDITO: bueno, releyendo un poco el man de chown creo que algo he obviado. Tienes que verificar el propietario y grupo de esos archivos y trabajar tambien con el parametro g (grupo) además del u (usuario) para gestionar bien las cosas, y por supuesto, antes de hacer nada, planear bien el tema, especificar que ejecutables quieres modificar, comprobar el usuario y grupo de esos archivos, y repasaremos todo desde aquí.

Nunca he hecho algo así y es un tema interesante, así que seguiré el tema con interés.

EDITO2: es más, creo que deberías crear un grupo nuevo y añadir al usuario nuevo a ese grupo... no sé... tendría que estudiarlo un poco.

otra forma quizá más sencilla de hacer, sería añadir el usuario normal al grupo root y en las propiedades del archivo especificar en la sección permisos que solo el usuario y el grupo puedan ejecutarlo.

Tambien podria probar quitando ciertos grupos a los que el usuario pertenece.

Ah, ahora entiendo un poco más.

Muy agradecido, voy e intento, luego les comunico los avances.

De nueva cuenta gracias.

Pack_0 escribió:

[...] limitar el acceso a internet en una pc de escritorio [...] se necesita restringir el acceso a el usuario "invitado" [...] los sobrinos de la dueña de la máquina no deben poder accesar a internet.

Pack_0: desde que publicaste este tema me llamó la atención pues yo mismo deseo configurar lo que tú necesitas, sin embargo no he tenido mucho tiempo últimamente para llevarlo a cabo de principio a fin. Sin embargo tengo algunas ideas que pueden ayudar:

Lo ideal no es restringir clientes web (Firefox, Konqueror, etc.), pues se tendrían que restringir todos los que hubieran en la máquina; también se tendrían que restringir todos los clientes de IRC, mensajería, y en general cualquier otro cliente que use servicios de Internet.

Creo que lo ideal es restringir de manera global:

a) manejar la variables de entorno HTTP_PROXY, la cual almacena la dirección de algún servidor intermediario a través del cual sale la conexión a Internet. En tu caso, puedes declarar una dirección que no sea válida y de esta manera cualquier cliente intentará salir a internet a través de dicha dirección, con el consecuente resultado de que no habrá salida. Yo probé así:

editar el archivo oculto /home/invitado/.profile y dentro de él agregar:

export HTTP_PROXY=127.0.0.1

luego, al iniciar sesión como invitado, el sistema cargará dicho valor y en teoría cualquier aplicación que requiera conexión a red se verá impedida ya que la conexión volverá al equipo propio (127.0.0.1) ... escribí en teoría porque yo ya probé esto y no pude navegar con el cliente w3m (que es precisamente lo que queremos)... sin embargo con las demás aplicaciones sí pude navegar :( . Es cuestión de seguir buscando (Google) y encontrar una forma que sea por ahí. Por supuesto que otras sesiones de usuarios no se ven afectadas porque no se carga dicho valor al iniciar sesión con su cuenta.

b) idear una forma (scripts) para manipular la tabla de enrutamiento, para que las peticiones a direcciones fuera de tu red local sean redirigidas hacia la nada. Esto no lo he probado ya que me parece que afectaría a todo el sistema ... afectando a todos los usuarios .... así que se caería en la necesidad de que los sobrinos usaran el equipo y nadie más, y luego cerrarían su sesión ... luego otro usuario iniciaría sesión y se cargaría la tabla de enrutamiento correcta. Aquí hay algo de información al respecto: http://www.cyberciti.biz/faq/howto-debian-ubutnu-set-default-gateway-ipa...

c) configurar el módem / enrutador para que a cierta dirección IP le restrinja la salida a la web ... e idear una forma (script) para que al iniciar sesión de invitado la máquina use esa dirección IP especificada de manera manual .... al finalizar el uso de la máquina se cierra la sesión, y al iniciar cualquier otra sesión distinta a la de invitado el sistema tome automáticamente una dirección IP distinta proporcionada por el módem / enrutador ...

Esas son las 3 ideas que hasta el momento he imaginado pero no he llevado a cabo .... espero te sean útiles en tu búsqueda.

Saludos,
Sidd.

Gracias Sidd, has captado la esencia de mi consulta, y esas soluciones que propones suenan factibles.

Me queda el pendiente de averiguar cómo modificar los archivos ocultos (imagino que San Google sabe) y tener acceso de nueva cuenta a esa máquina que he de "limitar".

Para ser honesto no he revisado esa pc desde hace un buen tiempo, y no intentado las soluciones que antes me han ofrecido, pero lo tengo pendiente.

No soy muy diestro en eso de crear y/o modificar scripts, pero voy a probar primero en mi computadora y luego en la ajena. Luego posteo los resultados.

Como siempre, te quedo muy agradecido.

aqui vas a encontrar una solucion mas sencilla y rapida de probar. Es la utilizacion de iptables.

http://www.ubuntu-es.org/?q=node/111906

Tiene 2 opciones bien explicadas. La primera es para prohibir todo transito en la red. La segunda es para permitir el transito local pero no el transito en internet.

Espero que te sirva.

xirox escribió:

aqui vas a encontrar una solucion mas sencilla y rapida de probar [...]

Me interesa ... la probaré yo también. Gracias xirox.

Sidd.

xirox escribió:

aqui vas a encontrar una solucion mas sencilla y rapida de probar. Es la utilizacion de iptables.

http://www.ubuntu-es.org/?q=node/111906

Tiene 2 opciones bien explicadas. La primera es para prohibir todo transito en la red. La segunda es para permitir el transito local pero no el transito en internet.

Espero que te sirva.

Wow, mil gracias, no soy muy diestro aún en cuanto a estar modificando los archivos en ese nivel, pero como dice un refrán: "Quien no arriesga un huevo, no gana un pollo"

Este próximo 14/marzo/10 lo voy a intentar y posteo los resultados a más tardar en 2 días más.

Realmente muy agradecido.