Samba paylaşımını monte etmenin uygun yolu


9

Arch Linux sistemime samba ile bir CIFS ağ dosya sistemi kurmak istiyorum. Her giriş yaptığımda (ssh, TTY veya KDM aracılığıyla) bu dosya sistemini bağlamak istiyorum.

Ağ paylaşımını ekleyerek istediğim şeye oldukça yaklaşabilirim /etc/fstab. En büyük "sorun", bunun parolamı sabit olarak kodlamasını /etc/fstabveya kullanıcı adım ve parolamla bir kimlik bilgileri dosyası oluşturmasını gerektirmesidir . İzinleri 600 olarak ayarlasam bile kullanıcı adımı ve şifremi düz metin dosyasında saklamam güvenli değil.

Ağ paylaşımını güvenli bir şekilde otomatik hale getirmenin "uygun" bir yolu var mı? Bunu PAM ile yapabilir miyim (kullanıcı adım ve şifrem her iki makinede de aynıdır) ve eğer öyleyse nasıl?


Baktığınız pam_cifs ? "pam_cifs, kullanıcı başına oturum açarak CIFS paylaşımlarını bağlamak ve bağlantısını kesmek için bir Linux-PAM modülüdür"
CVn

Ya da pam_mount, belirli bir deneyimim yok, ama bunu yapmak için tasarlanmış görünüyor.
EightBitTony

@EightBitTony bulma pam_mount soruyu sormam için bana yol açıyor, birilerinin bana daha kesin bir şekilde söyleyebileceğini umuyorum.
StrongBad

Yanıtlar:


8

Yöntem 1 - /etc/fstab

Buna alternatifler aradığınızı anlıyorum, ancak özellikle kimlik bilgilerinizi /etc/fstabdosyadan nasıl çıkaracağınız aşağıda açıklanmıştır :

//WindowsHost/Sharename /LocalMountPoint cifs credentials=/etc/cifsauth 0 0

Sonra dosyada /etc/cifsauth:

username=someuser
password=somepass

Bu dosyanın izinlerini yapın 600, yanichmod 600 /etc/cifsauth .

Yöntem # 2 - pam_mount

Pam_mount'u yükleyebilir ve daha sonra bu gibi giriş yapan tüm kullanıcılar için genel bir bağlantı kurabilirsiniz :

# /etc/security/pam_mount.conf.xml
<debug enable="1" />
<volume server="server" path="music" mountpoint="~/MyMusicFolder" options="cred=/home/%(USER)/.Music.cred" />

Bu yöntem, kimlik bilgilerinin bir dosyada depolandığı yöntem # 1 ile aynı soruna sahiptir, /home/%(USER)/.Music.cred . Bu, ilk yöntemdekiyle aynı kimlik bilgisi dosyası türüdür, bu nedenle izinlerin 600 olduğundan da emin olun.

Yöntem # 3 - Gvfs-mount kullanma

Bu U&L Soru ve Cevap: Parolamı düz metin olarak saklamadan bir cifs paylaşımını otomatikleştirebilir miyim? @Gilles tarafından , CIFS kimlik bilgilerinizi korumak için GNOME Anahtarlık kullanımını açıklayan bir yanıt içerir .

Daha sonra GVFS - GNOME Sanal Dosya Sistemi'ni kullanarak CIFS paylaşımlarına şu şekilde erişebilirsiniz :

$ gvfs-mount smb://username\;workgroupname@hostname/sharename

Bu paylaşım, paylaşım adı adı verilen ana bilgisayar adından eşlenir ve altına bağlanır $HOME/.vfs/sharename on hostname. Bunu hiçbir şekilde kontrol edemezsiniz. Buraya her zaman monte edilmek zor kodlanmış, baktım!

Ancak bağladığım paylaşımlara erişebilmem için yaptığım şey bu bağlara bağlantılar oluşturabilirsiniz. .gvfsBazı araçlar dosya tarama nokta dizinleri listelemek değil çünkü kullanımı talihsiz oldu, bu yüzden sık sık oluşturduğum bağlantı bu paylaşımlara erişmek için tek yoldur.


dosyayı gizli olarak yaparsanız .cifsauth ve 'username =' gerekli değilse, yalnızca kimlik bilgileri = / etc / .cifsauth yeter
Rahul Patil

@RahulPatil - Eğer adlandırılmış kimlik yapmak zorunda söylediğini .cifsauthkaldırmak için username=veya bu username=sadece hep birlikte gerekli değildir?
slm

evet ... Güzel Cevap .. !! Pam_mount için +1
Rahul Patil

@RahulPatil - hangi parçayı kabul ediyorsunuz?
slm

2

Görünen o ki pam_mountbu yol. Ağ paylaşımını/etc/security/pam_mount.conf.xml

<volume user="yourUserName" fstype="auto" path="//path/to/the/network/share" mountpoint="/path/to/the/mount/point" options="username=yourUserName" />
<mkmountpoint enable="1" remove="true" />

Kullanımı teorik olarak mümkün olmalıdır %(USER), %(USERUID)ve %(USERGID)bunun genel bir montaj yapmak değişkenleri ama Arch Linux üzerinde çalışmaya o kısmını alamadım. Sisteminizi kullanmak için de yapılandırmanız gerekir pam_mount. Her ikisini de /etc/pam.d/system-authve ilgili giriş yöneticinizi değiştirmeniz gerekir . KDM için öyle /etc/pam.d/kde. Değişiklikler temel optional pam_mount.soolarak her iki dosyanın her bir bölümüne eklenmeyi içerir , ancak sipariş ayrıntıları önemli olduğundan kesin ayrıntılar zordur. Arch Wiki'yi takip ettim .

Bu kurulum ve sunucu ve makinemdeki aynı kullanıcı adı / şifre ile, herhangi bir yere bir kimlik bilgileri dosyasını kaydetmeden otomatik olarak bağlanabilirim.


Bu iyi ... Prensip olarak fstab çözümünü tercih ederim - beğenmedim pamve geri kalanı kişisel olarak ve sistem yapılandırmasına daha fazla sürünme eğilimi olduğunu fark ettim - ama bu kesinlikle soruyu cevaplıyor. Kimlik bilgilerini depolamaya neden bu kadar karşı olduğunuzu sorabilir miyim? Kullanıcı izinleri ve / veya dosya sahipliği / şifrelemesi burada fazlasıyla yeterli olmalıdır. Bazı sistemlerde bu tür bilgileri, yalnızca kimlik doğrulamasından sonra erişilebilen ürün yazılımı çeşitlerinde bile saklayabilirsiniz. sshÖrneğin, fs izinlerine dayalı kimlik bilgilerini depolar, değil mi?
mikeserv

Mikeserv, tek bir giriş sistemi kullanıyoruz, bu yüzden kimlik bilgileri dosyamla makineye kök erişimi olan bir sys yöneticisi, şifremin bana eriştiği tüm sunuculara kök erişimine sahip olmayabilir.
StrongBad
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.