Bagaimana saya bisa menghapus info masuk terakhir ssh?

15

Setiap kali saya masuk ke server menggunakan ssh. Prompt memberi saya informasi "login terakhir". Saya bertanya-tanya dari mana informasi ini berasal. Bagaimana saya bisa menghapus catatan ini sehingga ketika orang lain masuk ke server yang sama, orang itu akan melihat info masuk saya dengan ip saya di dalamnya?

Jadi bagaimana saya bisa melakukan ini? Sebagai catatan, saya tidak meretas komputer seseorang dan server menjalankan Ubuntu 12.04.

EDIT: file mana yang mencatat informasi seperti ini? Jika saya menemukan file, maka saya bisa melakukan apa saja sebagai root.

Terima kasih.

Gnijuohz
sumber
Ubuntu 11.04! = Ubuntu 12.04.
CVn
Perhatikan bahwa informasi ini juga dapat diminta dengan menjalankan last $USER.
Jaap Eldering
@ MichaelKjörling apa maksudmu?
Gnijuohz
!=umumnya dibaca sebagai "tidak sama dengan". Anda menulis Ubuntu 12.04dalam teks pertanyaan, tetapi menggunakan ubuntu-11.04tag. Keduanya tidak setara, jadi yang satu pasti salah.
CVn
@ MichaelKjörling maaf, saya tidak melihat tag saya salah. Terima kasih!
Gnijuohz

Jawaban:

7

Selain / var / log / lastlog, ada 3 file dalam /var/rundan /var/log: utmp, wtmpdan btmp, yang terus info tentang login saat ini (dan info tambahan), sejarah dan login gagal. Lihat http://en.wikipedia.org/wiki/Utmp untuk deskripsi terperinci. Anda tidak dapat mengedit file dengan editor normal, tetapi dapat menghapusnya.

ott--
sumber
2
Ini bukan jawaban yang tepat.
vemv
44

Di ubuntu, ia ditemukan di /etc/ssh/sshd_config.

Temukan baris yang mengatakan:

PrintLastLog yes

dan ubah ke

PrintLastLog no (atau tambahkan jika tidak ada)

Cameron Aziz
sumber
3
jangan lupa, Anda harus memulai kembali ssh dengan perintah berikut: service ssh restart ini semua harus dilakukan dengan root / sudo
Cameron Aziz
Terima kasih, tetapi saya ingin mencari file yang memiliki info lebih lanjut.
Gnijuohz
oh, maaf, sepertinya ott dapat yang ini.
Cameron Aziz
Saya percaya masalah Anda akan diselesaikan dengan menghapus file-file berikut: /var/log/wtmpdan /var/log/btmpdan mungkin /var/log/utmp. Mungkin ada file lain /var/logyang memiliki data masuk pengguna (seperti /var/log/wtmp.1) sehingga Anda harus menghapusnya juga
Cameron Aziz
Tidak perlu meminta maaf. Bantuan Anda sangat dihargai ~
Gnijuohz
4

utmp biasanya di / var / run, bukan / var / log. wtmp dan btmp ada di / var / log.

ssh bukan satu-satunya program yang menulis ke tiga file ini. Jika Anda menghapusnya, seperti yang disarankan seseorang, Anda akan merusak banyak program. Mereka diharapkan ada di sana. Ubah file / etc / ssh / sshd_config, seperti yang disarankan Cameron Aziz.

Anda bukan satu-satunya proses dalam shell. Anda tidak menggunakan sistem operasi satu-tugas. Membiasakan diri bekerja pada sistem operasi jaringan yang benar adalah salah satu perubahan mental tersulit yang pernah saya buat, tepat di sana dengan menggunakan mainframe dan belajar kalkulus. Secara praktis, ini berarti Anda tidak boleh menghapus file kecuali Anda tahu persis apa yang dilakukannya di sistem.

Untuk mendapatkan rasa seberapa luas beberapa file digunakan, lihat lsof dan bermain-main dengannya. Bahkan lsof hanya memberi tahu Anda proses apa SAAT menggunakan file Anda, itu tidak memberi Anda data historis, jadi berhati-hatilah.

artp
sumber
1

Kata kunci konfigurasi PrintLastLog menarik informasi dari file / var / log / lastlog

Anda dapat menggunakan perintah lastlog , untuk melihat informasi ini di baris perintah.

Don Simon
sumber
1

Inilah alternatif yang berfungsi untuk GNU dan BSD (Mac OS X). Itu juga menjelaskan fakta bahwa sebagian besar pengaturan dikomentari secara default - mereka ada di El Capitan):

sudo sed -i.bak "s/^#?PrintLastLog yes$/^PrintLastLog no$/" /etc/ssh/sshd_config

Tanpa -i.bakperubahan saya terus mendapatkan:

sed: 1: "/etc/ssh/sshd_config": bad flag in substitute command: 'h'
SEWA
sumber
0

Inilah Perintah Untuk Melakukan Ini Secara Otomatis:

sudo sed -i "s/PrintLastLog .*/PrintLastLog no/1" /etc/ssh/sshd_config
Andy
sumber