pam_mount man page on SuSE

Man page or keyword search:  
man Server   14857 pages
apropos Keyword Search (all sections)
Output format
SuSE logo
[printable version]

pam_mount(8)							  pam_mount(8)

NAME
       pam_mount - A PAM module that can mount volumes for a user session

OVERVIEW
       This  module  is aimed at environments with central file servers that a
       user  wishes  to	 mount	on  login  and	unmount	 on  logout,  such  as
       (semi-)diskless	stations  where	 many users can logon and where stati‐
       cally mounting the entire /home from a server is a  security  risk,  or
       listing all possible volumes in /etc/fstab is not feasible.

       ·   Users can define their own list of volumes without having to change
	   (possibly non-writable) global config files.

       ·   Single sign-on feature - the user needs to type the	password  just
	   once (at login)

       ·   Transparent mount process

       ·   No stored passwords

       ·   Volumes  are	 unmounted on logout, freeing system resources and not
	   leaving data exposed.

       The module also supports mounting local filesystems  of	any  kind  the
       normal  mount  utility  supports,  with extra code to make sure certain
       volumes are set up properly because often they need more	 than  just  a
       mount  call,  such  as  encrypted volumes. This includes SMB/CIFS, NCP,
       FUSE, losetup crypto, dm-crypt/cryptsetup.

       If you intend to use pam_mount to  protect  volumes  on	your  computer
       using  an  encrypted filesystem system, please know that there are many
       other issues you need to consider in order to protect  your  data.  For
       example,	 you  probably	want to disable or encrypt your swap partition
       (the cryptoswap can help you do this). Do not assume a system is secure
       without carefully considering potential threats.

NASTY DETAILS
       The   primary   configuration   file   for   the	 pam_mount  module  is
       pam_mount.conf.xml.   On	 most  platforms  this	file  is   read	  from
       /etc/security/pam_mount.conf.xml.  On  OpenBSD pam_mount reads its con‐
       figuration file from /etc/pam_mount.conf.xml.  pam_mount.conf.xml  con‐
       tains many comments documenting its use.

       In  addition,  you  must include two entries in the system's applicable
       /etc/pam.d/service config files, as the following example shows:

		  auth	   required  pam_securetty.so
		  auth	   required  pam_pwdb.so shadow nullok
		  auth	   required  pam_nologin.so
	      +++ auth	   optional  pam_mount.so try_first_pass
		  account  required  pam_pwdb.so
		  password required  pam_cracklib.so
		  password required  pam_pwdb.so shadow nullok use_authtok
		  session  required  pam_pwdb.so
		  session  optional  pam_console.so
	      +++ session  optional  pam_mount.so

       When "sufficient" is used in the second column, you must make sure that
       pam_mount  is added before this entry. Otherwise pam_mount will not get
       executed should a previous PAM module succeed. Also  be	aware  of  the
       "include"  statements.  These make PAM look into the specified file. If
       there is a "sufficient" statement, then the pam_mount entry must either
       be in the included file before the "sufficient" statement or before the
       "include" statement.

       If you use pam_ldap, pam_winbind, or any other authentication  services
       that  make use of PAM's sufficient keyword, model your configuration on
       the following order:

	      ···
	      account sufficient  pam_ldap.so
	      auth    required	  pam_mount.so
	      auth    sufficient  pam_ldap.so use_first_pass
	      auth    required	  pam_unix.so use_first_pass
	      session optional	  pam_mount.so
	      ···

       This allows for:

       1.  pam_mount, as the first "auth" module, will prompt for  a  password
	   and export it to the PAM system.

       2.  pam_ldap  will  use	the  password  from  the PAM system to try and
	   authenticate the user. If this succedes, the user will be authenti‐
	   cated. If it fails, pam_unix will try to authenticate.

       3.  pam_unix  will  try to authenticate the user if pam_ldap failed. If
	   pam_unix fails, then the authentication will be refused (due to the
	   "required").

       Alternatively,  the  following is possible (thanks to Andrew Morgan for
       the hint!):

	      auth [success=2 default=ignore] pam_unix2.so
	      auth [success=1 default=ignore] pam_ldap.so use_first_pass
	      auth requisite pam_deny.so
	      auth optional pam_mount.so use_first_pass

       It may seem odd, but the first three lines will	make  it  so  that  at
       least  one  of  pam_unix2  or  pam_ldap has to succeed. As you can see,
       pam_mount will be run after successful authentification with these sub‐
       systems.

       If  your volume has a different password than your system account, then
       encrypt the password to the volume you wish mounted using  your	system
       password	 as  the  key  and  store  it somewhere on your system's local
       filesystem. pam_mount supports transparently decrypting this filesystem
       key, as long as the cipher used is supported by openssl. Given:

       sk     system key, the key or password used to log into the system

       fsk    filesystem  key,	the  key that allows you to use the filesystem
	      you wish pam_mount to mount for you

       E and D
	      an openssl supported synchronous encryption/decryption algorithm

       efsk   encrypted filesystem key, efsk = E_sk (fsk), stored somewhere on
	      the local filesystem (ie: /home/user.key)

       pam_mount  will read efsk from the local filesystem, perform fsk = D_sk
       (efsk) and use fsk to mount the filesystem. If you change  your	system
       password,  simply  regenerate efsk using efsk = E_sk (fsk). If you want
       to mount this volume by	hand,  use  something  like  `openssl  enc  -d
       -aes-256-ecb  -in /home/user.key | mount -p0 /home/user`. More informa‐
       tion about this technique is included in pam_mount.conf.xml.

       A script	 named	mkehd  is  provided  with  pam_mount  to  help	create
       encrypted  home	directories.  If  you  have  an entry for a user using
       encrypted home directories in  pam_mount.conf.xml,  mkehd  will	create
       necessary filesystem images and possibly encrypted filesystem keys.

       Individual  users  may define additional volumes to mount if allowed by
       pam_mount.conf.xml (usually ~/.pam_mount.conf.xml). The volume  keyword
       is the only valid keyword in these per-user configuration files. If the
       luserconf parameter is set in pam_mount.conf.xml, allowing user-defined
       volume,	then  users  may  mount and unmount any volume they own at any
       mount point they own. On some filesystem configurations this may	 be  a
       security	 flaw  so  user-defined volumes are not allowed by the example
       pam_mount.conf.xml distributed with pam_mount.

       In general, you will leave all the first (general) parameters  as  pro‐
       vided  by default. You only have to provide the user/volume list in the
       end of the file, following the examples.

       To ensure that your system and, possibly, the  remote  server  are  all
       properly configured, you should try to mount all or some of the volumes
       by  hand,  using	 the  same  commands  and  mount  points  provided  in
       pam_mount.conf.xml. This will save you a lot of grief, since it is more
       difficult to debug the mounting process via pam_mount.

       If you can mount the volumes by	hand  but  it  is  not	happening  via
       pam_mount,   you	  may	want   to   enable   the   "debug"  option  in
       pam_mount.conf.xml to see what is happening.

       Verify if the user owns the mount point and has sufficient  permissions
       over  that.  pam_mount  will  verify  this and will refuse to mount the
       remote volume if the user does not own that directory.

       If pam_mount is having trouble unmounting  volumes  upon	 logging  out,
       enable  the  debug variable. This causes pam_mount to run ofl on logout
       and write its output to the system's log.

AUTHORS
       W. Michael Petullo <mike@flyn.org>

       Jan Engelhardt <jengelh [at] medozas de> (current maintainer)

								  pam_mount(8)
[top]

List of man pages available for SuSE

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net