Mi hijo recibió una nueva computadora portátil la Navidad pasada, principalmente para usar en su nueva escuela ... Y ahora que tiene su propia computadora portátil, está entusiasmado de tener instalado Steam.
Pero la esposa quiere que elimine Steam, porque la computadora portátil es principalmente para uso escolar ... Prefiero no hacer eso, si no tengo que hacerlo.
¿Hay alguna forma de restringir o limitar el acceso a Steam? ¿Quizás una contraseña en Steam o establecer tiempos durante los cuales se puede ejecutar?
Idealmente , debe ser algo bastante simple de usar porque mi trabajo a menudo me mantiene alejado de casa (y computadoras, telecomunicaciones y ...) por largos períodos de tiempo y aunque mi esposa no se siente tan cómoda con las computadoras como yo, más fácil de usar es mucho, mucho mejor.
¿Seguramente hay algo por ahí que pueda lograr esta tarea?
fuente
Respuestas:
Establecer un límite de tiempo en un proceso o aplicación
Con un pequeño script de fondo, puede establecer un límite de tiempo en un proceso o aplicación.
Siempre que su usuario no conozca la contraseña del administrador , no se la supera con demasiada facilidad.
La solución a continuación
Es un script de fondo tan pequeño. Limita el uso por día a un número definido de minutos, para establecer en el encabezado del script. Una vez configurado (que no es demasiado difícil), es muy fácil y no se necesita ninguna acción adicional después.
La secuencia de comandos
Cómo utilizar
limit
limit_use
(sin extensión) dentro de la carpeta y hágalo ejecutableEdite en el encabezado del script el nombre del proceso a limitar y el número máximo de minutos permitidos. En el ejemplo:
Copie la carpeta al directorio
/opt
:Ahora edite
/etc/rc.local
para que el script lo ejecute comoroot
en el inicio:Justo antes de la línea
otra linea:
Eso es
Cuando alguien intenta matar el script de fondo:
(acción no permitida)
Explicación; cómo funciona
/opt/limit/uselog
). Si se alcanza el límite diario, el script ya no permite que se ejecute el proceso, eliminándolo si existe.rc.local
solo los usuarios con privilegios de sudo pueden detener la secuencia de comandos, incluso si el usuario conoce el nombre del proceso.Detener el guión
En caso de que quiera detener el script, use el comando:
Pero nuevamente, necesitaría la contraseña de sudo para hacerlo.
EDITAR
Aunque la secuencia de comandos anterior debería proporcionar una forma razonablemente segura de limitar el uso de una aplicación, como lo menciona @Bytecommander, puede superarse, aunque no con mucha facilidad. La combinación con la medida a continuación hará que sea muy poco probable que esto suceda, a menos que su hijo conozca la configuración y tenga bastante experiencia con Linux / Ubuntu.
Medida adicional
Un poco más lejos de una "solución simple", pero aún no es demasiado difícil de configurar es la medida adicional a continuación. Si nuestro presunto delincuente descubriera que se llama al script
/etc/rc.local
, lograría convertirse en root y eliminaría la línea/etc/rc.local
, o sería capaz de detener el script de esa manera, podemos confrontarlo con el siguiente problema: la pantalla se apaga después inicie sesión. Además, la solución verifica si la secuencia de comandos en segundo plano se está ejecutando después de 5 minutos después del reinicio, apagándose si no.La medida adicional es un cheque startup si la línea
/opt/limit/limit_use &
está presente en/etc/rc.local
, y un cheque después de 5 minutos si el guión todavía funciona. Dado que el script se ejecuta desde un iniciador (oculto de las aplicaciones de inicio)/etc/xdg/autostart
, será bastante difícil descubrir qué está sucediendo, a menos que sepa cómo se hace. La combinación de estas dos medidas hace que sea poco probable que su hijo se entere, y si lo hace, probablemente nada lo detendrá.Como instalar
Hay dos pasos simples involucrados:
Copie el siguiente código en un archivo vacío, guárdelo como
blackout.desktop
en su escritorio:Copie el archivo a
/etc/xdg/autostart
:Copie el script a continuación en un archivo vacío, guárdelo como
blackout.py
en su escritorio, hágalo ejecutable y cópielo en/usr/local/bin
:La secuencia de comandos
Explicación
Los iniciadores
/etc/xdg/autostart
iniciarán una aplicación (en este caso, el control de seguridad adicional) para todos los usuarios. Esto podría sobrescribirse localmente, pero debe conocer las ejecuciones de verificación. Al poner la líneaNoDisplay=true
en nuestro lanzador, no aparecerá localmenteStartup Applications
, por lo que sin saber que existe, es poco probable que se descubra.Además, su hijo tiene solo 15 segundos para averiguarlo (luego la pantalla se oscurece), por lo que tendría un problema grave, a menos que sea un genio, tenga mucha experiencia con Ubuntu y una mente creativa.
fuente
rc.local
?Según mi propia experiencia, restringir el acceso a los juegos de computadora es una de las tareas más desafiantes para educar a nuestros hijos. Por supuesto, los padres queremos que usen sus computadoras principalmente para la escuela, pero esto entra en conflicto con las intenciones de los niños. Nos odiarán por darles hardware utilizable solo para la escuela.
Y, por supuesto, también queremos que aprendan cómo usar su computadora de una manera sensata, incluyendo cómo usarla no solo para el trabajo sino también para el ocio. Esto incluye juegos y ver videos.
Desafortunadamente, los controles parentales bien mantenidos y en funcionamiento para restringir la computación del niño casi no están disponibles para Ubuntu. Otro problema importante es que tan pronto como son niños inteligentes, todas las medidas que tomamos se vuelven en vano. Siempre encontrarán formas de superar nuestras restricciones, en caso de que sean realmente inteligentes sin que nosotros podamos notarlo.
Cualquier software de bloqueo o restricciones de PAM que se ejecuten en la computadora del niño serán solo temporales, y tarde o temprano pueden superarse muy fácilmente. Por lo tanto, decidimos dejar que el enrutador protegido con contraseña haga el trabajo, donde el acceso físico se puede controlar mucho más fácilmente.
Entonces, lo que hacemos aquí para limitar algo los juegos en este momento es una combinación de todo lo siguiente:
sudo
grupo tarde o temprano. El plan es que nos lo pidan en lugar de ocultarlo.Para facilitar el cumplimiento del contrato sobre el uso de la computadora tanto para los niños como para nosotros, instalamos las siguientes restricciones:
El bloqueo del acceso a Internet deshabilitará efectivamente los juegos si ese juego necesita acceso a Internet, como Steam , Minecraft u otros servidores de gamig. Sin embargo, no tendrá ningún efecto para los juegos que se ejecutan fuera de línea.
fuente
ssh
o simplemente cerrando la aplicación?Esto se puede lograr mediante el uso de scripts de shell.
El primer script es matar
Steam
tan pronto como se ejecute:Guárdelo como
/path/to/anyname.sh
y agréguelo a la lista de aplicaciones de inicio.Lo que hará este script es que verificará cualquier proceso abierto nombrado
steam
cada segundo y, si lo encuentra, lo matará.Pero, necesita una solución en la que
steam
pueda ejecutarse en un momento específico para que su hijo pueda jugar durante ese intervalo. Para hacer eso tienes que escribir otro script:Guárdelo como
/path/to/anyname2.sh
y también agregue esto a su lista de aplicaciones de inicio.Este script matará al primer script a las 10:00 hrs. Entonces, cuando su hijo corre
Steam
a las 10:00 hrs. Podrá jugarlo ahora.El tercer guión es reiniciar el primer guión en otro momento para que se mate
Steam
después de un intervalo de tiempo y su hijo ya no pueda jugarSteam
más.Guárdelo como
/path/to/anyname3.sh
y agréguelo a su lista de aplicaciones de inicio.Asegúrese de mantener esos caminos ocultos para que su hijo no se entere.
fuente
¿Por qué no utilizar una nueva cuenta de usuario (a través de la configuración del sistema )? Este es el único método en Linux para "permisos".
sudo
grupo) Entonces esta cuenta no tendrá acceso de root, no podrá instalar o eliminar software, cambiar la configuración de todo el sistema.Pocas notas ...
/home/son/.steam
y, por supuesto, el archivo binario/usr/games/steam
fuente