Kill de connexion/session :

$ who
root     tty1         2014-12-18 20:59
root     pts/0        2014-12-18 21:00 (1.1.1.1)
root     pts/1        2014-12-18 21:00 (1.1.1.1)

$ skill -KILL -v pts/1
pts/1    root      1134 bash

La nous avons un accès à la console locale (tty1) et deux accès SSH (pts/X), dans cette exemple j’ai ejecté le second accès SSH (pts/1).
Cela fonctionne parfaitement avec l’accès local de root. L’avantage c’est qu’on éjecte une session particulière (et les process qui en dépendent …), pas toutes les sessions d’un utilisateur.

Le shell éjecté reçoit :

Connection to 192.168.5.16 closed.

Kill d’un utilisateur :

$ skill -KILL -u *bob*

ou

$ pkill -u *uid_bob*

ou

$ pkill -KILL -u *bob*

Renvoie le même message de déconnexion à l’utilisateur éjecté, deux suptilités :

  • vu qu’on met un uid cela éjecte toutes les sessions de l’utilisateur (même si ce dernier est passé par la suite en root).
  • évité de faire cela avec l’uid 0 (root), le système n’aime pas du tout (même l’accès console) …

Spoofing d’identité :

su -c 'kill -TERM -1' *bob*

Dans ce cas on envoie un kill aux process de bob en tant que bob.
Cette dernière permet d’éjecter root, mais il n’y aura plus que l’accès console de disponible et tous les services démarrés avec root seront stopés !!

Kill d’un process process particulier d’un utilisateur

$ pkill -KILL -u *bob* top

On kill le process top de bob.

Conclusion :

Désolé bob pour ces kicks …