diff --git a/ru_RU.KOI8-R/articles/pam/article.sgml b/ru_RU.KOI8-R/articles/pam/article.sgml new file mode 100644 index 0000000000..64b3dafb59 --- /dev/null +++ b/ru_RU.KOI8-R/articles/pam/article.sgml @@ -0,0 +1,1428 @@ +<!-- + The FreeBSD Russian Documentation Project + + $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/pam/article.sgml,v 1.10 2004/01/01 20:43:13 andy Exp $ + + Original revision: 1.25 +--> + +<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [ +<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> +%man; + +<!ENTITY % freebsd PUBLIC "-//FreeBSD//ENTITIES DocBook Miscellaneous FreeBSD Entities//EN"> +%freebsd; + +<!ENTITY % trademarks PUBLIC "-//FreeBSD//ENTITIES DocBook Trademark Entities//EN"> +%trademarks; +]> + +<!-- + - Copyright (c) 2001-2003 Networks Associates Technology, Inc. + - All rights reserved. + - + - This software was developed for the FreeBSD Project by ThinkSec AS and + - Network Associates Laboratories, the Security Research Division of + - Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 + - ("CBOSS"), as part of the DARPA CHATS research program. + - + - Redistribution and use in source and binary forms, with or without + - modification, are permitted provided that the following conditions + - are met: + - 1. Redistributions of source code must retain the above copyright + - notice, this list of conditions and the following disclaimer. + - 2. Redistributions in binary form must reproduce the above copyright + - notice, this list of conditions and the following disclaimer in the + - documentation and/or other materials provided with the distribution. + - 3. The name of the author may not be used to endorse or promote + - products derived from this software without specific prior written + - permission. + - + - THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + - ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + - OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + - HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + - LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + - OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + - SUCH DAMAGE. + --> + +<article> + <articleinfo> + <title>������������ ������ �������������� (PAM)</title> + + <pubdate>$FreeBSD$</pubdate> + + <abstract> + <para>� ���� ������ ����������� �������� � ���������, ������� � ������ + ���������� ������������ ������� �������������� (PAM - Pluggable + Authentication Modules), � ��������������, ��� ��������� PAM, ��� + ������������� PAM � ���������� � ��� ��������� ������ PAM.</para> + </abstract> + + <copyright> + <year>2001</year> + + <year>2002</year> + + <year>2003</year> + + <holder>Networks Associates Technology, Inc.</holder> + </copyright> + + <authorgroup> + <author> + <firstname>Dag-Erling</firstname> + + <surname>Smørgrav</surname> + + <contrib>����� �����������</contrib> + </author> + </authorgroup> + + <legalnotice> + <para>��� ������ ���� �������� ��� ������� FreeBSD ���������� + ThinkSec AS � Network Associates Laboratories, Security + Research Division of Network Associates, Inc. � ������ ����� �� + ��������� N66001-01-C-8035 � DARPA/SPAWAR (<quote>CBOSS</quote>), + ��� ����� ����������������� ��������� DARPA CHATS.</para> + </legalnotice> + + <legalnotice id="trademarks" role="trademarks"> + &tm-attrib.freebsd; + &tm-attrib.linux; + &tm-attrib.opengroup; + &tm-attrib.sun; + &tm-attrib.general; + </legalnotice> + </articleinfo> + + <section id="pam-intro"> + <title id="pam-intro.title">��������</title> + + <para>���������� Pluggable Authentication Modules (PAM) �������� ����ݣ���� + API ��� �����, ��������� � ���������������, ������� ��������� ���������� + �������������� ��������� ����� ������ �������������� ������� ���������� + ����� ������� PAM, � �������� �������� �������������� ����������� + �������������� ���������������� ������.</para> + + <para>PAM ������� � ����������� Vipin Samar � Charlie Lai �� Sun + Microsystems � 1995 ����, � ��� �� ������ �� �������. � 1997 ���� Open + Group ������������ ��������������� ������������ �� X/Open Single Sign-on + (XSSO), ��� ��������������� API ��� PAM � �������� ���������� ��� + ����������� (��� ���������� ���������������) �������. �� ������ + ��������� ����� ��������� ��� ������������ �ݣ �� ���� ������� �� + ��������.</para> + + <para>���� ��� ������ ��������� � �������� FreeBSD 5.x, � ������� + ������������ OpenPAM, ��� �����ģ� ��� FreeBSD 4.x, ������������ + Linux-PAM, � ������ ������������ ������, �����, ��� Linux � + &solaris;.</para> + </section> + + <section id="pam-terms"> + <title id="pam-terms.title">������� � ����������</title> + + <section id="pam-definitions"> + <title id="pam-definitions.title">�����������</title> + + <para>������������, ������������ � PAM, ���������� ��������. �� + ������������ ������ Samar � Lai, �� ������������ XSSO �� ������ ������� + ������� ��������� ���������� ������� ��� ��������� �������� � + ����������� � PAM ������, � �������, ������� ��� ���������� (�� �� + ����������) ������ ������� � ������������. ������ �������� ������� + ��������������� � ������������� ������������ ���� ������, ������� + ������� Andrew G. Morgan (����� Linux-PAM) � 1999 ����. ���� ����� + ������������, ������� ������ ������, ��� ���������� ������� ������, + ���, �� ������ ������ ������ ������, �� �������� �� ������������. + ����� �������� �������, � ������������ ������� �� ������ ������ + �������, ���� ������ � ��������������� ����������� �������� ��� ���� + ���������� � �������� PAM.</para> + + <glosslist> + <glossentry> + <glossterm>�ޣ���� ������ (account)</glossterm> + + <glossdef> + <para>����� ����������, ������� ��������� ����������� �� + �����������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>��������� (applicant)</glossterm> + <glossdef> + <para>������������ ��� ������, ������������� ��������������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>���������� (arbitrator)</glossterm> + <glossdef> + <para>������������ ��� ������, ������� ����������, ����������� + ��� �������� ���������� ���������� � ����� ����������� ��� + ��������� ������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>������� (chain)</glossterm> + <glossdef> + <para>������������������ �������, ������� ����� ������� � ����� �� + ������ PAM. � ������� �������� ���������� � ������������������ + ������� �������, ����������, ������� ����� �� ��������, � � ���, + ��� ���������������� ����������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>������ (client)</glossterm> + <glossdef> + <para>����������, ���������� �� ������������� ������� �� + �������������� �� ����� ���������� � ���������� �� ���� + ����������� ��� �������������� ����������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>���������� (facility)</glossterm> + <glossdef> + <para>���� �� ������� �������� ����� ����������������, ������� ���� + PAM: ��������������, ���������� �������� ��������, ���������� + ������� � ���������� ������ ��������������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>������ (module)</glossterm> + <glossdef> + <para>����� �� ����� ��� �������� ���������� ��������� �������, + ����������� ������������ ���������� ��������������, ��������� � + ���� (������ ����������� �����������) �������� ����, + ���������������� �� �����.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>�������� (policy)</glossterm> + <glossdef> + <para>������ ����� ���������������� ����������, �����������, ��� + ������������ ������� PAM � ������������ ������. �������� ������ + ������� �� ������� �������, �� ����� ��� ������ ����������, ���� + ��������� ������ ���������� �� ��� ������ ����������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>������ (server)</glossterm> + <glossdef> + <para>����������, ����������� �� ����� ����������� ��� ������� � + ��������, ������������ ������������������ ����������, �������� + ���������� ���������� � �������������� ��� ����������� + ������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>������ (service)</glossterm> + <glossdef> + <para>����� ��������, ��������������� ������� ��� ��������� + ����������������, � ��������� �������� ��������������. �������� + PAM �������� �� ������ ��������, ��� ��� �� ���� ��������, + ����������� ���� � ���� ��� �������, ����� ����������� ���� � �� + �� ��������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>����� (session)</glossterm> + <glossdef> + <para>��������, � ������� ������ ����������� ���������� ��������. + ���� �� ������� ��������� PAM, ���������� �������, �������� + ������������� ��������� � ������� ����� ���������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>���� (token)</glossterm> + <glossdef> + <para>���� ����������, ��������� � ������� �������, ��������, + ������ ��� �������� �����, ������� ��������� ������ ������������ + ��� ����� �������������.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>���������� (transaction)</glossterm> + <glossdef> + <para>������������������ �������� �� ������ � ���� �� ���������� � + ������ � ���� �� ���������� ���� �� ������ �������, ������� � + �������������� � ������������ ������ � ���������� ��������� + ������.</para> + </glossdef> + </glossentry> + </glosslist> + </section> + + <section id="pam-usage-examples"> + <title id="pam-usage-examples.title">������� �������������</title> + + <para>���� ������ ������������ ��� ����������� �������� ��������� + ��������, ������������ ����, ��� ������ ������� ��������.</para> + + <section> + <title>������������ ������ � ������</title> + + <para>� ���� ������� ������� ������������ ������������ + <literal>alice</literal>, ����������� ������� &man.su.1; ��� + ����, ����� ����� ������������� <literal>root</literal>.</para> + + <screen>&prompt.user; <userinput>whoami</userinput> +alice +&prompt.user; <userinput>ls -l `which su`</userinput> +-r-sr-xr-x 1 root wheel 10744 Dec 6 19:06 /usr/bin/su +&prompt.user; <userinput>su -</userinput> +Password: <userinput>xi3kiune</userinput> +&prompt.root; whoami +root</screen> + + <itemizedlist> + <listitem> + <para>����������� �������� <literal>alice</literal>.</para> + </listitem> + + <listitem> + <para>������� ������� �������� <literal>root</literal>.</para> + </listitem> + + <listitem> + <para>������� &man.su.1; �������� ��� ��������, ��� � + ��������.</para> + </listitem> + + <listitem> + <para>������������������ ������ �������� + <literal>xi3kiune</literal>.</para> + </listitem> + + <listitem> + <para>������������ ��������� <literal>root</literal>, � ������ + ������� � ������� &man.su.1; ��������� ��� ���������� � + ������� <literal>root</literal>.</para> + </listitem> + </itemizedlist> + </section> + + <section> + <title>������ � ������ ���������</title> + + <para>� ������� ���� ��������������� ������������ + <literal>eve</literal>, ���������� ���������� &man.ssh.1;-���������� + � <literal>login.example.com</literal>, � ������� ����� ��� + ������������ <literal>bob</literal>. ��� ������ ��� ������� ������ + �������!</para> + + <screen>&prompt.user; <userinput>whoami</userinput> +eve +&prompt.user; <userinput>ssh bob@login.example.com</userinput> +bob@login.example.com's password: <userinput>god</userinput> +Last login: Thu Oct 11 09:52:57 2001 from 192.168.0.1 +Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994 + The Regents of the University of California. All rights reserved. +FreeBSD 4.4-STABLE (LOGIN) #4: Tue Nov 27 18:10:34 PST 2001 + +Welcome to FreeBSD! +&prompt.user;</screen> + + <itemizedlist> + <listitem> + <para>����������� �������� <literal>eve</literal>.</para> + </listitem> + + <listitem> + <para>�������� �������� ������� &man.ssh.1; ������������ + Eve.</para> + </listitem> + + <listitem> + <para>�������� �������� ������� &man.sshd.8; �� ������ + <literal>login.example.com</literal></para> + </listitem> + + <listitem> + <para>������� ������� �������� <literal>bob</literal>.</para> + </listitem> + + <listitem> + <para>������ �������������� �������� + <literal>god</literal>.</para> + </listitem> + + <listitem> + <para>���� ����� �� ����� � �������, �� ������������ �������� + <literal>root</literal>.</para> + </listitem> + </itemizedlist> + </section> + + <section> + <title>������ ��������</title> + + <para>��������� �������� ���������, ������������ �� FreeBSD �� + ��������� ��� <literal>sshd</literal>:</para> + + <programlisting>sshd auth required pam_nologin.so no_warn +sshd auth required pam_unix.so no_warn try_first_pass +sshd account required pam_login_access.so +sshd account required pam_unix.so +sshd session required pam_lastlog.so no_fail +sshd password required pam_permit.so</programlisting> + + <itemizedlist> + <listitem> + <para>��� �������� ����������� � ������ <literal>sshd</literal> + (��� �� ����������� ���������� �������� &man.sshd.8;).</para> + </listitem> + + <listitem> + <para><literal>auth</literal>, <literal>account</literal>, + <literal>session</literal> � + <literal>password</literal> �������� ������������.</para> + </listitem> + + <listitem> + <para><filename>pam_nologin.so</filename>, + <filename>pam_unix.so</filename>, + <filename>pam_login_access.so</filename>, + <filename>pam_lastlog.so</filename> � + <filename>pam_permit.so</filename> �������� ��������. �� ����� + ������� �����, ��� <filename>pam_unix.so</filename> + ��������� �� ������� ���� ��� ���������� (�������������� � + ���������� �ޣ����� ��������).</para> + </listitem> + </itemizedlist> + </section> + </section> + +<!-- + <section id="pam-conventions"> + <title id="pam-conventions.title">����������</title> + + <para>���� ������ �ݣ �� ��� �������.</para> + </section> +--> + </section> + + <section id="pam-essentials"> + <title id="pam-essentials.title">������ PAM</title> + + <section id="pam-facilities-primitives"> + <title id="pam-facilities-primitives.title">���������� � + ���������</title> + + <para>API ��� PAM ������������� ����� ��������� ���������� ��� + ��������������, ��������������� � ������ ����������, ������ �� ������� + ����������� ����.</para> + + <variablelist> + <varlistentry> + <term><literal>auth</literal></term> + + <listitem> + <para><emphasis>��������������.</emphasis> ��� ���������� + ���������� ��������� �������������� ���������� � ��������� + ���������� ������� ������. ��� ������������� ��� + ���������:</para> + + <itemizedlist> + <listitem> + <para>������� &man.pam.authenticate.3; ��������������� + ����������, ������ ���������� ������������������ ���� � + ��������� ��� �� ���������, ���������� � ���� ������ ��� + ���������� �� ������� ��������������.</para> + </listitem> + + <listitem> + <para>������� &man.pam.setcred.3; ������������� ���������� + �ޣ���� ������, �����, ��� ������������� ������������, + �������� � ������� � ����������� �� ������������� + ��������.</para> + </listitem> + </itemizedlist> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>account</literal></term> + + <listitem> + <para><emphasis>���������� �ޣ���� �������.</emphasis> ��� + ���������� ������������ ������� ����������� ������� ������, �� + ��������� � ���������������, �����, ��� ����������� � ������� �� + ������ ������� ����� ��� �������� �������. �� ������������� + ������������ ��������:</para> + + <itemizedlist> + <listitem> + <para>������� &man.pam.acct.mgmt.3; ���������, �������� �� + ������������� �ޣ���� ������.</para> + </listitem> + </itemizedlist> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>session</literal></term> + + <listitem> + <para><emphasis>���������� �������.</emphasis> ��� ���������� + ������������ ������, ��������� � ������������� � ��������� + ������, �����, ��� ���� ������ �������������. ��� ������������� + ��� ���������:</para> + + <itemizedlist> + <listitem> + <para>������� &man.pam.open.session.3; ��������� ��������, + ��������� � ������������� ������: ���������� ������� � ���� + ������ <filename>utmp</filename> � <filename>wtmp</filename>, + ������ ������ SSH � ��� �����.</para> + </listitem> + + <listitem> + <para>������� &man.pam.close.session.3; ��������� + ��������, ��������� � ��������� ������: ���������� ������� � + ���� ������ <filename>utmp</filename> � + <filename>wtmp</filename>, ���������� ������ ������ SSH � ��� + �����.</para> + </listitem> + </itemizedlist> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>password</literal></term> + <listitem> + <para><emphasis>���������� �������.</emphasis> ��� ���������� + ������������ ��� ��������� ����� ��������������, ���������� � + ������� �������, �� ������� ��������� ��� ����� �������� ��� + ������� ������������ �������� ���. ��� ������������� + ������������ ��������:</para> + + <itemizedlist> + <listitem> + <para>������� &man.pam.chauthtok.3; �������� ���� + ��������������, ����������� ��������, ��� �� ������ ��� + �������, �� ������������� ����� � ��� �����.</para> + </listitem> + </itemizedlist> + </listitem> + </varlistentry> + </variablelist> + </section> + + <section id="pam-modules"> + <title id="pam-modules.title">������</title> + + <para>������ �������� ����������� ���������� � PAM; � ����� ������, �� + ������������� ����� <quote>M</quote> � ���������� <quote>PAM</quote>. + ������ PAM ������������ ����� ��������������� ������ ������������ ����, + ������� ��������� ��������� ����� ��� �������� ���������� ��������� + ������ ����������� ���������; � ��������� ���������� ��� ���������� + ��������������, � �������, ��������� ���� ������ ������� &unix;, ������� + NIS, LDAP ��� Radius.</para> + + <section id="pam-module-naming"> + <title id="pam-module-naming.title">���������� �������</title> + + <para>�� FreeBSD ������ �������� ����������� � ��������� ������ � + ������ <literal>pam_<replaceable>mechanism</replaceable>.so</literal> + (��������, <literal>pam_unix.so</literal> ��� ��������� &unix;.) + � ������ ����������� ������ ��������� ������ ������������ ��� ������ + ���������, � � �� ��� ����������, ����� �������� ���������, � ��� + ����������. � �������, � &solaris; ������� ������ + <literal>pam_dial_auth.so.1</literal>, ������� ����� ������������ + ��� �������������� �������������, ���������� �� ������������� + ������� �����.</para> + </section> + + <section id="pam-module-versioning"> + <title id="pam-module-versioning.title">������ �������</title> + + <para>����������� ���������� PAM �� FreeBSD, ������� ���� �������� �� + Linux-PAM, �� ������������ ������ ������ ��� ������� PAM. ��� ����� + ��������� � ��������� ��� ������ �������������� ����������, ������� + ����� ���� ������������ �� ������� �������� ��������� ���������, ��� + ��� ������� ���������� ��������������� ������ ��������� ������� + ���.</para> + + <para>OpenPAM, � ������ �������, ���� ������, ������� ����� ��� �� + ����� ����� ������, ��� � ���������� PAM (�� ������ ������ 2), � + ���������� ������ ��� ������, ������ ���� ������ � ��������� ������� + �� ��� ��������. ������� ��� ������ ���������� ����� ��������������� + ������ ������, ��� ���� ����� (��� ������ �����������) ���������� + ����� ������������ ��� ����������� ��������� ������ �������.</para> + + <para>���� ������ PAM � &solaris; ����� ����� ������, ��-���������� + ����� ������ � ��� �� �������������, ������ ��� ����� �������� ������ + ����� � ������ ���������� � ������������.</para> + </section> + </section> + + <section id="pam-chains-policies"> + <title id="pam-chains-policies.title">������� � ��������</title> + + <para>����� ������ ���������� PAM-����������, ���������� PAM + �������� ��������� �������� ��� ������, ��������� ��� ������ ������� + &man.pam.start.3;. �������� ����������, ��� ������ + �������������� ������� �� ��������������, � �������� � + ���������������� �����. ��� ���������� ������ ���������������� + ��������� PAM: ����������� �������������� ����������� �������� + ������������ ������� (� ����� ������� ţ ���������) ������� + ��������������� ���������� �����.</para> + + <para>�������� ������� �� ����ң� �������, �� ����� �� ������ �� + ������� PAM. ������ ����� ������������ ����� ������������������ + ���������������� �����������, �������� ���������� ������, ��������� + (��������������) ��������� ��� �������� � ������, � ����������� ����, + �����������, ��� ���������������� ������������ �� ������ ���.</para> + + <para>��������� ������ ������������ ����� ���������� ��� ��������� + ���������������� ������ PAM. ���������� ������ ��������� ����������� + �����:</para> + + <variablelist> + <varlistentry> + <term><literal>binding</literal></term> + + <listitem> + <para>���� ������ ��������� �������, � �� ���� �� ���������� + ������� � ������� �� �������� ������������, �� ������� + �����������, � ������ ��������������. ���� �� ������ ���������� + ��������, �� ����������� ���������� ����� �������, ������ + ������ �����������.</para> + + <para>���� ����������� ���� ��� �������� ��������� Sun � &solaris; + 9 (&sunos; 5.9), � �������������� � OpenPAM.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>required</literal></term> + + <listitem> + <para>���� ������ ��������� ������������� �����, ����������� + ���������� ����� �������, ������ ���������������, ���� ������� + ������ ������ �� ���������� ������������. ���� �� ������ + ��������� ������������� �����, ������� ������� ���� + ��������������, �� ������ �����������.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>requisite</literal></term> + + <listitem> + <para>���� ������ ���������� ������������� �����, ����������� + ���������� ����� �������, ������ ���������������, ���� ������� + ������ ������ �� ���������� ������������. ���� �� ������ + ������������ ������������, �� ��������� ������� ���������� + ������������, � ������ �����������.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>sufficient</literal></term> + + <listitem> + <para>���� ������ ��������� ������������� �����, � �� ���� �� + ���������� ������� � ������� �� ��������� ������������, �� + ��������� ������� ���������� ������������, � ������ + ���������������. ���� ������ ��������� ������������, �� + ��������� ������������ � ������� �������������� ������.</para> + + <para>��� ��� ��������� ����� ����� ����� ��������� ����������, + �������� ��� ��� ������������� � ��������� ������� � �������, + ������������� ������ ���� ������������ ����������� ���� + <literal>binding</literal>, ���� ���������� ��� + ������������.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>optional</literal></term> + + <listitem> + <para>������ ��������������, �� ��������� ���������� ������������. + ���� ��� ������ � ������� �������� ��� + <literal>optional</literal>, �� ��������������� ����� ��� + �������.</para> + </listitem> + </varlistentry> + </variablelist> + + <para>����� ������ �������� ���� �� ����� PAM-����������, PAM + ����������� ������� ����������, � ������� ����������� ��������, � + ��������� ������ ������, ������������� � ������� � ������� �� + ������������, ���� ������ �� ����� �������� ���� �� ����� ����������, + ��� ���������� ��������� �� ����� (�� ������� ���������� ������, + ���������� ������������� ����� ��� ������� <literal>binding</literal> + ��� <literal>sufficient</literal>, ���� ������������� � �������� + <literal>requisite</literal>). ������ ��������������, ���� ������ + ��� ������ �� ������� ���� ���� ������, � ��� �������������� ������ + ������� ������������� �����.</para> + + <para>��������, ��� ��������, ���� ��� �� ��������������, ����������� + ���� � ��� �� ������ ��������� ��� � ����� �������. � �������, + ������, ��������������� ����� � ������ ������������ � ������� + �������� ����� ���� ������ ��������� ��� � ���������� �����������, + ��������� ��������� ������� ��������� ��� �����. PAM ������� + ��������� ��������� ������ ������ � ��� �� ����� ������� ������� � + �� ���������� ��������.</para> + </section> + + <section id="pam-transactions"> + <title id="pam-transactions.title">����������</title> + + <para>��������� ���� �������� PAM-���������� ������ ����. ��������, + ��� � ������, ���� ����� �� ������������� ����� ������������ ��������, + ������ ������ ������ ������� ��������������� ��������� �� ������ + � �������� ����������.</para> + + <orderedlist> + <listitem> + <para>���� ��� ����������, ������ �������� ���������� ����������� + ����� ����������� �� PAM ��������—���� ����� �� ����� + ������� ������������� <literal>root</literal> ��� � ������������� + setuid-����� <literal>root</literal>.</para> + </listitem> + + <listitem> + <para>������ �������� ������� &man.pam.start.3; ��� + ������������� ���������� PAM � ������� ����� ������� � ������� + �ޣ���� ������, � ����� ����������� ����������� ������� + �������.</para> + </listitem> + + <listitem> + <para>������ �������� ��������� ����������, ����������� � ���������� + (�����, ��� ��� ������������ ���������� � ��� �����, �� ������� + ������� ������), � ���������� ţ � PAM ��� ������ ������� + &man.pam.set.item.3;.</para> + </listitem> + + <listitem> + <para>������ �������� ������� &man.pam.authenticate.3; + ��� �������������� ����������.</para> + </listitem> + + <listitem> + <para>������ �������� ������� &man.pam.acct.mgmt.3; ��� �������� + ����, ��� ����������� �ޣ���� ������ �������� � ���������. ���� + ������ �����, �� ��� ���� ��ԣ�, &man.pam.acct.mgmt.3; ��������� + ��������� <literal>PAM_NEW_AUTHTOK_REQD</literal>, � �� + <literal>PAM_SUCCESS</literal>.</para> + </listitem> + + <listitem> + <para>���� �� ���������� ���� ��� ������� ��������� + <literal>PAM_NEW_AUTHTOK_REQD</literal>, �� ������ �������� ������� + &man.pam.chauthtok.3; ��� ����, ����� �������� ������� + �������� ���� �������������� ��� ����������� �ޣ���� + ������.</para> + </listitem> + + <listitem> + <para>������, ����� ��������� ��������� ����������������, ������ + �������� ������� &man.pam.setcred.3; ��� ��������� + ���������� ����������� �ޣ���� ������. ������� ��� ��������, + ������ ��� �� �������� ��� ����������, � ��������� �� ����� + ���������� �����������.</para> + </listitem> + + <listitem> + <para>����� ��������� ����������� ����������, ������ �������� ������� + &man.pam.open.session.3; ��� ������������ ������.</para> + </listitem> + + <listitem> + <para>������ ������ ��������� ��� ������, ������� ���������� + ������—��������, ������������� ���������� ��������.</para> + </listitem> + + <listitem> + <para>����� ����, ��� ������ �������� ������������ �������, �� + �������� ������� &man.pam.close.session.3; ��� �������� + ������.</para> + </listitem> + + <listitem> + <para>�������, ������ �������� ������� &man.pam.end.3; + ��� ���������� ���������� PAM � ���, ��� ������ � ��� ��������� � + �����-���� ���������� � ������� ������ ������� ����� + ����������.</para> + </listitem> + </orderedlist> + </section> + </section> + + <section id="pam-config"> + <title id="pam-config.title">��������� PAM</title> + + <section id="pam-config-file"> + <title id="pam-config-file.title">����� ������� PAM</title> + + <section id="pam-config-pam.conf"> + <title id="pam-config-pam.conf.title">���� + <filename>/etc/pam.conf</filename></title> + + <para>����������� ������ ������� PAM �������� + <filename>/etc/pam.conf</filename>. �� �������� ��� �������� PAM + ��� ����� �������. ������ ������ ����� ��������� ���� ��� � �������, + ��� �������� ����:</para> + + <programlisting>login auth required pam_nologin.so no_warn</programlisting> + + <para>���� ������� � ����� �������: ��� ������, ��� ����������, + ����������� ����, ��� ������ � ��������� ������. ����� + �������������� ���� ���������������� ��� �������������� ��������� + ������.</para> + + <para>��� ������ ���� ������/���������� ������������ ��������� �������, + � ����� ����������, ���, ���� ������� ���������� ����� ��� ����� � ��� + �� ������ � ���������� �������� ��������, ������� ������������ + ��������� �������� �� ������. � �������� �� ������������ + ������ �� PAM ������ ������������ ������������� �� �����������, � + ������������ � &solaris; ����� <filename>pam.conf</filename> ������ + ��� � �������, �� � ����������� ���������������� ����� �� �������� + FreeBSD ������ �������� ������������� �� ��������. �������� ����� + �� ���� ��������; ��� ����� ���� � ��� �� �����.</para> + </section> + + <section id="pam-config-pam.d"> + <title id="pam-config-pam.d.title">������� + <filename>/etc/pam.d</filename></title> + + <para>OpenPAM � Linux-PAM ������������ �������������� �������� + ���������, ������� ��� FreeBSD �������� ����������������. � ���� + ����� ������ �������� ���������� � ��������� ����� � ������, + ��������������� �������, � �������� ��� �����������. ��� ����� + ����������� � �������� <filename>/etc/pam.d/</filename>.</para> + + <para>����� ����� �������, ��������������� �� �������, ����� ������ + ������ ����, ������ ���� ����� � ����� <filename>pam.conf</filename>: + ���� ����� ������� �������. ����� �������, ������ ������� ������ + ����� <filename>pam.conf</filename> �� ����������� ������� ��������� + ��������� ������ � ����� <filename>/etc/pam.d/login</filename>:</para> + + <programlisting>auth required pam_nologin.so no_warn</programlisting> + + <para>��� ��������� ������ ����ݣ����� ����������, �������� + ������������� ����� � ��� �� ������� ��� ���������� ��������, + �������� ������ ��� ������� � ��� �� ����� ������ �������. � + �������, ��� ������������� ��� �� ����� �������� ��� �������� + <literal>su</literal> � <literal>sudo</literal>, ����� ������� + ���������:</para> + + <screen>&prompt.root; <userinput>cd /etc/pam.d</userinput> +&prompt.root; <userinput>ln -s su sudo</userinput></screen> + + <para>��� ��������, ������ ��� ��� ������� ������������ ������ �����, � + �� ��� ��������� � ����� ��������, ��� ��� ���� � ��� �� ���� ����� + �������������� ��� ���������� �������� � ������� ����������.</para> + + <para>��� ��� �������� ������� ������� �������� � ��������� �����, + �� �������� <filename>pam.d</filename> ������ ��������� + �������������� ������� ��� ����������� ������� ��������� + ������������� ����� ̣���� �������.</para> + </section> + + <section id="pam-config-file-order"> + <title id="pam-config-file-order.title">������� ������ �������</title> + + <para>��� �� ������ ����, �������� PAM ����� ���������� � ���������� + ������. ��� �����, ���� �������� ��� ������ � ���� �� ������� + ������� � ������ ������?</para> + + <para>���������� ��������, ��� ������� ������������ PAM ������������� + �� �������.<!-- XXX --></para> + </section> + </section> + + <section id="pam-config-breakdown"> + <title id="pam-config-breakdown.title">��������� ������ ���������</title> + + <para>��� ��� ��������� � ������� <link linkend="pam-config-file" + endterm="pam-config-file.title"></link>, ������ ������ ����� + <filename>/etc/pam.conf</filename> ������� �� ����ң� ��� �������� + ���������� �����: ����� �������, ����� ����������, ������������ �����, + ����� ������ � �������������� ���������� ������, ������� ����� + �������������.</para> + + <para>��� ������� ������ (���� �� ������) �������� ������ ����������, + ������� ���� ������ �����������. ���� �� �� �������, ���������� � + ������������ �� ����������� ���������� ��� ����������� ������������� + ����� �������.</para> + + <para>��������, ��� ���� �� ����������� <filename>/etc/pam.d/</filename> + ������ <filename>/etc/pam.conf</filename>, �� ��� ������� �������� + ������ ����� ��������, � ���������� �� ����� ���������, ������� � ����� + ������ ���������� � �������� ����������.</para> + + <para>��� ���������� ������������ ����� ���� �� ����ң� �������� ����, + ��������� � ����� <link linkend="pam-facilities-primitives" + endterm="pam-facilities-primitives.title"></link>.</para> + + <para>����� ����� ����������� ���� �������� ����� �� ����ң� �������� + ����, ��������� � ������� <link linkend="pam-chains-policies" + endterm="pam-chains-policies.title"></link>, � ������� ����������, ��� + ���������������� ������������ �� ������ ���. � Linux-PAM + �������������� �������������� ���������, ������� ��������� ������� + ��������, ��������� � ������ ��������� ����� ��������, �� ����� + ������� ��������, ��� ��� �� �� �������� ����������� � + ����� ������ �� �������� ��������������� ������� �������� � Linux-PAM + (� �� ����������� ���������� �� ������� �������������� � &solaris; � + OpenPAM). �� �������� ��������� ��� ����, ��� � OpenPAM ���� ��������� + �� ��������������.</para> + </section> + + <section id="pam-policies"> + <title id="pam-policies.title">��������</title> + + <para>��� ���������� ��������� PAM ���������� ��������, ��� ���������� + ������������� �������.</para> + + <para>� ������, ����� ���������� �������� ������� &man.pam.start.3;, + ���������� PAM ��������� �������� ��� ���������� ������� � ����������� + ������ ������� ������� (�� ����� ��� ������ ����������). ���� + ���� ��� ������� ���������� ���� ������� �������� �������, �� + ����� ����������� ����������� ��������������� ������� �� �������� ��� + ������� <literal>other</literal>.</para> + + <para>����� ����� ���������� �������� ���� �� ����� ���������� PAM, + ���������� PAM �������� �� ������� ������ ���������� � �������� + �������, ��������������� �������, � ������ ������, ������������� � + �������, � ��� �������, � ����� ��� ����������� � ������������. ����� + ������� ��������� � ������� �������, ��� ������ � ������ݣ���� �� ���� + ������� ��� ���������� ���������� ������������ ��� ����, ��� ������ + ������. �� ���������� ������������, ������� ����� ������� ����, + ����������� ����� �������:</para> + + <table> + <title>������� ������� ��������� ������� PAM</title> + + <tgroup cols="4"> + <colspec colwidth="1*" colname="type"> + + <colspec colwidth="1*" colname="success"> + + <colspec colwidth="1*" colname="ignore"> + + <colspec colwidth="1*" colname="other"> + + <thead> + <row> + <entry colname="type"></entry> + + <entry colname="success"><literal>PAM_SUCCESS</literal></entry> + + <entry colname="ignore"><literal>PAM_IGNORE</literal></entry> + + <entry colname="other"><literal>other</literal></entry> + </row> + </thead> + + <tbody> + <row> + <entry colname="type">binding</entry> + + <entry colname="success">if (!fail) break;</entry> + + <entry colname="ignore">-</entry> + + <entry colname="other">fail = true;</entry> + </row> + + <row> + <entry colname="type">required</entry> + + <entry colname="success">-</entry> + + <entry colname="ignore">-</entry> + + <entry colname="other">fail = true;</entry> + </row> + + <row> + <entry colname="type">requisite</entry> + + <entry colname="success">-</entry> + + <entry colname="ignore">-</entry> + + <entry colname="other">fail = true; break;</entry> + </row> + + <row> + <entry colname="type">sufficient</entry> + + <entry colname="success">if (!fail) break;</entry> + + <entry colname="ignore">-</entry> + + <entry colname="ignore">-</entry> + </row> + + <row> + <entry colname="type">optional</entry> + + <entry colname="success">-</entry> + + <entry colname="ignore">-</entry> + + <entry colname="other">-</entry> + </row> + </tbody> + </tgroup> + </table> + + <para>���� ���������� <varname>fail</varname> ��������� �������� + �������� � ����� ��������� �������, ��� ����� ��������� + <quote>break</quote>, ��������� ���������� ��� ������, ������ݣ���� + ������ �������, ������������ ��������. � ��������� ������ + ������������ <literal>PAM_SUCCESS</literal>.</para> + + <para>������ ����������� �������� ��, ��� ��� ������ + <literal>PAM_NEW_AUTHTOK_REQD</literal> ���������������� ��� �������� + ���������, ����� ������, ����� ������ ��������� �������, � �� ������� + ���� ���� ������ ��������� <literal>PAM_NEW_AUTHTOK_REQD</literal>, + ����� ��������� ��������� ��������� + <literal>PAM_NEW_AUTHTOK_REQD</literal>.</para> + + <para>������ ����������� �������� ��, ��� &man.pam.setcred.3; �������, + ��� ������ <literal>binding</literal> � <literal>sufficient</literal> + �������� ������������� <literal>required</literal>.</para> + + <para>������� � ��������� ����������� �������� ��, ��� ������� + &man.pam.chauthtok.3; ������������ ������ ������� ������ (���� ��� ��� + ��������������� ��������, � �ݣ ��� ��� ��������� ������� ������), � + �� ���������������� ���� ��� �������, ��� ������ + <literal>binding</literal> � <literal>sufficient</literal> �������� + ������������� <literal>required</literal>.</para> + </section> + </section> + + <section id="pam-freebsd-modules"> + <title id="pam-freebsd-modules.title">������ PAM �� FreeBSD</title> + + <section id="pam-modules-deny"> + <title id="pam-modules-deny.title">&man.pam.deny.8;</title> + + <para>������ &man.pam.deny.8; �������� ����� �� ���������� ��������� + �������; �� ����� ������ �� ���������� ��������� + <literal>PAM_AUTH_ERR</literal>. + �� ������� ��� �������� ���������� ������� (�������� ��� �� ���� + ������ �������) ��� ���������� ������� ������� + <literal>sufficient</literal>.</para> + </section> + + <section id="pam-modules-echo"> + <title id="pam-modules-echo.title">&man.pam.echo.8;</title> + + <para>������ &man.pam.echo.8; ������ �������� ���� ��������� � ������� + �������������� ��� ��������� <literal>PAM_TEXT_INFO</literal>. � + �������� ������� ��� �������, �� ����� ����� �������������� ��� + ������ ���������, ����� ��� <quote>Unauthorized access will be + prosecuted</quote> �� ������� ��������� ��������������.</para> + </section> + + <section id="pam-modules-exec"> + <title id="pam-modules-exec.title">&man.pam.exec.8;</title> + + <para>������ &man.pam.exec.8; ������������ ������ ���������� ��� + �������� ��� ��� ��������� ��� ����������, � ��������� ��������� + ���������� ���� ��������� � �������� ���������� ��������� ������. + ����� �� ��������� ���������� �������� ��� ������������� ��� ������� + � ������ ����������� � ������� ��������� ������������ ��������� + �������� ������������.</para> + </section> + + <section id="pam-modules-ftpusers"> + <title id="pam-modules-ftpusers.title">&man.pam.ftpusers.8;</title> + + <para>������ &man.pam.ftpusers.8;</para> + </section> + + <section id="pam-modules-group"> + <title id="pam-modules-group.title">&man.pam.group.8;</title> + + <para>������ &man.pam.group.8; ��������� ��� ��������� ����������� � + ����������� �� �� �������� � ������̣���� �������� ������ (������ + <literal>wheel</literal> ��� &man.su.1;). � ������ ������� + ������������ ��� ���������� ������������� ��������� ������� + BSD &man.su.1;, ���� ����� � ����� ������ ����������, ����� ��� + ���������� ������̣���� ����� ������������� �� ���������� + �������.</para> + </section> + + <section id="pam-modules-guest"> + <title id="pam-modules-guest.title">&man.pam.guest.8;</title> + + <para>������ &man.pam.guest.8; ��������� ������������ �������� ����� + � �������������� ������������� �ͣ� ����� � �������. �� ������ ����� + ������������� ��������� �����������, ������ ��������� �� ��������� + �������� ���� ������ ������ ��� ������������� �����, ���������������� + ��������� �����. ������ &man.pam.guest.8; ����� ����� ������������ + ��� ���������� ��������� ������ �� FTP.</para> + </section> + + <section id="pam-modules-krb5"> + <title id="pam-modules-krb5.title">&man.pam.krb5.8;</title> + + <para>������ &man.pam.krb5.8;</para> + </section> + + <section id="pam-modules-ksu"> + <title id="pam-modules-ksu.title">&man.pam.ksu.8;</title> + + <para>������ &man.pam.ksu.8;</para> + </section> + + <section id="pam-modules-lastlog"> + <title id="pam-modules-lastlog.title">&man.pam.lastlog.8;</title> + + <para>������ &man.pam.lastlog.8;</para> + </section> + + <section id="pam-modules-login-access"> + <title id="pam-modules-login-access.title"> + &man.pam.login.access.8;</title> + + <para>������ &man.pam.login.access.8; ������������� ���������� ��������� + ��� ���������� �ޣ����� ��������, ������� ������ � �������� + ����������� �� ����, ���������� � ������� &man.login.access.5;.</para> + </section> + + <section id="pam-modules-nologin"> + <title id="pam-modules-nologin.title">&man.pam.nologin.8;</title> + + <para>������ &man.pam.nologin.8; ��������� ����� ����� �� ������������� + root, ���� ���������� ���� <filename>/var/run/nologin</filename>. + ������ ���� ���� ��������� �������� &man.shutdown.8;, ����� �� + ���������������� ���������� ������ ������� �������� ����� ���� + �����.</para> + </section> + + <section id="pam-modules-opie"> + <title id="pam-modules-opie.title">&man.pam.opie.8;</title> + + <para>������ &man.pam.opie.8; ��������� ����� �������������� + &man.opie.4;. ������� &man.opie.4; �������� ���������� ������ �� + ����� ������-�����, ��� ������� ����� �� ������ ������ �������� + ������ �������� �� ������� � �������� �����, ��� ��� ����� ����� ���� + ����� � <quote>�������</quote> �������� �����, ������� �������� �����, + ��� ��������� �� ������������� ���������� ������. ����� ����, ��� + ��� � &man.opie.4; ������� �������� �� ������������ ������, ����� �� + ������� ��� ��������� �������, ��� ����� �������� ���������� � + ������, ���������� �� ������� ��������.</para> + </section> + + <section id="pam-modules-opieaccess"> + <title id="pam-modules-opieaccess.title">&man.pam.opieaccess.8;</title> + + <para>������ &man.pam.opieaccess.8; ��������� ������ &man.pam.opie.8;. + ��� ������ ����������� � ���������� �����������, ���������� ������ + &man.opieaccess.5;, ������� ���������� �������, ��� ������� + ������������, ��������� ��������� �������������� ����������� + &man.opie.4;, ����� ������������ �������������� ������. ���� ����� + �� ������������ ��� ������� ������������� �������������� �� ������ + ������� � ������������� ������.</para> + + <para>��� ������������� ������ &man.pam.opieaccess.8; ������ ���� + ������̣� � ������� <literal>auth</literal> ��� + <literal>requisite</literal> ����� �� ����� ������ + <literal>sufficient</literal> ��� &man.pam.opie.8;, �� ����� ������ + ������� ��������.</para> + </section> + + <section id="pam-modules-passwdqc"> + <title id="pam-modules-passwdqc.title">&man.pam.passwdqc.8;</title> + + <para>������ &man.pam.passwdqc.8;</para> + </section> + + <section id="pam-modules-permit"> + <title id="pam-modules-permit.title">&man.pam.permit.8;</title> + + <para>������ &man.pam.permit.8; �������� ����� �� ����� ������� �� + ���������; �� ����� ������ �� �������� <literal>PAM_SUCCESS</literal>. + �� ������� � �������� ������ ������� ����� ��� ��������, ����� + ���� ��� ������� ���������� ������� � ��������� ������ ��������� + �������.</para> + </section> + + <section id="pam-modules-radius"> + <title id="pam-modules-radius.title">&man.pam.radius.8;</title> + + <para>������ &man.pam.radius.8;</para> + </section> + + <section id="pam-modules-rhosts"> + <title id="pam-modules-rhosts.title">&man.pam.rhosts.8;</title> + + <para>������ &man.pam.rhosts.8;</para> + </section> + + <section id="pam-modules-rootok"> + <title id="pam-modules-rootok.title">&man.pam.rootok.8;</title> + + <para>������ &man.pam.rootok.8; ���������� ������������� ��������� � ��� + � ������ � ��� ������, ���� �������� id ������������ ��������, ��� + ���������� (��������������, ��� ��� ��������� ���������) ����� 0. ��� + ������� ��� ��������� ��������, ����� ��� &man.su.1; ��� + &man.passwd.1;, � ������� ������������ <literal>root</literal> ������ + ����� �������������� ������.</para> + </section> + + <section id="pam-modules-securetty"> + <title id="pam-modules-securetty.title">&man.pam.securetty.8;</title> + + <para>������ &man.pam.securetty.8;</para> + </section> + + <section id="pam-modules-self"> + <title id="pam-modules-self.title">&man.pam.self.8;</title> + + <para>������ &man.pam.self.8; ���������� ������������� ��������� ����� � + ������ �����, ����� ����� ���������� ������������� ������� �ޣ���� + ������. ������ ����� ��� ���������� � ��������� ��������, ����� ��� + &man.su.1;, � ������� ������������� ���������� ����� ���� � ̣������� + ���������.</para> + </section> + + <section id="pam-modules-ssh"> + <title id="pam-modules-ssh.title">&man.pam.ssh.8;</title> + + <para>������ &man.pam.ssh.8; ������������� ��� ������ ��������������, + ��� � ������. ������ �������������� ��������� �������������, ������� + ��������� ����� SSH, ����ݣ���� ��������, � ����� ��������� + <filename>~/.ssh</filename>, ������������������� ����������� ���� + �������. ��������� ������ ��������� &man.ssh-agent.1; � ��������� + �����, ������� ���� ������������ �� ���� ��������������. ����� + �����������, � ���������, ������� ��� ��������� ������ � �������, + ��� � ������� X (����������� &man.xdm.1; ��� ������� X-��������� + ������, �������� �������� � PAM), ��� � �� �������.</para> + </section> + + <section id="pam-modules-tacplus"> + <title id="pam-modules-tacplus.title">&man.pam.tacplus.8;</title> + + <para>������ &man.pam.tacplus.8;</para> + </section> + + <section id="pam-modules-unix"> + <title id="pam-modules-unix.title">&man.pam.unix.8;</title> + + <para>������ &man.pam.unix.8; ��������� ������������ �������������� + &unix; �� ������ �������, ������������ ������� &man.getpwnam.3; ��� + ��������� ������ ������� �ޣ���� ������ � ������������ ţ � ���, ��� + ���������� ���������. �� ����� ������������� �������� ���������� + �ޣ����� �������� (���������� ����� �������� �ޣ���� ������ � ������) � + ����� �������. ��������, ��� ����� �������� ������, ��� ��� + ����������� ����������� ��������������� ����� ��������� ����������� + ����������� ��������� �� ������� ���� ��������� ��������.</para> + </section> + </section> + + <section id="pam-appl-prog"> + <title id="pam-appl-prog.title">���������������� ���������� � PAM</title> + + <para><!--XXX-->���� ������ �ݣ �� �������.</para> + + <!-- + + ��������, ���, ���� � ������������ ������ � PAM ������� ������ + PAM-����������, ����������� pam_open_session() ����� pam_setcred(), + � ������������ �� Linux-PAM �����������, ��� ������� ������ ���������� + ������� pam_setcred(), ��� ����� ������ ������. + + �������� �����, ��� ������ �� ��� ������ �������� setgid(), + initgroups() � setuid() ��������������, ������ ����, ����� ���������� + �� ������� pam_setcred(). + + --> + + </section> + + <section id="pam-module-prog"> + <title id="pam-module-prog.title">���������������� ������ PAM</title> + + <para><!--XXX-->���� ������ �ݣ �� �������.</para> + </section> + + <appendix id="pam-sample-appl"> + <title id="pam-sample-appl.title">������ PAM-����������</title> + + <para>����� ������� ����������� ���������� ��������� &man.su.1; � + �������������� PAM. ��������, ��� � ��� ������������ ����������� ��� + OpenPAM ������� �������������� &man.openpam.ttyconv.3;, ���������� + ������� ����������� � ����� <filename + class="headerfile">security/openpam.h</filename>. + ���� �� ����������� ������� ��� ���������� � ������� � ������ + ����������� PAM, ��� ���������� ����� ������� ����������� ������� + ��������������. ��ģ���� ������� �������������� ���������� ������ + ��������; ��, ��� ��������� � ���������� <link linkend="pam-sample-conv" + endterm="pam-sample-conv.title"></link>, ������ � �������� ��������� + �����, �� � �������� ����������� �������������� �� �����.</para> + + <programlisting><inlinegraphic fileref="pam_app.c" + format="linespecific"></programlisting> + </appendix> + + <appendix id="pam-sample-module"> + <title id="pam-sample-module.title">������ PAM-������</title> + + <para>����� ��������� ����������� ���������� &man.pam.unix.8;, + ��������������� ������ ������� ��������������. ��� ������ ��������� � + �������� � ������������ �� ���������� PAM, �� ���������� ����������� + ���������� OpenPAM, ���� ��� ������������: �������� ������������� + ������� &man.pam.get.authtok.3;, ������� ����������� �������� + ����������� ����� ������ �������������.</para> + + <programlisting><inlinegraphic fileref="pam_module.c" + format="linespecific"></programlisting> + </appendix> + + <appendix id="pam-sample-conv"> + <title id="pam-sample-conv.title">������ ������� �������������� + PAM</title> + + <para>������� ��������������, ���������� ����, �������� ����������� + ����ݣ���� ������� ������� &man.openpam.ttyconv.3; �� OpenPAM. ��� + ������������������, � ������ ��������� ���������� ���� � ���, ��� + ������ ���� ����� ������� ��������������, ������ ��� ������� ������ ��� + �������� ����������. ���� ���� �� �� ����������� OpenPAM, ������ + �������� �������� ��� � ������������ &man.openpam.ttyconv.3; � ����� + �����; �� ��������, ��� ��� ���������� ��ģ��� � �������� ������� + ��� �������������� � ������������� ������������.</para> + + <programlisting><inlinegraphic fileref="pam_conv.c" + format="linespecific"></programlisting> + </appendix> + + <bibliography id="pam-further"> + <title id="pam-further.title">�������������� ����������</title> + + <abstract> + <para>��� ������ ����������, ����������� � PAM � ��������� ��������. + ��, ����������, �� �������� ������.</para> + </abstract> + + <bibliodiv> + <title>������</title> + + <biblioentry> + <title><ulink + url="http://www.sun.com/software/solaris/pam/pam.external.pdf"> + Making Login Services Independent of Authentication + Technologies</ulink></title> + + <authorgroup> + <author> + <surname>Samar</surname> + + <firstname>Vipin</firstname> + </author> + + <author> + <surname>Lai</surname> + + <firstname>Charlie</firstname> + </author> + </authorgroup> + + <orgname>Sun Microsystems</orgname> + </biblioentry> + + <biblioentry> + <title><ulink + url="http://www.opengroup.org/pubs/catalog/p702.htm">X/Open + Single Sign-on Preliminary Specification</ulink></title> + + <orgname>The Open Group</orgname> + + <isbn>1-85912-144-6</isbn> + + <pubdate>���� 1997</pubdate> + </biblioentry> + + <biblioentry> + <title><ulink + url="http://www.kernel.org/pub/linux/libs/pam/pre/doc/current-draft.txt"> + Pluggable Authentication Modules</ulink></title> + + <author> + <surname>Morgan</surname> + + <firstname>Andrew</firstname> + + <othername role="mi">G.</othername> + </author> + + <pubdate>6 ������� 1999</pubdate> + </biblioentry> + </bibliodiv> + + <bibliodiv> + <title>����������� ������������</title> + + <biblioentry> + <title><ulink + url="http://www.sun.com/software/solaris/pam/pam.admin.pdf">PAM + Administration</ulink></title> + + <orgname>Sun Microsystems</orgname> + </biblioentry> + </bibliodiv> + + <bibliodiv> + <title>Web-�������� �� ������ ��������</title> + + <biblioentry> + <title><ulink url="http://openpam.sourceforge.net/">�������� �������� + OpenPAM</ulink></title> + + <author> + <surname>Smørgrav</surname> + + <firstname>Dag-Erling</firstname> + </author> + + <orgname>ThinkSec AS</orgname> + </biblioentry> + + <biblioentry> + <title><ulink url="http://www.kernel.org/pub/linux/libs/pam/">�������� + �������� Linux-PAM</ulink></title> + + <author> + <surname>Morgan</surname> + + <firstname>Andrew</firstname> + + <othername role="mi">G.</othername> + </author> + </biblioentry> + + <biblioentry> + <title><ulink url="http://wwws.sun.com/software/solaris/pam/">�������� + �������� Solaris PAM</ulink></title> + + <orgname>Sun Microsystems</orgname> + </biblioentry> + </bibliodiv> + </bibliography> +</article>