README.PAM
上传用户:pycemail
上传日期:2007-01-04
资源大小:329k
文件大小:4k
源码类别:

Ftp客户端

开发平台:

Unix_Linux

  1. PAM: Pluggable Authentication Modules
  2. -------------------------------------
  3. Author: MacGyver aka Habeeb J. Dihu <macgyver@tos.net>
  4. Copyright(C) 1999, All Rights Reserved.
  5. PAM stands for Pluggable Authentication Modules, a modular system
  6. designed to eliminate the ages old problem of disparate authentication
  7. mechanisms on Unix (ie: shadow, pwdb, MD5, etc).  Many operating
  8. systems, including FreeBSD, Linux, and Solaris already support and use
  9. PAM.
  10. ProFTPD attempts to check for the necessary PAM support automatically,
  11. and unless specifically overridden, will use PAM on those platforms
  12. whenever possible.  In order to use PAM, you must configure a
  13. configuration file.  On some systems, such as FreeBSD, this will be a
  14. file called /etc/pam.conf.  On others, such as Linux, configuration is
  15. taken from the directory /etc/pam.d, in a file called ftp.
  16. FreeBSD:
  17. To use PAM with ProFTPD, you must edit /etc/pam.conf and add the
  18. following lines:
  19. ftp auth    required    pam_unix.so         try_first_pass
  20. ftp account required    pam_unix.so         try_first_pass
  21. ftp session required    pam_unix.so         try_first_pass
  22. PAM authentication should now work properly.
  23. Linux:
  24. To use PAM with ProFTPD, you must edit /etc/pam.d/ftp and add the
  25. following lines:
  26. #%PAM-1.0
  27. auth       required     /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
  28. auth       required     /lib/security/pam_pwdb.so shadow nullok
  29. account    required     /lib/security/pam_pwdb.so
  30. session    required     /lib/security/pam_pwdb.so
  31. These settings are valid for a RedHat Linux system.  Other Linux
  32. distributions may differ.
  33. PAM Configuration Options
  34. -------------------------
  35. 1. PAMConfig
  36. You may configure multiple authentication configurations using PAM
  37. that optionally validate users against various things, such as an LDAP
  38. directory, a MySQL database, or even a Windows NT domain.  Discussion
  39. of alternate authentication modules for PAM is beyond the scope of
  40. this document.  However, what is relevant is that ProFTPD allows you
  41. to use different PAM authentication schemes for different virtual
  42. servers.  You can do this by using the PAMConfig directive:
  43. # This is the PAM configuration file that will be referenced when
  44. # authenticating.  It can be set globally and/or per VirtualHost.
  45. # The default is 'ftp'.
  46. PAMConfig                       ftp
  47. The default setting is 'ftp'.  However, if you set PAMConfig to be
  48. 'ftp.myhost', for example, ProFTPD will try to use the PAM
  49. authentication settings for ftp.myhost, assuming you've set up your
  50. PAM configuration file(s) properly.  To use the above example with
  51. FreeBSD, you would need to add lines such as the following:
  52. ftp.myhost auth    required    pam_unix.so         try_first_pass
  53. ftp.myhost account required    pam_unix.so         try_first_pass
  54. ftp.myhost session required    pam_unix.so         try_first_pass
  55. to your /etc/pam.conf file.  Under Linux, or if you're using a
  56. directory like /etc/pam.d, you could simply copy the Linux
  57. configuration above to a new file called /etc/pam.d/ftp.myhost.
  58. The pattern here is that PAMConfig sets what's called the service name
  59. in PAM lingo.  If you use /etc/pam.conf, the first field on any
  60. configuration directive is the service name.  If you're using
  61. /etc/pam.d, the service name is the name of the file, for example
  62. /etc/pam.d/login happens to be the PAM configuration for the login
  63. program.
  64. 2. AuthPAMAuthoritative
  65. The directive AuthPAMAuthoritative refers to whether you want PAM to
  66. be the final arbitrator of what is and is not a valid ProFTPD user.
  67. It defaults to On for security purposes.  With this directive on,
  68. things like AuthUserFile directives will *NOT* work properly, since
  69. PAM will detect these as invalid users and inform ProFTPD not to
  70. attempt to process users through any other authentication mechanisms.
  71. If you set AuthPAMAuthoritative to Off, then if PAM cannot
  72. authenticate a specified user, it allows ProFTPD to select other
  73. authentication mechanisms such as AuthUserFile and attempt to process
  74. them in that fashion.
  75. # Setting this to 'on' makes PAM the final authority on what gets
  76. # authenticated.  Turning this off will tell PAM to allow other
  77. # authentication modules compiled into ProFTPD a chance at the user.
  78. AuthPAMAuthoritative            On
  79. References
  80. ----------
  81. More information and a much more complete primer about PAM can be
  82. found at http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/