Surveiller les commands émises par un user

Je devrai donner un mot de passe root à mon server à quelqu'un qui m'aidera à configurer mon server de messagerie. Maintenant, étant donné que ce sera un pigiste, je suis un peu inquiet de pouvoir faire des dégâts, alors je me request s'il y a une possibilité où je peux voir "en direct" (je serai connecté en même time qu'il sera) qui les commands qu'il émet et s'il exécute une copy de file (mon principal souci est que quelqu'un ne copy pas les files situés dans mon dossier / html) que je pourrai le couper et changer le passage immédiatement.

edit: La façon dont je l'ai fait à la fin était que j'ai configuré la session teamviewer et préparé le terminal (connecté en tant que root) avant qu'il ne soit connecté. Ensuite, j'ai surveillé tous les commans qu'il a émis. De cette façon, je n'ai pas eu à lui donner le passage de la racine.

Je pense que ce sera une mauvaise idée de lui donner un mot de passe root si vous ne lui faites pas confiance. Quand il obtient le mot de passe, il peut faire ce qu'il veut.

Que se passe-t-il si il vient de changer de mot de passe root avant de pouvoir le remarquer.

Pour répondre à votre question sur la surveillance de l'activité user, vous pouvez essayer whowatch . Il peut vous montrer les users connectés et les process qu'ils exécutent. Cependant, vous ne pourrez peut-être pas remarquer des commands rapides comme ls dans un petit directory.

Comme l'a déclaré @Khaled, l'annulation est impossible à suivre si l'user est hors-d'œuvre, mais pour un user identifié, de quantité inconnue, il est préférable de les traiter comme un enfant méchant. Il y a quelques étapes, en dessous de devenir progressivement plus paranoïaques avec chacun … 😉

1) Informez-les que vous regardez.

Définissez un message de politique de connection approprié dans /etc/motd par exemple;

————————————————– ———————-

C'est un système privé; autorisation explicite du propriétaire du système
est requirejs pour l'access ou l'utilisation. Un access ou une utilisation non autorisée peut en résulter
en responsabilité civile et / ou pénale sévère, y compris, sans s'y limiter, less de 18 USC Sections 1030 et suivantes. Tous les droits sont réservés. Toute activité est surveillée et enregistrée.

————————————————– ———————-

2) Assurez-vous qu'ils sont conscients qu'il existe des règles.

Utilisez sudo plutôt que root pour fournir des privilèges d'administrateur.

Un user sudo complet a les mêmes permissions que root, et peut donc couvrir ses pistes. Mais il est difficile et nécessiterait un sophistiqué utilisé pour effacer leurs actes et effacer les inputs de /var/log/auth.log

3) Avoir des loggings qui ne peuvent pas être falsifiés.

Utilisez des loggings centralisés et des loggings d'instance de navire pour /var/log/auth.log et pour / var / log / messages kernel de messages.

Un server de journalisation centralisé ne peut pas être altéré par l'user racine distant, contrairement au syslog local, au kernel et à ses modules. rsyslog, syslog-ng, logstash et d'autres fournissent des solutions de journalisation centralisées

4) Savoir ce qui a été changé, par qui, quand et pour quel but.

vérifier l'activité locale en utilisant auditd et un jeu de règles de base. Ou déployez AIDE ou une database de checksum de file.

auditd est un démon système qui enregistre les events système dans un file journal,

Il existe un tas de tutoriels ici … http://doc.opensuse.org/products/draft/SLES/SLES-security_sd_draft/cha.audit.comp.html http://doc.opensuse.org/products/draft /SLES/SLES-security_sd_draft/cha.audit.setup.html http://is.gd/34J33G http://www.ibm.com/developerworks/linux/library/l-security-audit/index.html

Si vous ne pouvez pas lui faire confiance pour vous comporter de manière appropriée, vous ne devriez pas lui donner access du tout.

Une session d'écran partagée comme suggéré ci-dessus est une bonne idée ou ne lui donne qu'un set restreint de commands de sudo.