Chciałbym zamontować system plików CIFS z sambą w moim systemie Arch Linux. Chciałbym zamontować ten system plików przy każdym logowaniu (przez ssh, TTY lub przez KDM).
Mogę zbliżyć się do tego, co chcę, dodając udział sieciowy /etc/fstab
. Największym „problemem” jest to, że wymaga to twardego kodowania mojego hasła /etc/fstab
lub utworzenia pliku poświadczeń z moją nazwą użytkownika i hasłem. Nie wydaje mi się bezpieczne przechowywanie mojej nazwy użytkownika i hasła w zwykłym pliku tekstowym, nawet jeśli ustawię uprawnienia na 600.
Czy istnieje „właściwy” sposób bezpiecznego automatycznego zamontowania udziału sieciowego? Czy mogę to zrobić za pomocą PAM (moja nazwa użytkownika i hasło są takie same na obu komputerach), a jeśli tak, to w jaki sposób?
Odpowiedzi:
Metoda nr 1 -
/etc/fstab
Zdaję sobie sprawę, że szukasz alternatywnych rozwiązań, ale oto sposób, w jaki można uzyskać poświadczenia z
/etc/fstab
pliku:Następnie w pliku
/etc/cifsauth
:Ustaw uprawnienia do tego pliku
600
, tjchmod 600 /etc/cifsauth
.Metoda nr 2 - pam_mount
Możesz zainstalować pam_mount, a następnie skonfigurować ogólne podłączenie dla wszystkich użytkowników, którzy się zalogują:
Metoda ta wciąż ma ten sam problem co Sposób nr 1, gdzie poświadczenia są przechowywane w pliku
/home/%(USER)/.Music.cred
. Jest to ten sam typ pliku poświadczeń, co w pierwszej metodzie, więc upewnij się, że uprawnienia również wynoszą 600.Metoda nr 3 - użyj gvfs-mount
Niniejsze pytania i odpowiedzi dotyczące U&L: Czy mogę zautomatyzować montowanie udziału cifs bez przechowywania hasła w postaci zwykłego tekstu? zawiera odpowiedź @Gilles, która opisuje użycie klucza GNOME do zachowania poświadczeń CIFS.
Następnie możesz uzyskać dostęp do udziałów CIFS za pomocą GVFS - GNOME Virtual File System - w następujący sposób:
Spowoduje to zmapowanie udziału z nazwy hosta o nazwie sharename i zamontowanie go pod
$HOME/.vfs/sharename on hostname
. Nie możesz tego w żaden sposób kontrolować. Spojrzałem na stałe!Możesz jednak utworzyć łącza do tych montowań, co właśnie robię, aby uzyskać dostęp do udziałów, które zamontowałem. Użycie
.gvfs
było niefortunne, ponieważ niektóre narzędzia nie wyświetlają katalogów kropek podczas przeglądania plików, więc często utworzony przeze mnie link jest jedynym sposobem na uzyskanie dostępu do tych udziałów.źródło
.cifsauth
, aby je usunąćusername=
, czy też to, cousername=
słuszne, nie jest konieczne razem?Okazuje się, że taka
pam_mount
jest droga. Dodaj udział sieciowy do/etc/security/pam_mount.conf.xml
Powinno być teoretycznie możliwe do wykorzystania
%(USER)
,%(USERUID)
i%(USERGID)
zmienne, aby ogólny montażu, ale nie mogłem dostać tę część do pracy na Arch Linux. Musisz także skonfigurować swój system do używaniapam_mount
. Musisz zmodyfikować zarówno/etc/pam.d/system-auth
i odpowiedni menedżer logowania. W przypadku KDM tak jest/etc/pam.d/kde
. Modyfikacje polegają zasadniczo na dodawaniuoptional pam_mount.so
do każdej sekcji obu plików, ale dokładne szczegóły są trudne, ponieważ liczy się kolejność. Śledziłem Arch Wiki .Dzięki tej konfiguracji i tej samej nazwie użytkownika / hasła na serwerze i moim komputerze mogę automatycznie montować bez zapisywania pliku poświadczeń w dowolnym miejscu.
źródło
pam
a reszta osobiście, i zauważyłem, że mają tendencję do wkradania się coraz bardziej do konfiguracji systemu - ale to zdecydowanie odpowiada na pytanie. Czy mogę jednak zapytać, dlaczego tak nie zgadzasz się z przechowywaniem poświadczeń? Uprawnienia użytkownika i / lub własność / szyfrowanie pliku powinny tam być więcej niż wystarczające. W niektórych systemach można nawet przechowywać takie informacje w wersjach oprogramowania układowego, które są dostępne dopiero po uwierzytelnieniu.ssh
przechowuje poświadczenia na przykład na podstawie uprawnień fs, prawda?