Direktori Home terenkripsi bukan pemasangan otomatis

10

Saya entah bagaimana berhasil memecahkan pemasangan otomatis untuk direktori rumah terenkripsi saya.

Setiap kali saya masuk melalui SSH, saya melihat ini:

valorin@joshua:~$ ls -la
total 44
dr-x------ 3 valorin valorin  4096 2012-03-17 17:10 .
drwxr-xr-x 7 root    root     4096 2012-03-17 11:45 ..
lrwxrwxrwx 1 valorin valorin    56 2012-03-08 20:37 Access-Your-Private-Data.desktop -> /usr/share/ecryptfs-utils/ecryptfs-mount-private.desktop
-rw------- 1 valorin valorin   917 2012-03-17 19:24 .bash_history
drwx------ 3 valorin valorin  4096 2012-03-16 17:58 .cache
lrwxrwxrwx 1 valorin valorin    33 2012-03-08 20:37 .ecryptfs -> /home/.ecryptfs/valorin/.ecryptfs
-rw-r--r-- 1 root    root    21954 2012-03-08 20:35 .face
lrwxrwxrwx 1 valorin valorin    32 2012-03-08 20:37 .Private -> /home/.ecryptfs/valorin/.Private
lrwxrwxrwx 1 valorin valorin    52 2012-03-08 20:37 README.txt -> /usr/share/ecryptfs-utils/ecryptfs-mount-private.txt
-rw------- 1 root    root      703 2012-03-17 17:10 .viminfo

Adakah ide yang telah saya lakukan, dan bagaimana cara memperbaikinya?

MEMPERBARUI:

Saya telah mengatur otentikasi kunci SSH menggunakan metode di sini , yang kemudian menjadi alasan untuk direktori home terenkripsi yang tidak berfungsi.

Jadi, pertanyaan baru saya, bagaimana cara mendapatkannya secara otomatis meminta kata sandi setelah saya login dengan kunci auth SSH?

Stephen RC
sumber
Apakah Anda diminta memasukkan kata sandi masuk saat masuk? Apakah ada pesan eCryptfs di syslog?
Dustin Kirkland
@DustinKirkland, lihat pembaruan saya di pertanyaan. Saya menyadari itu karena saya sudah mengatur kunci SSH auth ... jadi tidak ada kata sandi yang diminta.
Stephen RC
aha, baik kalau begitu ;-) Saya akan mengirim jawaban yang lebih baik di bawah, sekarang.
Dustin Kirkland

Jawaban:

28

Oke, jadi walaupun dimungkinkan untuk menggunakan otentikasi Kunci Publik SSH untuk masuk ke sistem Anda tanpa memasukkan kata sandi (bahkan jika direktori home Anda dienkripsi), tidak mungkin untuk me-mount direktori home terenkripsi Anda.

Untuk mengatasinya, Anda harus menambahkan baris ke akhir $ HOME / .profile Anda yang belum di- mount :

ecryptfs-mount-private

Ini akan memastikan bahwa setelah Anda masuk menggunakan otentikasi Kunci Publik SSH, Anda akan dimintai kata sandi dan akan memasang data terenkripsi Anda. Jika sudah di-mount, maka perintah ini seharusnya berhasil secara diam-diam.

Nikmati!

Pengungkapan penuh: Saya adalah salah satu penulis dan pengelola eCryptfs.

Dustin Kirkland
sumber
1
Luar biasa, terima kasih, itu sesuai dengan yang saya inginkan :) Saya harus menambahkan cd /home/$HOMEke dalam file profil juga, untuk menyegarkannya meskipun setelah didekripsi.
Stephen RC
1
Hanya untuk menyebutkan bahwa jika Anda menggunakannya zshharus ~/.zprofilebukan~/.profile
Timmy O'Mahony
Mungkin ini akan membantu orang lain: Saya punya masalah di mana ecryptfs-mount-privatetampaknya tidak melakukan apa-apa; bahkan tidak meminta kata sandi. Ternyata itu berhasil, dan tidak perlu kata sandi karena saya sudah memasukkannya saat menggunakan sudosesuatu yang lain, tetapi saya perlu mengubah direktori kerja saat ini dari /home/arthurdan kembali lagi sebelum saya melihat file saya.
Arthur Tacca
Terima kasih @ TimmyO'Mahony! Saya tidak akan dengan pilihan menggunakan zshtetapi itu adalah instalasi yang benar-benar baru, dan saya ingat melihat bahwa itu tidak dapat menyelamatkan sejarah .zsh saya ...
Auspex
2

