GNU/Linux >> Tutoriels Linux >  >> Linux

Dernière commande Linux avec exemples

La dernière commande Linux est utilisée pour vérifier l'utilisateur précédemment connecté à votre serveur. Cette commande est très importante sous Linux car elle aide pour la piste d'audit. Supposons que quelque chose a changé dans le système Linux, dans cette situation, vous ne savez pas qui a apporté les modifications. En utilisant la commande "dernier", vous pouvez identifier qui s'est connecté à un moment donné.

La dernière commande affiche une liste de tous les utilisateurs connectés et déconnectés de '/var/log/wtmp' depuis la création du fichier. Wtmp est un fichier journal qui capture et enregistre chaque événement de connexion et de déconnexion. Il s'agit d'un fichier binaire qui ne peut être visualisé par aucun éditeur de texte. Cette astuce est assez intelligente car aucun utilisateur ou root ne peut modifier le fichier comme il le souhaite.

La dernière commande vous donne des informations sur le nom de tous les utilisateurs connectés, tty, l'adresse IP (si l'utilisateur établit une connexion à distance), la date/l'heure et la durée de connexion de l'utilisateur.

Comment exécuter la dernière commande

Il vous suffit de taper "dernier" sur votre console.

Voici l'exemple :

$ last

leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)
pungki tty1 Mon Dec 2 09:31 still logged in
reboot system boot 2.6.32-358.23.2 Mon Dec 2 09:20 - 13:25 (04:05)

Voici comment lire les dernières informations :

La première colonne - nom de l'utilisateur qui s'est connecté.

La deuxième colonne - nous donner des informations sur la façon dont l'utilisateur est connecté (via pts ou tty). Exception pour l'activité de redémarrage, l'état sera affiché comme "démarrage du système".

La troisième colonne - montre d'où l'utilisateur s'est connecté. Si l'utilisateur se connecte depuis un ordinateur distant, vous verrez un nom d'hôte ou une adresse IP. Si vous voyez :0.0 ou rien, cela signifie que l'utilisateur est connecté via un terminal local. Exception pour l'activité de redémarrage, la version du noyau sera affichée comme état.

Les colonnes restantes - affiche l'heure de connexion et l'horodatage des données lorsque l'activité du journal s'est produite. Les chiffres entre parenthèses nous indiquent le nombre d'heures et de minutes de connexion.

pts (pseudo terminal) - signifie que l'utilisateur se connecte via des connexions à distance telles que SSH ou telnet.
tty (téléimprimeur) - signifie que l'utilisateur se connecte via une connexion directe à l'ordinateur ou au terminal local.

1. Limiter le nombre de lignes

Lorsque vous avez beaucoup de lignes à afficher, vous pouvez limiter le nombre de lignes que vous voulez voir en utilisant -n option.

Dans la commande suivante, il affichera 3 lignes à partir de l'heure actuelle et en arrière.

$ last -n 3

leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)
pungki tty1 Mon Dec 2 09:31 still logged in
reboot system boot 2.6.32-358.23.2 Mon Dec 2 09:20 - 13:25 (04:05)

2. Masquer le nom d'hôte/l'adresse IP

Utilisez -R option pour masquer le nom d'hôte ou l'adresse IP de l'impression.

Exemple de sortie

$ last -R

leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53)
pungki tty1 Mon Dec 2 09:31 still logged in
reboot system boot Mon Dec 2 09:20 - 13:25 (04:05)

3. Afficher le nom d'hôte dans la dernière colonne

Parfois, il est facile d'imprimer le nom d'hôte ou l'adresse IP dans la dernière colonne. Pour ce faire, vous pouvez utiliser -a comme indiqué ci-dessous :

$ last -a

leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53) 10.0.76.162
pungki tty1 Mon Dec 2 09:31 still logged in :0.0
reboot system boot Mon Dec 2 09:20 - 13:25 (04:05) 2.6.32-358.23.2.el6.i686

4. Imprimer l'heure et les dates complètes de connexion et de déconnexion

Par défaut, la dernière commande n'affichera pas la date et l'heure complètes. Vous pouvez utiliser -F option pour cela.

Voici un exemple :

$ last -F

leni pts/0 10.0.76.162 Mon Dec 2 12:32:24 2013 - Mon Dec 2013 13:25:24 2013 (00:53)

5. Rechercher entre des dates spécifiques

Vous pouvez utiliser les options -s (depuis) ​​et -t (jusqu'à) pour rechercher des journaux entre des dates spécifiques.

Par exemple, la commande suivante imprimera les journaux du 1er février au 1er mai 2019.

$sudo last -F -s 2019-02-01 -t 2019-05-01

6. Imprimer le nom d'utilisateur spécifique

Si vous souhaitez tracer un utilisateur spécifique, vous pouvez l'imprimer spécifiquement. Mettez le nom de l'utilisateur avec la dernière commande.

$ last leni

leni tty1 Mon Dec 2 18-42 still logged in
leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53) 10.0.76.162

Ou si vous voulez savoir quand le redémarrage est terminé, vous pouvez également l'afficher

$ last reboot

reboot system boot Mon Dec 2 09:20 - 16:55 (07:34)
reboot system boot Sun Dec 1 04:26 - 04:27 (00:01)
reboot system boot Wed Nov 27 20:27 - 01:24 (04:57)
reboot system boot Tue Nov 26 21:06 - 06:13 (09:06)

