GNU/Linux >> Belajar Linux >  >> Linux

Kelola direktori home pengguna Linux dengan systemd-homed

Seluruh konsep dan implementasi systemd telah memperkenalkan banyak perubahan sejak mulai menggantikan alat startup dan init SystemV yang lama. Seiring waktu, systemd telah diperluas ke banyak segmen lain dari lingkungan Linux.

Satu layanan yang relatif baru, systemd-homed, memperluas jangkauan systemd ke dalam pengelolaan direktori home pengguna. Fitur ini hanya memberlakukan akses pengguna manusia dan membatasi pengguna sistem dalam rentang User ID (UID) antara 0 dan 999. Saya mendukung rencana systemd untuk mengambil alih dunia, tetapi saya bertanya-tanya apakah ini agak berlebihan. Kemudian saya melakukan riset.

Apa itu systemd-homed?

Layanan systemd-homed mendukung portabilitas akun pengguna yang terlepas dari sistem komputer yang mendasarinya. Contoh praktisnya adalah membawa direktori home Anda pada USB thumb drive dan menghubungkannya ke sistem apa pun yang secara otomatis akan mengenali dan memasangnya. Menurut Lennart Poettering, pengembang utama systemd, akses ke direktori home pengguna tidak boleh diberikan kepada siapa pun kecuali jika pengguna login. Layanan systemd-homed dirancang untuk meningkatkan keamanan, terutama untuk perangkat seluler seperti laptop. Ini juga tampak seperti alat yang mungkin berguna dengan wadah.

Tujuan ini hanya dapat dicapai jika direktori home berisi semua metadata pengguna. File ~/.identity menyimpan informasi akun pengguna, yang hanya dapat diakses oleh systemd-homed saat kata sandi dimasukkan. File ini menyimpan semua metadata akun, termasuk semua yang perlu diketahui Linux tentang Anda, sehingga direktori home dapat dibawa-bawa ke semua host Linux yang menggunakan systemd-homed. Pendekatan ini mencegah memiliki akun dengan sandi tersimpan di setiap sistem yang mungkin perlu Anda gunakan.

Direktori home juga dapat dienkripsi menggunakan kata sandi Anda. Di bawah systemd-homed, direktori home Anda menyimpan kata sandi Anda dengan semua metadata pengguna Anda. Kata sandi terenkripsi Anda tidak disimpan di tempat lain sehingga tidak dapat diakses oleh siapa pun. Meskipun metode yang digunakan untuk mengenkripsi dan menyimpan kata sandi untuk sistem Linux modern dianggap tidak dapat dipecahkan, perlindungan terbaik adalah mencegahnya diakses sejak awal. Asumsi tentang kekebalan keamanan mereka telah menyebabkan banyak kehancuran.

Layanan ini terutama ditujukan untuk digunakan dengan perangkat portabel seperti laptop. Poettering menyatakan, "Homed ditujukan terutama untuk mesin klien, yaitu laptop dan dengan demikian mesin yang biasanya Anda ssh dari lebih dari ssh ke, jika Anda mengikuti apa yang saya maksud." Ini tidak dimaksudkan untuk digunakan pada server atau workstation yang ditambatkan ke satu lokasi dengan kabel atau dikunci ke dalam ruang server.

Layanan systemd-homed diaktifkan secara default pada instalasi baru—setidaknya untuk Fedora, yang merupakan distro yang saya gunakan. Konfigurasi ini dirancang, dan saya tidak berharap itu berubah. Akun pengguna tidak terpengaruh atau diubah dengan cara apa pun pada sistem dengan sistem file yang ada, peningkatan atau penginstalan ulang yang mempertahankan partisi yang ada, dan volume logis.

Membuat pengguna terkontrol

Alat tradisional seperti useradd buat akun dan direktori home yang tidak dikelola systemd-homed. Oleh karena itu, jika Anda terus menggunakan alat manajemen pengguna konvensional, direktori home di direktori home Anda tidak dikelola oleh systemd-homed. Hal ini juga terjadi pada akun pengguna non-root yang dibuat selama instalasi baru.

Perintah homectl

homectl perintah membuat akun pengguna yang dikelola systemd-homed. Menggunakan homectl perintah untuk membuat akun baru menghasilkan metadata yang diperlukan untuk membuat direktori home portabel.