Coba yang berikut ini:

  1. Pastikan itu /etc/pam.d/common-sessionmengandung baris ini:

     # Encrypt home
     session    optional    pam_ecryptfs.so unwrap
    
  2. Pastikan itu /etc/pam.d/common-authmengandung baris ini:

     auth   optional    pam_ecryptfs.so unwrap
    
  3. Pastikan itu /etc/pam.d/sshdberisi baris-baris ini:

     # Standard Un*x authorization.
     @include common-account
    
     # Standard Un*x session setup and teardown.
     @include common-session
    
  4. Jika Anda telah mengubah kata sandi pengguna Anda baru-baru ini, periksa /etc/pam.d/common-password

    Jika tidak mengandung baris ini:

     password   optional    pam_ecryptfs.so
    

    Maka Anda perlu kata sandi lama Anda untuk mengkonfigurasi ulang ecryptfs.

    Saran saya adalah untuk mengubah akun Anda menggunakan kata sandi Anda sebelumnya passwddan kemudian menambahkan baris di atas /etc/pam.d/common-passworddan kemudian mengubah kata sandi kembali ke kata sandi baru.

    Atau Anda dapat mencoba ini:

    ecryptfs-setup-private

    Pastikan Anda memasukkan kata sandi yang sama dengan kata sandi pengguna saat diminta.

  5. Jika tidak ada di atas yang berfungsi, coba jalankan ecryptfs-setup-privatemungkin itu akan memperbaiki sesuatu.

  6. Jika masih tidak berfungsi maka saya kehabisan ide, maaf.

d_inevitable
sumber
Semua konfigurasi itu terlihat bagus. Periksa pembaruan untuk pertanyaan saya, saya pikir itu karena kunci SSH auth saya sudah mengatur.
Stephen RC
Cobalah mengubah optionalke requireddalam common-account. Idenya adalah bahwa pam harus benar-benar meminta kata sandi jika tidak mendapatkannya. Pastikan untuk tetap membuka sesi sehingga Anda tidak berisiko mengunci diri.
d_inevitable
apa yang Anda maksud dengan "akun bersama"?
Peter Fleix
2

Dengan mengikuti instruksi ini yang Anda sebutkan di posting Anda, Anda secara khusus membuatnya sehingga Anda dapat SSH ke akun Anda tanpa folder rumah Anda sedang di-mount. Jika Anda membatalkan apa yang Anda lakukan di sana dan mengembalikannya ke keadaan semula, maka ketika Anda masuk SSH Anda akan dipaksa untuk memasukkan kata sandi Anda jika direktori home Anda belum didekripsi. (Jika direktori home Anda sudah didekripsi karena sesi lain, maka kunci SSH Anda akan berfungsi dengan sempurna untuk koneksi tanpa kata sandi!)

Jika tidak, alternatifnya adalah menjalankan ecryptfs-mount-privatesetelah Anda masuk dengan kunci Anda untuk secara manual mendekripsi folder rumah Anda.

Macil
sumber
Apakah ada cara untuk ecryptfs-mount-privateberjalan secara otomatis ketika saya masuk?
Stephen RC
Hanya memperbarui tautan "petunjuk ini", karena saya harus melacaknya di mesin Wayback: stephen.rees-carter.net/thought/... Pemikiran tambahan pada artikel yang direferensikan: alih-alih menyimpan otor_keys sebagai / rumah / .ssh/ % u, simpan official_keys di /home/.ssh/%u/authorized_keys di mana /home/.ssh/%u/ dimiliki oleh% u:% u dengan 700 perm, dan file tersebut dimiliki oleh% u dengan 600 perms.
Jeremy Lyons
@StephenRC membuat profil ~ /. Yang menjalankan ecryptfs-mount-private di direktori home Anda yang tidak dienkripsi.
Jeremy Lyons