Cara Menghapus Pengguna di Linux (dan Hapus Setiap Jejak)

Memadamkan pengguna di Linux memerlukan lebih banyak perkara daripada yang anda fikirkan. Sekiranya anda pentadbir sistem, anda pasti ingin membersihkan semua jejak akaun dan aksesnya dari sistem anda. Kami akan menunjukkan kepada anda langkah-langkah yang harus diambil.

Sekiranya anda hanya ingin menghapus akaun pengguna dari sistem anda dan tidak bimbang untuk mengakhiri proses yang sedang berjalan dan tugas pembersihan lain, ikuti langkah-langkah di bahagian "Menghapus Akaun Pengguna" di bawah. Anda memerlukan deluserarahan mengenai pengedaran berasaskan Debian dan userdelperintah pada pengedaran Linux yang lain.

Akaun Pengguna di Linux

Sejak sistem perkongsian masa pertama muncul pada awal tahun 1960-an dan membawa kemampuan mereka untuk banyak pengguna bekerja pada satu komputer, ada keperluan untuk mengasingkan dan memisahkan fail dan data setiap pengguna dari semua pengguna lain. Oleh itu, akaun pengguna dan kata laluan dilahirkan.

Akaun pengguna mempunyai overhead pentadbiran. Mereka perlu dibuat semasa pengguna pertama kali memerlukan akses ke komputer. Mereka perlu dikeluarkan apabila akses itu tidak diperlukan lagi. Di Linux, terdapat urutan langkah yang harus diikuti untuk menghapus pengguna, fail mereka, dan akaun mereka dari komputer dengan betul dan metodis.

Sekiranya anda pentadbir sistem, tanggungjawab anda akan terpikul. Inilah cara untuk menyelesaikannya.

Senario Kami

Terdapat sebilangan sebab mengapa akaun mungkin dihapuskan. Seorang kakitangan mungkin berpindah ke pasukan lain atau meninggalkan syarikat sama sekali. Akaun tersebut mungkin telah disediakan untuk kerjasama jangka pendek dengan pelawat dari syarikat lain. Pasukan adalah perkara biasa di akademik, di mana projek penyelidikan boleh merangkumi jabatan, universiti yang berbeza, dan juga entiti komersial. Pada akhir projek, pentadbir sistem harus melakukan pengemasan dan membuang akaun yang tidak diperlukan.

Senario terburuk adalah ketika seseorang pergi di bawah awan kerana salah laku. Kejadian seperti ini biasanya berlaku secara tiba-tiba, dengan sedikit amaran awal. Itu memberi sedikit masa kepada pentadbir sistem untuk merancang, dan mendesak agar akaun dikunci, ditutup dan dihapus — dengan salinan fail pengguna disandarkan sekiranya diperlukan untuk sebarang forensik pasca penutupan.

Dalam senario kami, kami akan berpura-pura bahawa pengguna, Eric, telah melakukan sesuatu yang memerlukan penghapusan segera dari premis. Pada masa ini dia tidak menyedari ini, dia masih bekerja, dan log masuk. Sebaik sahaja kamu memberi anggukan kepada keselamatan, dia akan dikawal dari bangunan.

Semuanya sudah siap. Semua mata tertumpu pada anda.

Periksa Log Masuk

Mari kita lihat apakah dia benar-benar log masuk dan, jika dia ada, berapa banyak sesi yang dia kerjakan. The whoarahan akan menyenaraikan sesi aktif.

who

Eric dilog masuk sekali. Mari lihat proses apa yang sedang dijalankannya.

Mengkaji Proses Pengguna

Kita boleh menggunakan psperintah untuk menyenaraikan proses yang dijalankan oleh pengguna ini. Pilihan -u(pengguna) membolehkan kami memberitahu psuntuk membatasi outputnya ke proses yang berjalan di bawah pemilikan akaun pengguna tersebut.

ps -u eric

Kita dapat melihat proses yang sama dengan lebih banyak maklumat menggunakan topperintah. top juga mempunyai pilihan -U(pengguna) untuk menyekat output pada proses yang dimiliki oleh satu pengguna. Perhatikan bahawa kali ini adalah huruf besar "U."

atas -U eric