homectl halaman manual perintah memiliki penjelasan yang baik tentang tujuan dan fungsi layanan systemd-homed. Namun, membaca homectl halaman manual cukup menarik, terutama bagian Contoh. Dari lima contoh, tiga menunjukkan cara membuat akun pengguna dengan batasan tertentu yang diberlakukan, seperti jumlah maksimum proses bersamaan atau jumlah ruang disk maksimum.

Dalam pengaturan non-homectl, /etc/security/limits.conf file memberlakukan batasan ini. Satu-satunya keuntungan yang dapat saya lihat adalah ia menambahkan pengguna dan menerapkan batasan dengan satu perintah. Dengan metode tradisional, sysadmin harus mengkonfigurasi limits.conf file secara manual.

Batasan

Satu-satunya batasan signifikan yang saya ketahui adalah tidak mungkin mengakses direktori home pengguna dari jarak jauh menggunakan OpenSSH. Keterbatasan ini disebabkan oleh ketidakmampuan PAM saat ini untuk menyediakan akses ke direktori home yang dikelola oleh homectl . Penyair tampaknya meragukan hal ini dapat diatasi. Masalah ini akan mencegah saya menggunakan systemd-homed untuk direktori home saya di workstation utama saya atau bahkan laptop saya. Saya biasanya login ke kedua komputer dari jarak jauh beberapa kali sehari menggunakan SSH, jadi ini adalah penghalang bagi saya.

Kekhawatiran lain yang dapat saya lihat adalah bahwa Anda masih memerlukan komputer Linux untuk digunakan dengan USB thumb drive dengan direktori home Anda di dalamnya, dan komputer tersebut harus menjalankan systemd-homed.

Ini opsional

Namun, Anda tidak harus menggunakannya. Saya berencana untuk terus menggunakan alat tradisional untuk manajemen pengguna guna mendukung alur kerja saya. Default untuk beberapa distro yang sedikit saya ketahui, termasuk Fedora, adalah untuk mengaktifkan dan menjalankan layanan systemd-homed. Anda dapat menonaktifkan dan menghentikan layanan systemd-homed tanpa mempengaruhi akun pengguna tradisional.

Pemikiran terakhir

Sysadmin dapat menggunakan layanan systemd-homed untuk bentuk pengelolaan direktori home pengguna roaming yang aman. Ini berguna pada perangkat portabel seperti laptop dan dapat sangat berguna bagi pengguna yang membawa thumb drive yang hanya berisi direktori home mereka untuk menghubungkannya ke komputer Linux yang nyaman.

Batasan utama menggunakan systemd-homed adalah tidak mungkin untuk masuk dari jarak jauh menggunakan SSH. Dan meskipun systemd-homed diaktifkan secara default, itu tidak mempengaruhi direktori home yang dibuat dengan useradd memerintah. Saya perlu menunjukkan bahwa—seperti banyak alat systemd—systemd-homed adalah opsional. Jadi saya hanya menghentikan dan menonaktifkan layanan.

Jika saya perlu membawa direktori home saya dalam paket yang lebih kecil dari laptop saya, saya bisa menggunakan live USB dengan penyimpanan persisten.

Sumber daya

  • https://systemd.io/HOME_DIRECTORY/
  • https://www.freedesktop.org/software/systemd/man/homectl.html
  • https://www.freedesktop.org/software/systemd/man/systemd-homed.service.html
  • https://wiki.archlinux.org/title/Systemd-homed

Linux
  1. Kelola Pengguna Linux &Grup Linux

  2. Bagaimana mengelola pengguna dengan useradd di linux

  3. Linux – Izinkan Pengguna Membaca Direktori Beranda Beberapa Pengguna Lain?

  1. Cara Menghapus Akun Pengguna dengan Direktori Rumah di Linux

  2. Instal WordPress di Linux dengan Apache

  3. Izinkan pengguna untuk membaca beberapa direktori home pengguna lain

  1. Daftar Pengguna di Linux - Metode terbaik

  2. Cara Membuat Pengguna Dengan Direktori Home Kustom Di Linux

  3. Cara Bekerja Dengan Pengguna Dan Grup Di Linux