7. Imprimer des tty/pts spécifiques

Last peut également imprimer des informations sur des tty/pts spécifiques. Mettez simplement le tty name ou pty name derrière la dernière commande.

Exemples de sorties :

$ last tty1

pungki tty1 Mon Dec 2 09:31 still logged in
pungki tty1 Mon Dec 2 04:26 - down (00:00)
pungki tty1 Mon Dec 2 04:07 - down (00:00)
pungki tty1 Sun Dec 1 18:55 - 04:07 (09:12)
$ last pts/0

leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)
pungki pts/0 :0.0 Wed Nov 27 20:28 - down (04:56)

Lorsque vous voyez une valeur entre parenthèses, cela signifie que l'utilisateur s'est connecté depuis une heure spécifique jusqu'au redémarrage ou à l'arrêt du système.

8. Utiliser un autre fichier que /var/log/wtmp

Par défaut, la dernière commande analysera les informations de '/var/log/wtmp'. Si vous voulez que la dernière commande soit analysée à partir d'un autre fichier, vous pouvez utiliser -f paramètre.

Par exemple, vous pouvez faire pivoter le journal après une certaine condition. Disons que le fichier précédent est nommé '/var/log/wtmp.1' .

Ensuite, la dernière commande ressemblera à ceci :

$ last -f /var/log/wtmp.1

9. Afficher les changements de niveau d'exécution

Il y a -x option, si vous souhaitez afficher les changements de niveau d'exécution.

Voici un exemple de sortie :

pungki tty1 Mon Dec 2 19:21 still logged in
runlevel (to lvl 3) 2.6.32-358.23.2 Mon Dec 2 19:20 - 19:29 (00:08)
reboot system boot 2.6.32-358.23.2 Mon Dec 2 19:20 - 19:29 (00:08)
shutdown system down 2.6.32-358.23.2 Mon Dec 2 18:56 - 19:20 (00:23)
runlevel (to lvl 0) 2.6.32-358.23.2 Mon Dec 2 18:56 - 18:56 (00:00)
leni tty1 Mon Dec 2 18:42 - down (00:00)

Vous pouvez voir qu'il y a deux entrées de niveau d'exécution. Niveau d'exécution qui a to lvl 3 entrée signifie que le système fonctionne en mode console complète. Aucune fenêtre X ou interface graphique active. Pendant ce temps, lorsque le système est arrêté, Linux nous exécute le niveau 0. C'est pourquoi la dernière vous montre to lvl 0 entrée.

Pour afficher la date et l'heure du dernier arrêt, utilisez la commande suivante :

#last -x | grep shutdown | head -1

10. Afficher les connexions incorrectes

Alors que la dernière commande enregistre les connexions réussies, la commande lastb enregistre les tentatives de connexion échouées. Vous devez avoir un accès root pour exécuter la commande lastb. Lastb analysera les informations de /var/log/btmp.

Voici un exemple de sortie de la commande lastb.

# lastb

leni tty1 Mon Dec 2 22:12 - 22:12 (00:00)
rahma tty1 Mon Dec 2 22:11 - 22:11 (00:00)

11. Afficher l'adresse IP de l'hôte local

Avec -d option (pour les connexions non locales), linux stocke non seulement le nom d'hôte de l'hôte distant, mais également son numéro IP.

# last -d
root pts/1 192.168.1.100 Fri Jun 22 01:58 still logged in
root pts/0 192.168.1.100 Fri Jun 22 01:52 still logged in

12. Faire pivoter les journaux wtmp

Étant donné que '/var/log/wtmp' enregistre chaque activité de connexion, la taille du fichier peut augmenter rapidement. Par défaut, Linux fera tourner '/var/log/wtmp' tous les mois. Le détail de l'activité de rotation est placé dans le fichier /etc/logrotate.conf.

Voici le contenu de mon fichier '/etc/logrotate.conf'.

/var/log/wtmp {
monthly
create 0664 root umtp
minsize 1M
rotate 1
}

Et pour '/var/log/btmp', voici la configuration par défaut de l'activité de rotation

/var/log/btmp {
missingok
monthly
create 0600 root umtp
minsize 1M
rotate 1
}

Effacer l'historique des dernières commandes

Comme nous savons qu'il écrit sur wtmp, donc si nous voulons supprimer le dernier historique, nous pouvons le faire via

#> /var/log/wtmp

Or

#> /var/log/lastlog

Conclusion

Dans ce didacticiel, nous avons appris à utiliser la dernière commande sous Linux pour vérifier les journaux du fichier wtmp. Pour plus de détails, veuillez visiter la dernière page du manuel en tapant man last sur votre console.


Linux
  1. Commande Linux wc avec exemples

  2. Commande de tri Linux avec exemples

  3. Commande Linux Tee avec exemples

  4. Commande principale Linux avec exemples

  5. Commande JQ sous Linux avec exemples

Commande de CD Linux avec exemples

Dernière commande Linux avec exemples

Commande Linux watch avec exemples

Commande Wait sous Linux avec des exemples

Commande d'exportation Linux avec exemples

Commande IP Linux avec exemples