Kami dapat melihat memori dan penggunaan CPU setiap tugas, dan dapat dengan cepat mencari apa saja dengan aktiviti yang mencurigakan. Kami akan membunuh semua prosesnya secara paksa, jadi paling aman meluangkan masa untuk menyemak prosesnya dengan cepat, dan periksa dan pastikan pengguna lain tidak akan merasa tidak selesa ketika anda menghentikan ericproses akaun pengguna .

Nampaknya dia tidak banyak melakukan, hanya  lessuntuk melihat fail. Kami selamat meneruskannya. Tetapi sebelum kita mematikan prosesnya, kita akan membekukan akaun dengan mengunci kata laluan.

BERKAITAN: Cara Menggunakan Perintah ps untuk Memantau Proses Linux

Mengunci Akaun

Kami akan mengunci akaun sebelum kami membunuh prosesnya kerana apabila kami membunuh proses itu, pengguna akan log keluar. Sekiranya kita sudah menukar kata laluannya, dia tidak akan dapat masuk semula.

Kata laluan pengguna yang dienkripsi disimpan dalam /etc/shadowfail. Anda biasanya tidak akan peduli dengan langkah-langkah berikutnya, tetapi supaya anda dapat melihat apa yang berlaku dalam /etc/shadow fail semasa anda mengunci akaun, kami akan mengambil sedikit jalan memutar. Kita boleh menggunakan perintah berikut untuk melihat dua bidang pertama entri untuk  eric akaun pengguna.

sudo awk -F: '/ eric / {print $ 1, $ 2}' / etc / shadow

Perintah awk menguraikan bidang dari fail teks dan memanipulasikannya secara pilihan. Kami menggunakan pilihan -F(pemisah bidang) untuk memberitahu awkbahawa fail menggunakan titik dua " :" untuk memisahkan medan. Kami akan mencari garis dengan corak "eric" di dalamnya. Untuk garis yang sepadan, kami akan mencetak medan pertama dan kedua. Ini adalah nama akaun dan kata laluan yang disulitkan.

Entri untuk akaun pengguna dicetak untuk kami.

Untuk mengunci akaun, kami menggunakan passwdarahan. Kami akan menggunakan pilihan -l(kunci) dan memasukkan nama akaun pengguna untuk mengunci.

sudo passwd -l eric

Sekiranya kita memeriksa /etc/passwdfail itu lagi, kita akan melihat apa yang berlaku.

sudo awk -F: '/ eric / {print $ 1, $ 2}' / etc / shadow

Tanda seru telah ditambahkan pada permulaan kata laluan yang disulitkan. Ia tidak menimpa watak pertama, ia hanya ditambahkan pada permulaan kata laluan. Itu sahaja yang diperlukan untuk mengelakkan pengguna daripada log masuk ke akaun tersebut.

Sekarang kerana kami telah menghalang pengguna untuk log masuk semula, kami dapat membunuh prosesnya dan mengeluarkannya.

Membunuh Proses

Terdapat cara yang berbeza untuk membunuh proses pengguna, tetapi arahan yang ditunjukkan di sini tersedia secara meluas dan merupakan pelaksanaan yang lebih moden daripada beberapa alternatif. The pkillarahan akan mencari dan proses membunuh. Kami menyampaikan isyarat KILL, dan menggunakan pilihan -u(pengguna).

sudo pkill -KILL -u eric

Anda kembali ke arahan arahan dengan cara yang sangat anti-iklim. Untuk memastikan sesuatu berlaku, periksa wholagi:

who

Sesi dia habis. Dia telah dikeluarkan dan prosesnya dihentikan. Itulah keadaan yang mendesak daripada keadaan. Sekarang kita dapat berehat sedikit dan meneruskan pembersihan yang lain ketika keselamatan berjalan kaki ke meja Eric.

BERKAITAN: Cara Membunuh Proses Dari Terminal Linux

Mengarkibkan Direktori rumah Pengguna

Tidak diragukan lagi bahawa dalam senario seperti ini, akses ke fail pengguna akan diperlukan di masa depan. Sama ada sebagai sebahagian daripada penyiasatan atau hanya kerana penggantinya mungkin perlu merujuk kepada karya pendahulunya. Kami akan menggunakan tararahan untuk mengarkibkan keseluruhan direktori utama mereka.

Pilihan yang kami gunakan adalah:

  • c : Buat fail arkib.
  • f : Gunakan nama fail yang ditentukan untuk nama arkib.
  • j : Gunakan pemampatan bzip2.
  • v : Berikan output verbose semasa arkib dibuat.
sudo tar cfjv eric-20200820.tar.bz / rumah / eric

