| Current Path : /home/emeraadmin/www/4d695/ |
| Current File : /home/emeraadmin/www/4d695/pam.zip |
PK Ǩ�\0�zx x html/sag-pam_echo.htmlnu �[��� <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>6.5. pam_echo - print text messages</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="Linux-PAM_SAG.html" title="The Linux-PAM System Administrators' Guide"><link rel="up" href="sag-module-reference.html" title="Chapter 6. A reference guide for available modules"><link rel="prev" href="sag-pam_deny.html" title="6.4. pam_deny - locking-out PAM module"><link rel="next" href="sag-pam_env.html" title="6.6. pam_env - set/unset environment variables"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.5. pam_echo - print text messages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sag-pam_deny.html">Prev</a> </td><th width="60%" align="center">Chapter 6. A reference guide for available modules</th><td width="20%" align="right"> <a accesskey="n" href="sag-pam_env.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sag-pam_echo"></a>6.5. pam_echo - print text messages</h2></div></div></div><div class="cmdsynopsis"><p><code class="command">pam_echo.so</code> [
file=<em class="replaceable"><code>/path/message</code></em>
]</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_echo-description"></a>6.5.1. DESCRIPTION</h3></div></div></div><p>
The <span class="emphasis"><em>pam_echo</em></span> PAM module is for printing
text messages to inform user about special things. Sequences
starting with the <span class="emphasis"><em>%</em></span> character are
interpreted in the following way:
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="emphasis"><em>%H</em></span></span></dt><dd><p>The name of the remote host (PAM_RHOST).</p></dd><dt><span class="term"><span class="emphasis"><em>%h</em></span></span></dt><dd><p>The name of the local host.</p></dd><dt><span class="term"><span class="emphasis"><em>%s</em></span></span></dt><dd><p>The service name (PAM_SERVICE).</p></dd><dt><span class="term"><span class="emphasis"><em>%t</em></span></span></dt><dd><p>The name of the controlling terminal (PAM_TTY).</p></dd><dt><span class="term"><span class="emphasis"><em>%U</em></span></span></dt><dd><p>The remote user name (PAM_RUSER).</p></dd><dt><span class="term"><span class="emphasis"><em>%u</em></span></span></dt><dd><p>The local user name (PAM_USER).</p></dd></dl></div><p>
All other sequences beginning with <span class="emphasis"><em>%</em></span>
expands to the characters following the <span class="emphasis"><em>%</em></span>
character.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_echo-options"></a>6.5.2. OPTIONS</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<code class="option">file=<em class="replaceable"><code>/path/message</code></em></code>
</span></dt><dd><p>
The content of the file <code class="filename">/path/message</code>
will be printed with the PAM conversion function as PAM_TEXT_INFO.
</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_echo-types"></a>6.5.3. MODULE TYPES PROVIDED</h3></div></div></div><p>
All module types (<code class="option">auth</code>, <code class="option">account</code>,
<code class="option">password</code> and <code class="option">session</code>) are provided.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_echo-return_values"></a>6.5.4. RETURN VALUES</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">PAM_BUF_ERR</span></dt><dd><p>
Memory buffer error.
</p></dd><dt><span class="term">PAM_SUCCESS</span></dt><dd><p>
Message was successful printed.
</p></dd><dt><span class="term">PAM_IGNORE</span></dt><dd><p>
PAM_SILENT flag was given or message file does not
exist, no message printed.
</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_echo-examples"></a>6.5.5. EXAMPLES</h3></div></div></div><p>
For an example of the use of this module, we show how it may be
used to print information about good passwords:
</p><pre class="programlisting">
password optional pam_echo.so file=/usr/share/doc/good-password.txt
password required pam_unix.so
</pre><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_echo-author"></a>6.5.6. AUTHOR</h3></div></div></div><p>Thorsten Kukuk <kukuk@thkukuk.de></p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sag-pam_deny.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sag-module-reference.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sag-pam_env.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.4. pam_deny - locking-out PAM module </td><td width="20%" align="center"><a accesskey="h" href="Linux-PAM_SAG.html">Home</a></td><td width="40%" align="right" valign="top"> 6.6. pam_env - set/unset environment variables</td></tr></table></div></body></html>
PK Ǩ�\� P�1 �1 html/sag-pam_env.htmlnu �[��� <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>6.6. pam_env - set/unset environment variables</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="Linux-PAM_SAG.html" title="The Linux-PAM System Administrators' Guide"><link rel="up" href="sag-module-reference.html" title="Chapter 6. A reference guide for available modules"><link rel="prev" href="sag-pam_echo.html" title="6.5. pam_echo - print text messages"><link rel="next" href="sag-pam_exec.html" title="6.7. pam_exec - call an external command"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.6. pam_env - set/unset environment variables</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sag-pam_echo.html">Prev</a> </td><th width="60%" align="center">Chapter 6. A reference guide for available modules</th><td width="20%" align="right"> <a accesskey="n" href="sag-pam_exec.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sag-pam_env"></a>6.6. pam_env - set/unset environment variables</h2></div></div></div><div class="cmdsynopsis"><p><code class="command">pam_env.so</code> [
debug
] [
conffile=<em class="replaceable"><code>conf-file</code></em>
] [
envfile=<em class="replaceable"><code>env-file</code></em>
] [
readenv=<em class="replaceable"><code>0|1</code></em>
] [
user_envfile=<em class="replaceable"><code>env-file</code></em>
] [
user_readenv=<em class="replaceable"><code>0|1</code></em>
]</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env-description"></a>6.6.1. DESCRIPTION</h3></div></div></div><p>
The pam_env PAM module allows the (un)setting of environment
variables. Supported is the use of previously set environment
variables as well as <span class="emphasis"><em>PAM_ITEM</em></span>s such as
<span class="emphasis"><em>PAM_RHOST</em></span>.
</p><p>
By default rules for (un)setting of variables are taken from the
config file <code class="filename">/etc/security/pam_env.conf</code>. An
alternate file can be specified with the <span class="emphasis"><em>conffile</em></span>
option.
</p><p>
Second a file (<code class="filename">/etc/environment</code> by default) with simple
<span class="emphasis"><em>KEY=VAL</em></span> pairs on separate lines will be read.
With the <span class="emphasis"><em>envfile</em></span> option an alternate file can be specified.
And with the <span class="emphasis"><em>readenv</em></span> option this can be completly disabled.
</p><p>
Third it will read a user configuration file
(<code class="filename">$HOME/.pam_environment</code> by default).
The default file file can be changed with the
<span class="emphasis"><em>user_envfile</em></span> option
and it can be turned on and off with the <span class="emphasis"><em>user_readenv</em></span> option.
</p><p>
Since setting of PAM environment variables can have side effects
to other modules, this module should be the last one on the stack.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env.conf-description"></a>6.6.2. DESCRIPTION</h3></div></div></div><p>
The <code class="filename">/etc/security/pam_env.conf</code> file specifies
the environment variables to be set, unset or modified by
<span class="citerefentry"><span class="refentrytitle">pam_env</span>(8)</span>.
When someone logs in, this file is read and the environment
variables are set according.
</p><p>
Each line starts with the variable name, there are then two possible
options for each variable DEFAULT and OVERRIDE. DEFAULT allows and
administrator to set the value of the variable to some default
value, if none is supplied then the empty string is assumed. The
OVERRIDE option tells pam_env that it should enter in its value
(overriding the default value) if there is one to use. OVERRIDE is
not used, "" is assumed and no override will be done.
</p><p>
<em class="replaceable"><code>VARIABLE</code></em>
[<em class="replaceable"><code>DEFAULT=[value]</code></em>]
[<em class="replaceable"><code>OVERRIDE=[value]</code></em>]
</p><p>
(Possibly non-existent) environment variables may be used in values
using the ${string} syntax and (possibly non-existent) PAM_ITEMs as well
as HOME and SHELL may be used in values using the @{string} syntax. Both
the $ and @ characters can be backslash escaped to be used as literal values
values can be delimited with "", escaped " not supported.
Note that many environment variables that you would like to use
may not be set by the time the module is called.
For example, ${HOME} is used below several times, but
many PAM applications don't make it available by the time you need it.
The special variables @{HOME} and @{SHELL} are expanded to the values
for the user from his <span class="emphasis"><em>passwd</em></span> entry.
</p><p>
The "<span class="emphasis"><em>#</em></span>" character at start of line (no space
at front) can be used to mark this line as a comment line.
</p><p>
The <code class="filename">/etc/environment</code> file specifies
the environment variables to be set. The file must consist of simple
<span class="emphasis"><em>NAME=VALUE</em></span> pairs on separate lines.
The <span class="citerefentry"><span class="refentrytitle">pam_env</span>(8)</span>
module will read the file after the <code class="filename">pam_env.conf</code>
file.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env-options"></a>6.6.3. OPTIONS</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<code class="option">conffile=<em class="replaceable"><code>/path/to/pam_env.conf</code></em></code>
</span></dt><dd><p>
Indicate an alternative <code class="filename">pam_env.conf</code>
style configuration file to override the default. This can
be useful when different services need different environments.
</p></dd><dt><span class="term">
<code class="option">debug</code>
</span></dt><dd><p>
A lot of debug information is printed with
<span class="citerefentry"><span class="refentrytitle">syslog</span>(3)</span>.
</p></dd><dt><span class="term">
<code class="option">envfile=<em class="replaceable"><code>/path/to/environment</code></em></code>
</span></dt><dd><p>
Indicate an alternative <code class="filename">environment</code>
file to override the default. The syntax are simple
<span class="emphasis"><em>KEY=VAL</em></span> pairs on separate lines. The
<span class="emphasis"><em>export</em></span> instruction can be specified for bash
compatibility, but will be ignored.
This can be useful when different services need different environments.
</p></dd><dt><span class="term">
<code class="option">readenv=<em class="replaceable"><code>0|1</code></em></code>
</span></dt><dd><p>
Turns on or off the reading of the file specified by envfile
(0 is off, 1 is on). By default this option is on.
</p></dd><dt><span class="term">
<code class="option">user_envfile=<em class="replaceable"><code>filename</code></em></code>
</span></dt><dd><p>
Indicate an alternative <code class="filename">.pam_environment</code>
file to override the default.The syntax is the same as
for <span class="emphasis"><em>/etc/environment</em></span>.
The filename is relative to the user home directory.
This can be useful when different services need different
environments.
</p></dd><dt><span class="term">
<code class="option">user_readenv=<em class="replaceable"><code>0|1</code></em></code>
</span></dt><dd><p>
Turns on or off the reading of the user specific environment
file. 0 is off, 1 is on. By default this option is off as user
supplied environment variables in the PAM environment could affect
behavior of subsequent modules in the stack without the consent
of the system administrator.
</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env-types"></a>6.6.4. MODULE TYPES PROVIDED</h3></div></div></div><p>
The <code class="option">auth</code> and <code class="option">session</code> module
types are provided.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env-return_values"></a>6.6.5. RETURN VALUES</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">PAM_ABORT</span></dt><dd><p>
Not all relevant data or options could be gotten.
</p></dd><dt><span class="term">PAM_BUF_ERR</span></dt><dd><p>
Memory buffer error.
</p></dd><dt><span class="term">PAM_IGNORE</span></dt><dd><p>
No pam_env.conf and environment file was found.
</p></dd><dt><span class="term">PAM_SUCCESS</span></dt><dd><p>
Environment variables were set.
</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env-files"></a>6.6.6. FILES</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><code class="filename">/etc/security/pam_env.conf</code></span></dt><dd><p>Default configuration file</p></dd><dt><span class="term"><code class="filename">/etc/environment</code></span></dt><dd><p>Default environment file</p></dd><dt><span class="term"><code class="filename">$HOME/.pam_environment</code></span></dt><dd><p>User specific environment file</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env.conf-examples"></a>6.6.7. EXAMPLES</h3></div></div></div><p>
These are some example lines which might be specified in
<code class="filename">/etc/security/pam_env.conf</code>.
</p><p>
Set the REMOTEHOST variable for any hosts that are remote, default
to "localhost" rather than not being set at all
</p><pre class="programlisting">
REMOTEHOST DEFAULT=localhost OVERRIDE=@{PAM_RHOST}
</pre><p>
Set the DISPLAY variable if it seems reasonable
</p><pre class="programlisting">
DISPLAY DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}
</pre><p>
Now some simple variables
</p><pre class="programlisting">
PAGER DEFAULT=less
MANPAGER DEFAULT=less
LESS DEFAULT="M q e h15 z23 b80"
NNTPSERVER DEFAULT=localhost
PATH DEFAULT=${HOME}/bin:/usr/local/bin:/bin\
:/usr/bin:/usr/local/bin/X11:/usr/bin/X11
XDG_DATA_HOME @{HOME}/share/
</pre><p>
Silly examples of escaped variables, just to show how they work.
</p><pre class="programlisting">
DOLLAR DEFAULT=\$
DOLLARDOLLAR DEFAULT= OVERRIDE=\$${DOLLAR}
DOLLARPLUS DEFAULT=\${REMOTEHOST}${REMOTEHOST}
ATSIGN DEFAULT="" OVERRIDE=\@
</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_env-authors"></a>6.6.8. AUTHOR</h3></div></div></div><p>
pam_env was written by Dave Kinchlea <kinch@kinch.ark.com>.
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sag-pam_echo.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sag-module-reference.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sag-pam_exec.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.5. pam_echo - print text messages </td><td width="20%" align="center"><a accesskey="h" href="Linux-PAM_SAG.html">Home</a></td><td width="40%" align="right" valign="top"> 6.7. pam_exec - call an external command</td></tr></table></div></body></html>
PK Ǩ�\ik� � html/sag-pam_exec.htmlnu �[��� <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>6.7. pam_exec - call an external command</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="Linux-PAM_SAG.html" title="The Linux-PAM System Administrators' Guide"><link rel="up" href="sag-module-reference.html" title="Chapter 6. A reference guide for available modules"><link rel="prev" href="sag-pam_env.html" title="6.6. pam_env - set/unset environment variables"><link rel="next" href="sag-pam_faildelay.html" title="6.8. pam_faildelay - change the delay on failure per-application"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.7. pam_exec - call an external command</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sag-pam_env.html">Prev</a> </td><th width="60%" align="center">Chapter 6. A reference guide for available modules</th><td width="20%" align="right"> <a accesskey="n" href="sag-pam_faildelay.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sag-pam_exec"></a>6.7. pam_exec - call an external command</h2></div></div></div><div class="cmdsynopsis"><p><code class="command">pam_exec.so</code> [
debug
] [
expose_authtok
] [
seteuid
] [
quiet
] [
stdout
] [
log=<em class="replaceable"><code>file</code></em>
] [
type=<em class="replaceable"><code>type</code></em>
]
<em class="replaceable"><code>command</code></em>
[
<em class="replaceable"><code>...</code></em>
]</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_exec-description"></a>6.7.1. DESCRIPTION</h3></div></div></div><p>
pam_exec is a PAM module that can be used to run
an external command.
</p><p>
The child's environment is set to the current PAM environment list, as
returned by
<span class="citerefentry"><span class="refentrytitle">pam_getenvlist</span>(3)</span>
In addition, the following PAM items are
exported as environment variables: <span class="emphasis"><em>PAM_RHOST</em></span>,
<span class="emphasis"><em>PAM_RUSER</em></span>, <span class="emphasis"><em>PAM_SERVICE</em></span>,
<span class="emphasis"><em>PAM_TTY</em></span>, <span class="emphasis"><em>PAM_USER</em></span> and
<span class="emphasis"><em>PAM_TYPE</em></span>, which contains one of the module
types: <code class="option">account</code>, <code class="option">auth</code>,
<code class="option">password</code>, <code class="option">open_session</code> and
<code class="option">close_session</code>.
</p><p>
Commands called by pam_exec need to be aware of that the user
can have controll over the environment.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_exec-options"></a>6.7.2. OPTIONS</h3></div></div></div><p>
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<code class="option">debug</code>
</span></dt><dd><p>
Print debug information.
</p></dd><dt><span class="term">
<code class="option">expose_authtok</code>
</span></dt><dd><p>
During authentication the calling command can read
the password from <span class="citerefentry"><span class="refentrytitle">stdin</span>(3)</span>. Only first <span class="emphasis"><em>PAM_MAX_RESP_SIZE</em></span>
bytes of a password are provided to the command.
</p></dd><dt><span class="term">
<code class="option">log=<em class="replaceable"><code>file</code></em></code>
</span></dt><dd><p>
The output of the command is appended to
<code class="filename">file</code>
</p></dd><dt><span class="term">
<code class="option">type=<em class="replaceable"><code>type</code></em></code>
</span></dt><dd><p>
Only run the command if the module type matches the given type.
</p></dd><dt><span class="term">
<code class="option">stdout</code>
</span></dt><dd><p>
Per default the output of the executed command is written to <code class="filename">/dev/null</code>. With this option, the stdout output of the executed command is redirected to the calling application. It's in the responsibility of this application what happens with the output. The <code class="option">log</code> option is ignored.
</p></dd><dt><span class="term">
<code class="option">quiet</code>
</span></dt><dd><p>
Per default pam_exec.so will echo the exit status of the
external command if it fails.
Specifying this option will suppress the message.
</p></dd><dt><span class="term">
<code class="option">seteuid</code>
</span></dt><dd><p>
Per default pam_exec.so will execute the external command
with the real user ID of the calling process.
Specifying this option means the command is run
with the effective user ID.
</p></dd></dl></div><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_exec-types"></a>6.7.3. MODULE TYPES PROVIDED</h3></div></div></div><p>
All module types (<code class="option">auth</code>, <code class="option">account</code>,
<code class="option">password</code> and <code class="option">session</code>) are provided.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_exec-return_values"></a>6.7.4. RETURN VALUES</h3></div></div></div><p>
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">PAM_SUCCESS</span></dt><dd><p>
The external command was run successfully.
</p></dd><dt><span class="term">PAM_SERVICE_ERR</span></dt><dd><p>
No argument or a wrong number of arguments were given.
</p></dd><dt><span class="term">PAM_SYSTEM_ERR</span></dt><dd><p>
A system error occurred or the command to execute failed.
</p></dd><dt><span class="term">PAM_IGNORE</span></dt><dd><p>
<code class="function">pam_setcred</code> was called, which
does not execute the command. Or, the value given for the type=
parameter did not match the module type.
</p></dd></dl></div><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_exec-examples"></a>6.7.5. EXAMPLES</h3></div></div></div><p>
Add the following line to <code class="filename">/etc/pam.d/passwd</code> to
rebuild the NIS database after each local password change:
</p><pre class="programlisting">
password optional pam_exec.so seteuid /usr/bin/make -C /var/yp
</pre><p>
This will execute the command
</p><pre class="programlisting">make -C /var/yp</pre><p>
with effective user ID.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_exec-author"></a>6.7.6. AUTHOR</h3></div></div></div><p>
pam_exec was written by Thorsten Kukuk <kukuk@thkukuk.de> and
Josh Triplett <josh@joshtriplett.org>.
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sag-pam_env.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sag-module-reference.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sag-pam_faildelay.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.6. pam_env - set/unset environment variables </td><td width="20%" align="center"><a accesskey="h" href="Linux-PAM_SAG.html">Home</a></td><td width="40%" align="right" valign="top"> 6.8. pam_faildelay - change the delay on failure per-application</td></tr></table></div></body></html>
PK Ǩ�\�me� � html/sag-pam_faildelay.htmlnu �[��� <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>6.8. pam_faildelay - change the delay on failure per-application</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="Linux-PAM_SAG.html" title="The Linux-PAM System Administrators' Guide"><link rel="up" href="sag-module-reference.html" title="Chapter 6. A reference guide for available modules"><link rel="prev" href="sag-pam_exec.html" title="6.7. pam_exec - call an external command"><link rel="next" href="sag-pam_filter.html" title="6.9. pam_filter - filter module"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.8. pam_faildelay - change the delay on failure per-application</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sag-pam_exec.html">Prev</a> </td><th width="60%" align="center">Chapter 6. A reference guide for available modules</th><td width="20%" align="right"> <a accesskey="n" href="sag-pam_filter.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sag-pam_faildelay"></a>6.8. pam_faildelay - change the delay on failure per-application</h2></div></div></div><div class="cmdsynopsis"><p><code class="command">pam_faildelay.so</code> [
debug
] [
delay=<em class="replaceable"><code>microseconds</code></em>
]</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_faildelay-description"></a>6.8.1. DESCRIPTION</h3></div></div></div><p>
pam_faildelay is a PAM module that can be used to set
the delay on failure per-application.
</p><p>
If no <code class="option">delay</code> is given, pam_faildelay will
use the value of FAIL_DELAY from <code class="filename">/etc/login.defs</code>.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_faildelay-options"></a>6.8.2. OPTIONS</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<code class="option">debug</code>
</span></dt><dd><p>
Turns on debugging messages sent to syslog.
</p></dd><dt><span class="term">
<code class="option">delay=<em class="replaceable"><code>N</code></em></code>
</span></dt><dd><p>
Set the delay on failure to N microseconds.
</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_faildelay-types"></a>6.8.3. MODULE TYPES PROVIDED</h3></div></div></div><p>
Only the <code class="option">auth</code> module type is provided.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_faildelay-return_values"></a>6.8.4. RETURN VALUES</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">PAM_IGNORE</span></dt><dd><p>
Delay was successful adjusted.
</p></dd><dt><span class="term">PAM_SYSTEM_ERR</span></dt><dd><p>
The specified delay was not valid.
</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_faildelay-examples"></a>6.8.5. EXAMPLES</h3></div></div></div><p>
The following example will set the delay on failure to
10 seconds:
</p><pre class="programlisting">
auth optional pam_faildelay.so delay=10000000
</pre><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_faildelay-author"></a>6.8.6. AUTHOR</h3></div></div></div><p>
pam_faildelay was written by Darren Tucker <dtucker@zip.com.au>.
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sag-pam_exec.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sag-module-reference.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sag-pam_filter.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.7. pam_exec - call an external command </td><td width="20%" align="center"><a accesskey="h" href="Linux-PAM_SAG.html">Home</a></td><td width="40%" align="right" valign="top"> 6.9. pam_filter - filter module</td></tr></table></div></body></html>
PK Ǩ�\�e�p~$ ~$ html/sag-pam_filter.htmlnu �[��� <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>6.9. pam_filter - filter module</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="Linux-PAM_SAG.html" title="The Linux-PAM System Administrators' Guide"><link rel="up" href="sag-module-reference.html" title="Chapter 6. A reference guide for available modules"><link rel="prev" href="sag-pam_faildelay.html" title="6.8. pam_faildelay - change the delay on failure per-application"><link rel="next" href="sag-pam_ftp.html" title="6.10. pam_ftp - module for anonymous access"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.9. pam_filter - filter module</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sag-pam_faildelay.html">Prev</a> </td><th width="60%" align="center">Chapter 6. A reference guide for available modules</th><td width="20%" align="right"> <a accesskey="n" href="sag-pam_ftp.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sag-pam_filter"></a>6.9. pam_filter - filter module</h2></div></div></div><div class="cmdsynopsis"><p><code class="command">pam_filter.so</code> [
debug
] [
new_term
] [
non_term
]
run1|run2
<em class="replaceable"><code>filter</code></em>
[
<em class="replaceable"><code>...</code></em>
]</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_filter-description"></a>6.9.1. DESCRIPTION</h3></div></div></div><p>
This module is intended to be a platform for providing access to all
of the input/output that passes between the user and the application.
It is only suitable for tty-based and (stdin/stdout) applications.
</p><p>
To function this module requires <span class="emphasis"><em>filters</em></span> to be
installed on the system.
The single filter provided with the module simply transposes upper and
lower case letters in the input and output streams. (This can be very
annoying and is not kind to termcap based editors).
</p><p>
Each component of the module has the potential to invoke the
desired filter. The filter is always
<span class="citerefentry"><span class="refentrytitle">execv</span>(2)</span> with the privilege of the calling application
and <span class="emphasis"><em>not</em></span> that of the user. For this reason it
cannot usually be killed by the user without closing their session.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_filter-options"></a>6.9.2. OPTIONS</h3></div></div></div><p>
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<code class="option">debug</code>
</span></dt><dd><p>
Print debug information.
</p></dd><dt><span class="term">
<code class="option">new_term</code>
</span></dt><dd><p>
The default action of the filter is to set the
<span class="emphasis"><em>PAM_TTY</em></span> item to indicate the
terminal that the user is using to connect to the
application. This argument indicates that the filter
should set <span class="emphasis"><em>PAM_TTY</em></span> to the filtered
pseudo-terminal.
</p></dd><dt><span class="term">
<code class="option">non_term</code>
</span></dt><dd><p>
don't try to set the <span class="emphasis"><em>PAM_TTY</em></span> item.
</p></dd><dt><span class="term">
<code class="option">runX</code>
</span></dt><dd><p>
In order that the module can invoke a filter it should
know when to invoke it. This argument is required to tell
the filter when to do this.
</p><p>
Permitted values for <span class="emphasis"><em>X</em></span> are
<span class="emphasis"><em>1</em></span> and <span class="emphasis"><em>2</em></span>. These
indicate the precise time that the filter is to be run.
To understand this concept it will be useful to have read
the <span class="citerefentry"><span class="refentrytitle">pam</span>(3)</span> manual page.
Basically, for each management group there are up to two ways
of calling the module's functions.
In the case of the <span class="emphasis"><em>authentication</em></span> and
<span class="emphasis"><em>session</em></span> components there are actually
two separate functions. For the case of authentication, these
functions are
<span class="citerefentry"><span class="refentrytitle">pam_authenticate</span>(3)</span> and
<span class="citerefentry"><span class="refentrytitle">pam_setcred</span>(3)</span>, here <code class="option">run1</code> means run the
filter from the <code class="function">pam_authenticate</code> function
and <code class="option">run2</code> means run the filter from
<code class="function">pam_setcred</code>. In the case of the
session modules, <span class="emphasis"><em>run1</em></span> implies
that the filter is invoked at the
<span class="citerefentry"><span class="refentrytitle">pam_open_session</span>(3)</span> stage, and <span class="emphasis"><em>run2</em></span> for
<span class="citerefentry"><span class="refentrytitle">pam_close_session</span>(3)</span>.
</p><p>
For the case of the account component. Either
<span class="emphasis"><em>run1</em></span> or <span class="emphasis"><em>run2</em></span>
may be used.
</p><p>
For the case of the password component, <span class="emphasis"><em>run1</em></span>
is used to indicate that the filter is run on the first
occasion of
<span class="citerefentry"><span class="refentrytitle">pam_chauthtok</span>(3)</span> (the <span class="emphasis"><em>PAM_PRELIM_CHECK</em></span>
phase) and <span class="emphasis"><em>run2</em></span> is used to indicate
that the filter is run on the second occasion (the
<span class="emphasis"><em>PAM_UPDATE_AUTHTOK</em></span> phase).
</p></dd><dt><span class="term">
<code class="option">filter</code>
</span></dt><dd><p>
The full pathname of the filter to be run and any command line
arguments that the filter might expect.
</p></dd></dl></div><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_filter-types"></a>6.9.3. MODULE TYPES PROVIDED</h3></div></div></div><p>
All module types (<code class="option">auth</code>, <code class="option">account</code>,
<code class="option">password</code> and <code class="option">session</code>) are provided.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_filter-return_values"></a>6.9.4. RETURN VALUES</h3></div></div></div><p>
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">PAM_SUCCESS</span></dt><dd><p>
The new filter was set successfully.
</p></dd><dt><span class="term">PAM_ABORT</span></dt><dd><p>
Critical error, immediate abort.
</p></dd></dl></div><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_filter-examples"></a>6.9.5. EXAMPLES</h3></div></div></div><p>
Add the following line to <code class="filename">/etc/pam.d/login</code> to
see how to configure login to transpose upper and lower case letters
once the user has logged in:
</p><pre class="programlisting">
session required pam_filter.so run1 /lib/security/pam_filter/upperLOWER
</pre><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_filter-author"></a>6.9.6. AUTHOR</h3></div></div></div><p>
pam_filter was written by Andrew G. Morgan <morgan@kernel.org>.
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sag-pam_faildelay.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sag-module-reference.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sag-pam_ftp.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.8. pam_faildelay - change the delay on failure per-application </td><td width="20%" align="center"><a accesskey="h" href="Linux-PAM_SAG.html">Home</a></td><td width="40%" align="right" valign="top"> 6.10. pam_ftp - module for anonymous access</td></tr></table></div></body></html>
PK Ǩ�\[�; ; html/sag-pam_ftp.htmlnu �[��� <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>6.10. pam_ftp - module for anonymous access</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="Linux-PAM_SAG.html" title="The Linux-PAM System Administrators' Guide"><link rel="up" href="sag-module-reference.html" title="Chapter 6. A reference guide for available modules"><link rel="prev" href="sag-pam_filter.html" title="6.9. pam_filter - filter module"><link rel="next" href="sag-pam_group.html" title="6.11. pam_group - module to modify group access"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.10. pam_ftp - module for anonymous access</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sag-pam_filter.html">Prev</a> </td><th width="60%" align="center">Chapter 6. A reference guide for available modules</th><td width="20%" align="right"> <a accesskey="n" href="sag-pam_group.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sag-pam_ftp"></a>6.10. pam_ftp - module for anonymous access</h2></div></div></div><div class="cmdsynopsis"><p><code class="command">pam_ftp.so</code> [
debug
] [
ignore
] [
users=<em class="replaceable"><code>XXX,YYY,</code></em>
...]</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_ftp-description"></a>6.10.1. DESCRIPTION</h3></div></div></div><p>
pam_ftp is a PAM module which provides a pluggable
anonymous ftp mode of access.
</p><p>
This module intercepts the user's name and password. If the name is
<span class="emphasis"><em>ftp</em></span> or <span class="emphasis"><em>anonymous</em></span>, the
user's password is broken up at the <span class="emphasis"><em>@</em></span> delimiter
into a <span class="emphasis"><em>PAM_RUSER</em></span> and a
<span class="emphasis"><em>PAM_RHOST</em></span> part; these pam-items being set
accordingly. The username (<span class="emphasis"><em>PAM_USER</em></span>) is set
to <span class="emphasis"><em>ftp</em></span>. In this case the module succeeds.
Alternatively, the module sets the <span class="emphasis"><em>PAM_AUTHTOK</em></span>
item with the entered password and fails.
</p><p>
This module is not safe and easily spoofable.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_ftp-options"></a>6.10.2. OPTIONS</h3></div></div></div><p>
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<code class="option">debug</code>
</span></dt><dd><p>
Print debug information.
</p></dd><dt><span class="term">
<code class="option">ignore</code>
</span></dt><dd><p>
Pay no attention to the email address of the user
(if supplied).
</p></dd><dt><span class="term">
<code class="option">ftp=<em class="replaceable"><code>XXX,YYY,...</code></em></code>
</span></dt><dd><p>
Instead of <span class="emphasis"><em>ftp</em></span> or
<span class="emphasis"><em>anonymous</em></span>, provide anonymous login
to the comma separated list of users:
<code class="option"><em class="replaceable"><code>XXX,YYY,...</code></em></code>.
Should the applicant enter
one of these usernames the returned username is set to
the first in the list: <span class="emphasis"><em>XXX</em></span>.
</p></dd></dl></div><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_ftp-types"></a>6.10.3. MODULE TYPES PROVIDED</h3></div></div></div><p>
Only the <code class="option">auth</code> module type is provided.
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_ftp-return_values"></a>6.10.4. RETURN VALUES</h3></div></div></div><p>
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">PAM_SUCCESS</span></dt><dd><p>
The authentication was successful.
</p></dd><dt><span class="term">PAM_USER_UNKNOWN</span></dt><dd><p>
User not known.
</p></dd></dl></div><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_ftp-examples"></a>6.10.5. EXAMPLES</h3></div></div></div><p>
Add the following line to <code class="filename">/etc/pam.d/ftpd</code> to
handle ftp style anonymous login:
</p><pre class="programlisting">
#
# ftpd; add ftp-specifics. These lines enable anonymous ftp over
# standard UN*X access (the listfile entry blocks access to
# users listed in /etc/ftpusers)
#
auth sufficient pam_ftp.so
auth required pam_unix.so use_first_pass
auth required pam_listfile.so \
onerr=succeed item=user sense=deny file=/etc/ftpusers
</pre><p>
</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sag-pam_ftp-author"></a>6.10.6. AUTHOR</h3></div></div></div><p>
pam_ftp was written by Andrew G. Morgan <morgan@kernel.org>.
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sag-pam_filter.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sag-module-reference.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sag-pam_group.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.9. pam_filter - filter module </td><td width="20%" align="center"><a accesskey="h" href="Linux-PAM_SAG.html">Home</a></td><td width="40%" align="right" valign="top"> 6.11. pam_group - module to modify group access</td></tr></table></div></body></html>
PK Ǩ�\��q��'