<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.varhoo.cz/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://wiki.varhoo.cz/index.php?action=history&amp;feed=atom&amp;title=PAM</id>
		<title>PAM - Historie editací</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.varhoo.cz/index.php?action=history&amp;feed=atom&amp;title=PAM"/>
		<link rel="alternate" type="text/html" href="http://wiki.varhoo.cz/index.php?title=PAM&amp;action=history"/>
		<updated>2026-05-25T16:31:43Z</updated>
		<subtitle>Historie editací této stránky</subtitle>
		<generator>MediaWiki 1.19.20+dfsg-0+deb7u3</generator>

	<entry>
		<id>http://wiki.varhoo.cz/index.php?title=PAM&amp;diff=932&amp;oldid=prev</id>
		<title>Pajinek: /* Příklad modulu */</title>
		<link rel="alternate" type="text/html" href="http://wiki.varhoo.cz/index.php?title=PAM&amp;diff=932&amp;oldid=prev"/>
				<updated>2011-06-21T17:08:19Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Příklad modulu&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Starší verze&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Verze z 21. 6. 2011, 17:08&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádka 95:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádka 95:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;  session    required     pam_stack.so service=system-auth&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;  session    required     pam_stack.so service=system-auth&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;  session    optional     pam_console.so&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;  session    optional     pam_console.so&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Odkazy==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* [http://www.root.cz/clanky/pam-pouziti-v-praxi/ Použití v praxi na rootu]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* [http://www.root.cz/clanky/pam-sprava-autentizacnich-mechanismu/ PAM - správa autentizačních mechanismů]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Pajinek</name></author>	</entry>

	<entry>
		<id>http://wiki.varhoo.cz/index.php?title=PAM&amp;diff=931&amp;oldid=prev</id>
		<title>Pajinek: Založena nová stránka: V dřívějších dobách si autentifikaci uživatelů přistupujících k dané aplikaci musela obstarat aplikace sama. Tento přístup má několik nevýhod: nejen že to…</title>
		<link rel="alternate" type="text/html" href="http://wiki.varhoo.cz/index.php?title=PAM&amp;diff=931&amp;oldid=prev"/>
				<updated>2011-06-21T17:06:21Z</updated>
		
		<summary type="html">&lt;p&gt;Založena nová stránka: V dřívějších dobách si autentifikaci uživatelů přistupujících k dané aplikaci musela obstarat aplikace sama. Tento přístup má několik nevýhod: nejen že to…&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;V dřívějších dobách si autentifikaci uživatelů přistupujících k dané aplikaci musela obstarat aplikace sama.&lt;br /&gt;
Tento přístup má několik nevýhod: nejen že to je zcela proti filozofii unixových systému (kde každý program děla jednu věc, ale dělá ji dobře), ale hlavně nedovoluje jednoduchou změnu autentizačních mechanizmů. Linux-PAM (Pluggable Authentication Modules for Linux) je systém modulů dovolující aplikacím nezávislost na autentizačních mechanizmech, které jsou plně pod správou systému PAM.&lt;br /&gt;
Aplikace pak samotný proces autentizace (realizovaný heslem, biometrikami, čipovými kartami, ...) přenechává na knihovně libpam.&lt;br /&gt;
Důležitou součástí systému PAM jsou autentizační moduly (dynamické objektové soubory) umístěné v adresáři /lib/security/ nebo /usr/lib/security/.&lt;br /&gt;
&lt;br /&gt;
==Konfigurace==&lt;br /&gt;
Konfigurační soubory&lt;br /&gt;
Ve starších verzích byl konfigurační soubor /etc/pam.conf, novější verze má pro každou aplikaci (schopnou pracovat s PAM) zvláštní konfigurační soubor nacházející se v adresáři /etc/pam.d/ (např. /etc/pam.d/reboot). Soubor /etc/pam.conf se pak bere na vědomí jen v případě, že adresář /etc/pam.d/ neexistuje.&lt;br /&gt;
&lt;br /&gt;
Struktura /etc/pam.conf je:    &lt;br /&gt;
 service-name    module-type    control-flag    module-path    args&lt;br /&gt;
&lt;br /&gt;
Struktura /etc/pam.d/&amp;lt;service-name&amp;gt; je:    &lt;br /&gt;
 module-type    control-flag    module-path    args&lt;br /&gt;
&lt;br /&gt;
Kde:&lt;br /&gt;
service-name&lt;br /&gt;
    Jméno služby/aplikace.&lt;br /&gt;
    Speciální service-name OTHER je rezervovaný pro defaultní autentifikační mechanismus. Zde je dobrým zvykem zakázat vše, co není vysloveně povoleno:&lt;br /&gt;
 &lt;br /&gt;
     #%PAM-1.0&lt;br /&gt;
     # This is /etc/pam.d/other&lt;br /&gt;
     auth		required	pam_deny.so&lt;br /&gt;
     auth		required	pam_warn.so&lt;br /&gt;
     account	required	pam_deny.so&lt;br /&gt;
     account	required	pam_warn.so&lt;br /&gt;
     password	required	pam_deny.so&lt;br /&gt;
     password	required	pam_warn.so&lt;br /&gt;
     session	required	pam_deny.so&lt;br /&gt;
     session	required	pam_warn.so&lt;br /&gt;
&lt;br /&gt;
module-type&lt;br /&gt;
&lt;br /&gt;
    Jeden ze čtyř možných typů modulu:&lt;br /&gt;
    auth&lt;br /&gt;
        autentizace uživatele (heslem, biometrikami, ...);&lt;br /&gt;
    account&lt;br /&gt;
        provádí se další ověřování přístupu k službě, které však nemá nic společného s ověřováním identity uživatele (např. přístup jen v určitou dobu,...);&lt;br /&gt;
    session&lt;br /&gt;
        provádí se před a po skončení služby. Stará se o správu sezení. Může např. nastavovat proměnné prostředí, omezovat systémové prostředky, chroot, logovaní, ...&lt;br /&gt;
    password&lt;br /&gt;
        provádí aktualizaci uživatelských autentizačních tokenů (heslo, otisk prstu, ...). Obvykle také umožňuje kontrolu &amp;quot;kvality&amp;quot; hesla (délka, odolnost proti slovníkovému útoku).&lt;br /&gt;
&lt;br /&gt;
control-flag&lt;br /&gt;
    používá se k definici reakce na (ne)úspěšné ukončení modulu. Moduly stejného typu se spouštějí v sérii (jeden po druhém). Kontrolní příznaky pak určují reakci při skončení modulu. Aplikace se ale nedozví jak skončil který modul, místo toho obdrží jen celkovou odpověď success/fail. Od Linux-PAM v0.60 lze kontrolní příznak definovat jedním ze dvou způsobů:&lt;br /&gt;
&lt;br /&gt;
    pomocí jednoho z klíčových slov:&lt;br /&gt;
    required&lt;br /&gt;
        jeho neúspěch způsobí zamítnutí, ale až po provedení ostatních modulů ze stejné oblasti.&lt;br /&gt;
    requisite&lt;br /&gt;
        liší se od required okamžitým oznámením neúspěchu.&lt;br /&gt;
        Např. při přihlašování přes nespolehlivý kanál nám nedovolí zadávat heslo.&lt;br /&gt;
    sufficient&lt;br /&gt;
        modul s tímto příznakem může okamžitě ukončit kontroly s výsledkem success, pokud tento modul uspěl a žádný z předchozích modulů nezamítl přístup. Jinak je modul ignorován a pokračuje se dál v kontrole.&lt;br /&gt;
        Využívá se převážně pro přeskočeni zdlouhavých kontrol, pokud službu požaduje superuživatel.&lt;br /&gt;
    optional&lt;br /&gt;
        (ne)úspěch těchto modulů se nezahrnuje do celkového výsledku. &lt;br /&gt;
&lt;br /&gt;
    Nebo pomocí propracovanější syntaxe, ve které je kontrolní příznak tvaru:&lt;br /&gt;
       [value1=action1 value2=action2, ...]&lt;br /&gt;
module-path&lt;br /&gt;
    cesta k modulům. Implicitně (pokud není zadána cesta absolutní) se hledá v /usr/lib/security/ (/lib/security/). &lt;br /&gt;
args&lt;br /&gt;
    argumenty předávané modulu při jeho spuštění.&lt;br /&gt;
&lt;br /&gt;
==Příklad modulu==&lt;br /&gt;
&lt;br /&gt;
pam_localuser&lt;br /&gt;
*    vyžaduje uživatele uvedeného v /etc/passwd&lt;br /&gt;
pam_krb5&lt;br /&gt;
*    autentizace přes Kerberos 5&lt;br /&gt;
pam_succeed_if&lt;br /&gt;
*    úspěch tohoto modulu závisí na širší charakteristice uživatelova účtu (LOGIN,UID,GID,SHELL,HOME).&lt;br /&gt;
pam_cracklib&lt;br /&gt;
*    kontrola odolnosti hesla.&lt;br /&gt;
pam_limits&lt;br /&gt;
*    nastavování limitu (/etc/security/limits.conf).&lt;br /&gt;
pam_time&lt;br /&gt;
*    přístup jen v určitou dobu (/etc/security/time.conf).&lt;br /&gt;
pam_warn&lt;br /&gt;
*    slouží pro zápis do syslogu.&lt;br /&gt;
&lt;br /&gt;
Příklad konfiguračního souboru&lt;br /&gt;
/etc/pam.d/login&lt;br /&gt;
&lt;br /&gt;
  #%PAM-1.0&lt;br /&gt;
  auth       required     pam_securetty.so&lt;br /&gt;
  #kontrola, zda pristupujeme pres bezpecny kanal&lt;br /&gt;
  auth       required     pam_stack.so service=system-auth&lt;br /&gt;
  #vyhodnoce se ulozi na zasobnik&lt;br /&gt;
  auth       required     pam_nologin.so&lt;br /&gt;
  #kontrola zda neexistuje soubor /etc/nologin&lt;br /&gt;
  account    required     pam_stack.so service=system-auth&lt;br /&gt;
  password   required     pam_stack.so service=system-auth&lt;br /&gt;
  session    required     pam_stack.so service=system-auth&lt;br /&gt;
  session    optional     pam_console.so&lt;/div&gt;</summary>
		<author><name>Pajinek</name></author>	</entry>

	</feed>