Banyak output skrin akan menatal di tetingkap terminal. Untuk memeriksa arkib telah dibuat, gunakan lsarahan. Kami menggunakan pilihan -l(format panjang) dan -h(boleh dibaca manusia).

ls -lh eric-20200802.tar.bz

Fail 722 MB telah dibuat. Ini boleh disalin di tempat yang selamat untuk disemak kemudian.

Mengeluarkan Pekerjaan cron

Sebaiknya periksa sekiranya terdapat cronpekerjaan yang dijadualkan untuk akaun pengguna eric. A cronkerja adalah arahan yang dicetuskan pada masa atau jangka masa yang ditetapkan. Kami dapat memeriksa apakah ada cronpekerjaan yang dijadwalkan untuk akaun pengguna ini dengan menggunakan ls:

sudo ls -lh / var / spool / cron / crontabs / eric

Sekiranya ada sesuatu di lokasi ini, ini bermakna ada cronpekerjaan yang diatur untuk akaun pengguna tersebut. Kita boleh menghapusnya dengan crontabarahan ini . Opsi -r(hapus) akan menghapus tugas, dan pilihan -u(pengguna) memberitahu crontabtugas siapa yang akan dibuang.

sudo crontab -r -u eric

Tugas dihapuskan secara senyap. Untuk pengetahuan kita, sekiranya Eric mengesyaki dia akan diusir, dia mungkin telah menjadualkan pekerjaan jahat. Langkah ini adalah amalan terbaik.

Mengeluarkan Pekerjaan Cetakan

Mungkin pengguna mempunyai pekerjaan cetak yang belum selesai? Yang pasti, kami dapat membersihkan barisan cetak dari sebarang pekerjaan yang dimiliki oleh akaun pengguna eric. The lprmarahan membuang pekerjaan dari baris gilir cetakan. Pilihan -U(nama pengguna) membolehkan anda membuang pekerjaan yang dimiliki oleh akaun pengguna bernama:

lprm -U eric

Tugas dikeluarkan dan anda dikembalikan ke baris arahan.

Memadamkan Akaun Pengguna

Kami telah membuat sandaran fail dari /home/eric/direktori, sehingga kami dapat terus maju dan menghapus akaun pengguna dan menghapus /home/eric/direktori pada masa yang sama.

Perintah untuk digunakan bergantung pada sebaran Linux yang anda gunakan. Untuk pengedaran Linux berdasarkan Debian, perintahnya adalah deluser, dan untuk seluruh dunia Linux, ia adalah userdel.

Sebenarnya, di Ubuntu kedua-dua arahan tersedia. Saya separuh mengharapkan yang lain adalah alias yang lain, tetapi mereka adalah binari yang berbeza.

taip jenis
taip userdel

Walaupun keduanya tersedia, cadangannya adalah untuk menggunakan deluserpengedaran yang berasal dari Debian:

" userdelAdalah utiliti tahap rendah untuk membuang pengguna. Di Debian, pentadbir biasanya harus menggunakan deluser(8) sebagai gantinya. "

Itu cukup jelas, jadi arahan untuk digunakan pada komputer Ubuntu ini adalah deluser. Kerana kami juga mahu direktori beranda mereka dihapus, kami menggunakan --remove-homebendera:

sudo deluser --rove-home eric

Perintah yang akan digunakan untuk pengedaran bukan Debian adalah userdel, dengan --removebendera:

sudo userdel --hapus eric

Semua jejak akaun pengguna erictelah dipadamkan. Kami dapat memeriksa bahawa /home/eric/direktori telah dikeluarkan:

ls / rumah

The erickumpulan juga telah dikeluarkan kerana akaun pengguna ericadalah satu-satunya catatan dalam ia. Kami dapat memeriksanya dengan mudah dengan memasukkan isi /etc/groupmelalui grep:

sudo kurang / etc / group | grep eric

Ini Bungkus

Eric, kerana dosanya, hilang. Keselamatan masih membawanya keluar dari bangunan dan anda telah menyimpan dan mengarkibkan failnya, menghapus akaunnya, dan membersihkan sistem dari sisa-sisa.

Ketepatan selalu mengalahkan kepantasan. Pastikan anda mempertimbangkan setiap langkah sebelum anda mengambilnya. Anda tidak mahu seseorang berjalan ke meja anda dan berkata "Tidak, Eric yang lain."