Assurer légèrement Linux pour que les étudiants apprennent sur

À l'école, nous avons un ordinateur qui ne permet aux étudiants de se connecter à et de faire des activités liées à l'informatique, telles que la compilation de programmes C et C ++ pour les cours. Il faisait preuve d'une certaine apparence obscure de linux qui a été mis sur de nombreuses années avant que je ne l'emporte. J'ai récemment installé Ubuntu Server pour le rendre plus durable et plus sécurisé. Actuellement, nous configurons les counts d'users au besoin. Les étudiants ssh s'identifient et complètent les tâches pour la class et chaque user stocke son travail et joue dans son dossier personnel. Les instructeurs requestront aux élèves de laisser leur travail dans un dossier particulier pour soumettre ou quelque chose comme ça.

Ce qui me préoccupe, c'est un user qui est trop exploratoire et qui explore ou que quelqu'un le détruit malicieusement et casse quelque chose, ce qui ne permet à personne d'être en mesure de faire des travaux, et il en résulte que la faculté se plaint et me fait ressembler à une mauvaise gestion sysadmin pour ne pas empêcher cela. (Je suis toujours un étudiant et à la merci)

Les étudiants sont actuellement dans leur propre groupe et ne peuvent voir leur propre dossier personnel / ne peuvent pas parcourir les autres dossiers des étudiants. Les membres de la Faculté ont des counts plus avancés mais pas des counts d'administration. Je suis réticent à commencer à modifier les permissions sur les dossiers système importants en m'inquiétant de pouvoir casser quelque chose (encore une fois, comme je l'ai déjà fait).

Quelles mesures de security puis-je prendre pour assurer la fonctionnalité du système tout en le protégeant pour que tout le monde puisse l'apprécier et l'utiliser?

4 Solutions collect form web for “Assurer légèrement Linux pour que les étudiants apprennent sur”

J'ai couru un projet approximativement similaire au collège (nous avions plus d'un server et n'étaient pas vraiment responsables de tous les services informatiques de bar, mais nous étions des boîtes linux pour les étudiants). En termes de security, il s'agit surtout de restr complètement à jour avec les correctifs. Lorsque cela est nécessaire, désactivez la connection, s'il existe des vulnérabilités racines locales, et pas encore de correctifs. Vous souhaitez également installer des ulimits. La façon dont ils se situent est probablement dépendante de la puissance de vos machines ou, mais notre machine less puissante les a utilisées:

t: cpu time (seconds) 18000 -f: file size (blocks) 307200 -d: data seg size (kbytes) 51200 -s: stack size (kbytes) 8192 -c: core file size (blocks) 0 -m: resident set size (kbytes) 51200 -u: processes 75 -n: file descriptors 300 -l: locked-in-memory size (kb) 175000 -v: address space (kb) 400000 -x: file locks unlimited -i: pending signals 61440 -q: bytes in POSIX msg queues 819200 -e: max nice 0 -r: max rt priority 0 

De plus, vous voudrez définir des quotas, probablement pour les counts de la faculté et des étudiants. La taille de leur disque dépend de votre disque, mais nous définissons actuellement des quotas de 1 Go par défaut. Je crois que mes successeurs qui s'occupent des machines sont généralement très heureux de les occuper pour ceux qui ont une raison valable.

En plus de cela, je requestrais / emprisons / voler une deuxième machine si possible de sauvegarder vos données de configuration / user. Idéalement, vous devriez sauvegarder l'set de / etc /, une list de vos packages installés et toutes vos données user (si vous avez des packages que vous avez mis set, vous devriez sauvegarder le file .debs complet). Si vous avez l'espace, je sauvegarderai / var, (sauf / var / tmp).

Les permissions sur / root sont 755 par défaut. vous voudrez les modifier, car vous laisserez des files sensibles accidentellement à un moment donné. En outre, le mur et le su (au less) devraient avoir leurs permissions modifiées, de sorte que seul le groupe racine / racine peut les utiliser (n'hésitez pas à modifier le groupe racine pour un autre groupe que vous êtes seulement).

Enfin, je connecterais sys tout au server distant, sans connection d'user (même si ce n'est pas une machine contrôlée par vous). Je voulais configurer snoopy sur votre machine, donc vous avez une sorte de journal d'audit pour quand quelqu'un se brise.

Nos documents pour la plupart des systèmes sont ici . La plupart d'entre eux ne s'appliquent probablement pas à vous si vous utilisez uniquement une seule machine, mais ils valent peut-être la peine de se bash à travers des morceaux de toute façon.

Il existe essentiellement deux façons d'aborder ceci:

  1. Vous vous assurez qu'ils ne peuvent pas le briser.
  2. Vous vous assurez que vous pouvez le réparer beaucoup plus vite qu'il ne peut le briser.

Pour le premier, vous pourriez envisager une dissortingbution Linux récente qui comporte un set très serré de règles SELinux. Étant donné que ces étudiants doivent apprendre, je m'attends à ce qu'ils se heurtent à des problèmes (comme: vous n'êtes pas autorisé à écouter un port réseau) qui leur rend impossible de terminer leurs tâches ou simplement d'aller au-delà de leur niveau de compétence actuel .

La deuxième option est en fait beaucoup plus robuste à réaliser.

  1. Installez quelque chose comme cobbler pour automatiser la réinstallation du système sur lequel ils fonctionnent.
  2. Enseignez aux élèves à engager leur code dans un repository de subversion / git régulièrement (compétences de programmation utiles!). Donnez à l'enseignant l'access au repository des étudiants. Les étudiants peuvent simplement requestr à l'enseignant d'examiner une label spécifique dans leur subversion personnelle.
  3. Placez toutes les informations de connection dans un LDAP et configurez votre server pour créer automatiquement le directory personnel de l'élève lors de la connection.
  4. Réinstallez le server TOUTES les nuits. C'est facile parce que vous avez automatisé l'set du process.

Effets secondaires:

  • Aucun logiciel malveillant ne vit plus de 24 heures.
  • Si le nombre d'étudiants augmente, vous pouvez simplement append un deuxième / troisième système et l'installer 100% identiquement.
  • Tous les problèmes de configuration sont réglés une fois et restnt fixés après la réinstallation.
  • Les étudiants oublieront de commettre et de perdre du travail de time en time.

Tout d'abord, assurez-vous de configurer des sauvegardes et d'apprendre à restaurer le système.

Cela dit, tant que vous appliquez des mises à jour de security sans plus tarder (vous pouvez également consulter les mises à jour sans assistance), vous devriez être bien. (Bien que si vous pouvez restreindre les connections externes, par exemple, en autorisant uniquement l'authentification par key, vous réduisez encore le risque).

Vous voudrez des quotas et ulimit comme suggéré ainsi que le suivi (il est beaucoup plus probable que vous allez soudainement vous perdre de disque et que les gens seront en colère à cause de cela que n'importe qui suffisamment informé pour get l'access aux racines le détruit).

Vous ne voulez pas commencer à déranger les permissions (sans savoir exactement ce que vous faites).

Qu'en est-il de la configuration du mode user linux avec une copy sur le file d'écriture dans le directory personnel de chaque élève? Cette sandbox donnerait à chacun un règne totalement gratuit sur leur propre instance. Si quelque chose se brise, il suffit de ramasser le file COW et vous reviendrez au sharepoint départ.

scp / sftp pourrait être utilisé pour download le travail envoyé dans un repository central.

  • Comment charger un DB MSSQL en utilisant MySQL dans Ubuntu
  • Ouvrez mysql uniquement à localhost et à une adresse particulière
  • Combien de time existe un script d'arrêt Ubuntu lors d'un arrêt?
  • Iptables: Comment autoriser un seul IP via un port spécifique?
  • Comment puis-je réparer le système de files corrompus dans linux?
  • Mise à niveau Ubuntu Hardy vers Ruby 1.8.7
  • Solution de sauvegarde pour Windows et ubuntu
  • Le trafic sortant de la list blanche dans VPC pour changer les adresses IP
  • Comment autoriser une connection ssh uniquement sur vpn
  • Suppression de toutes les partitions depuis la ligne de commande
  • Configurer le server FTP sur ubuntu afin que l'user XXXX ait seulement access à / var / www /
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.