Saya ingin memasang sistem file jaringan CIFS dengan samba di sistem Linux Arch saya. Saya ingin me-mount sistem file ini setiap kali saya masuk (baik melalui ssh, TTY, atau melalui KDM).
Saya bisa sangat dekat dengan apa yang saya inginkan dengan menambahkan berbagi jaringan /etc/fstab
. "Masalah" terbesar adalah bahwa ini mengharuskan pengodean kata sandi saya menjadi sulit /etc/fstab
atau membuat file kredensial dengan nama pengguna dan kata sandi saya. Tampaknya tidak aman bagi saya untuk menyimpan nama pengguna dan kata sandi saya dalam file teks biasa bahkan jika saya mengatur izin ke 600.
Apakah ada cara "tepat" untuk mengotomatiskan berbagi jaringan secara aman? Dapatkah saya melakukan ini dengan PAM (nama pengguna dan kata sandi saya sama pada kedua mesin) dan jika demikian bagaimana?
Jawaban:
Metode # 1 -
/etc/fstab
Saya sadar Anda sedang mencari alternatif untuk ini, tetapi di sini secara khusus cara mengeluarkan kredensial Anda dari
/etc/fstab
file:Kemudian di file
/etc/cifsauth
:Buat izin file ini
600
, yaituchmod 600 /etc/cifsauth
.Metode # 2 - pam_mount
Anda dapat menginstal pam_mount dan kemudian mengatur pemasangan generik untuk semua pengguna yang masuk seperti ini:
Metode ini masih memiliki masalah yang sama dengan metode # 1, di mana kredensial disimpan dalam file
/home/%(USER)/.Music.cred
,. Ini adalah jenis file kredensial yang sama seperti pada metode pertama, jadi pastikan izinnya juga 600.Metode # 3 - gunakan gvfs-mount
U&L T&J ini berjudul: Dapatkah saya mengotomatiskan pemasangan cif berbagi tanpa menyimpan kata sandi dalam plaintext? berisi jawaban oleh @Gilles yang menjelaskan tentang menggunakan GNOME Keyring untuk mempertahankan kredensial CIFS Anda.
Anda kemudian dapat mengakses saham CIFS menggunakan GVFS - Sistem File Virtual GNOME - seperti ini:
Ini akan memetakan pembagian dari nama host yang disebut sharename dan memasangnya di bawah
$HOME/.vfs/sharename on hostname
. Anda tidak dapat mengendalikan ini dengan cara apa pun. Hardcoded untuk selalu dipasang di sini, saya sudah melihat!Namun Anda dapat membuat tautan ke tunggangan ini yang merupakan apa yang saya lakukan sehingga saya dapat mengakses bagian yang telah saya pasang. Penggunaannya
.gvfs
sangat disayangkan karena beberapa alat tidak mencantumkan dot direktori dalam penjelajahan file sehingga sering kali tautan yang saya buat adalah satu-satunya cara untuk mengakses bagian ini.sumber
.cifsauth
untuk menghapususername=
, atau bahwausername=
keadilan tidak diperlukan bersama-sama?Ternyata itulah
pam_mount
jalan yang harus ditempuh. Anda menambahkan berbagi jaringan ke/etc/security/pam_mount.conf.xml
Ini harus secara teoritis mungkin untuk menggunakan
%(USER)
,%(USERUID)
dan%(USERGID)
variabel untuk membuatnya me-mount umum, tapi aku tidak bisa mendapatkan bagian untuk bekerja pada Arch Linux. Anda juga perlu mengkonfigurasi sistem Anda untuk digunakanpam_mount
. Anda perlu memodifikasi keduanya/etc/pam.d/system-auth
dan login-manager yang sesuai. Untuk KDM itu/etc/pam.d/kde
. Modifikasi pada dasarnya melibatkan penambahanoptional pam_mount.so
ke setiap bagian dari kedua file, tetapi detail yang tepat rumit karena masalah pemesanan. Saya mengikuti Arch Wiki .Dengan pengaturan ini dan nama pengguna / kata sandi yang sama di server dan mesin saya, saya dapat memasang secara otomatis tanpa menyimpan file kredensial di mana pun.
sumber
pam
dan sisanya, secara pribadi, dan saya perhatikan mereka memiliki kecenderungan untuk merangkak lebih jauh ke konfigurasi sistem - tetapi ini pasti menjawab pertanyaan. Bisakah saya bertanya mengapa Anda begitu menentang menyimpan kredensial? Izin pengguna dan / atau kepemilikan / enkripsi file harus lebih dari cukup di sana. Pada beberapa sistem Anda bahkan dapat menyimpan informasi seperti itu di vars firmware yang hanya dapat diakses setelah otentikasi.ssh
menyimpan kredensial berdasarkan izin fs, misalnya, bukan?