Bağlanan her yeni kullanıcı sshd, belirli bir PID ile yeni bir oturum oluşturur. Sen kullanabilirsiniz pstreehangi miras hangi komutlar yazdırmak için sshdbu PID kontrol çapraz sonra oturumuna ve /var/log/auth.log.
Örnek (anonimleştirilmiş): Uzaktaki bir sunucuya aynı anda 3 kullanıcıyla aynı anda oturum açtım. Şimdi istemcinin hangi IP'den komutu çalıştırdığını öğrenmek istiyorum watch date.
$ pstree -p | grep watch
| |-sshd(15243)---sshd(15342)---bash(15343)---watch(15450)
$ sudo grep 15243 /var/log/auth.log
Mar 7 15:37:29 XXXXXXXXXX sshd[15243]: Accepted publickey for XXXXXXXXXX from 12.34.56.78 port 48218 ssh2
Mar 7 15:37:29 XXXXXXXXXX sshd[15243]: pam_unix(sshd:session): session opened for user XXXXXXXXXX by (uid=0)
Mar 7 15:37:44 XXXXXXXXXX sudo: XXXXXXXXXX : TTY=pts/7 ; PWD=/home/XXXXXXXXXX ; USER=root ; COMMAND=/bin/grep 15243 /var/log/auth.log
pstree -pbu watchkomutun sshdPID 15243 ile devralındığını gösterir. grepBu PID için /var/auth/auth.logbu oturumu başlatan IP 12.34.56.78 olduğunu gösterir. Bu nedenle bu aynı zamanda başlayan kullanıcıdır watch.
historyÖzellikle bu kullanıcıyı bulmaya gelince , tüm uzak kullanıcılar aynı yerel SSH kullanıcısını kullandığında görebildiğim şeyden yapılamaz. Ayrıca, kolayca sahte / etkisiz hale getirilebilir / vb. Olabilir, bu yüzden gerçekten güvenilir değildir. Geçmiş dosyasına kaydedilirse, cpkomutu arayabilir ve dosyada geriye doğru bakabilirsiniz, ancak orada değilse, yapacak çok şey yoktur.
grep: /var/log/auth.log: No such file or directory:-(