Chaque fois que je me connecte à un serveur en utilisant ssh. L'invite me donne les informations de "dernière connexion". Je me demandais d'où venait cette information. Comment puis-je supprimer cet enregistrement si quelqu'un d'autre se connecte au même serveur, la personne verrait mes informations de connexion avec mon ip dedans?
Alors, comment puis-je faire cela? Pour mémoire, je ne pirate pas l'ordinateur de quelqu'un et le serveur exécute Ubuntu 12.04.
EDIT: quel fichier enregistre ce type d'informations? Si je trouve le fichier, je peux tout faire en tant que root.
Merci.
ssh
ubuntu-12.04
Gnijuohz
la source
la source
last $USER
.!=
est généralement lu comme "n'est pas égal à". Vous avez écritUbuntu 12.04
dans le texte de la question, mais utilisé laubuntu-11.04
balise. Les deux ne sont pas équivalents, donc l'un ou l'autre doit être faux.Réponses:
En plus de / var / log / lastlog, il y a 3 fichiers dans
/var/run
et/var/log
:utmp
,wtmp
etbtmp
qui informations sur les connexions actuelles attente (et informations supplémentaires), les connexions historiques et ont échoué. Voir http://en.wikipedia.org/wiki/Utmp pour une description détaillée. Vous ne pouvez pas modifier les fichiers avec des éditeurs normaux, mais vous pouvez les effacer.la source
Dans ubuntu, il se trouve dans
/etc/ssh/sshd_config
.Trouvez la ligne qui dit:
PrintLastLog yes
et changer pour
PrintLastLog no
(ou ajoutez s'il n'existe pas)la source
service ssh restart
cela devra être fait avec root / sudo/var/log/wtmp
et/var/log/btmp
et éventuellement/var/log/utmp
. Il peut y avoir d'autres fichiers/var/log
contenant des données de connexion utilisateur (comme/var/log/wtmp.1
), vous devrez donc également les effacerutmp est normalement dans / var / run, pas dans / var / log. wtmp et btmp sont dans / var / log.
ssh n'est pas le seul programme qui écrit dans ces trois fichiers. Si vous les supprimez, comme quelqu'un l'a suggéré, vous interromprez de nombreux programmes. Ils devraient être là. Modifiez le fichier / etc / ssh / sshd_config, comme l'a suggéré Cameron Aziz.
Vous n'êtes pas le seul processus dans le shell. Vous n'utilisez pas de système d'exploitation à tâche unique. S'habituer à travailler sur un véritable système d'exploitation de réseau a été l'un des changements mentaux les plus difficiles que j'ai jamais faits, avec l'utilisation d'un ordinateur central et le calcul d'apprentissage. Concrètement, cela signifie que vous ne devez jamais supprimer un fichier à moins de savoir exactement ce qu'il fait dans le système.
Afin d'avoir une idée de la fréquence d'utilisation de certains fichiers, jetez un œil à lsof et jouez avec. Même lsof ne vous indique que les processus qui utilisent ACTUELLEMENT votre fichier, il ne vous donne pas de données historiques, alors soyez prudent.
la source
Le mot-clé de configuration PrintLastLog extrait les informations du fichier / var / log / lastlog
Vous pouvez utiliser la commande lastlog pour afficher ces informations sur la ligne de commande.
la source
Voici une alternative qui fonctionne pour GNU et BSD (Mac OS X). Il tient également compte du fait que la plupart des paramètres sont commentés par défaut - ils sont de toute façon dans El Capitan):
Sans le
-i.bak
changement, je continuais à recevoir:la source
Voici la commande pour le faire automatiquement:
la source