<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: htdigest работа из скрипта</title>
    <link>https://www.opennet.me/openforum/vsluhforumID12/5795.html</link>
    <description>Доброго времени суток коллеги&lt;br&gt;&lt;br&gt;Извините - может не туда запостил.&lt;br&gt;&lt;br&gt;Как-то задумался, а можно ли htdigest заставить работать из скрипта, то есть, полностью (без ввода пароля ручками и тд)..&lt;br&gt;&lt;br&gt;Задумался - начал реализовывать, но столкнулся со следующей проблемой.&lt;br&gt;&lt;br&gt;htdigest (от apache-2.2.8) не воспринимает то, что ему передается через конвейер, то есть такая конструкция &lt;br&gt;&lt;br&gt;&#096;echo password &amp;#124; htdigest -c pass.pass unknown takas&#096;&lt;br&gt;&lt;br&gt;для него не проходит.&lt;br&gt;&lt;br&gt;Задумался, как можно это реализовать.&lt;br&gt;&lt;br&gt;Может есть у кого мысли по этому поводу?&lt;br&gt;&lt;br&gt;Спасибо за содействие (меня это вряд-ли отпустит, так что прошу помощи :)&lt;br&gt;&lt;br&gt;&lt;br&gt;Да, кстати, вот скрипт основной части:&lt;br&gt;&lt;br&gt;&lt;br&gt;#!/bin/sh&lt;br&gt;if &#091; -z $1 &#093;; then echo &quot;ech: File name please&quot;&lt;br&gt;exit 1&lt;br&gt;else&lt;br&gt;if &#091; -f sqp.pass &#093;; then clear&lt;br&gt;else&lt;br&gt;&#096;echo -n &amp;gt; sqp.pass &amp;&amp; chmod 600 sqp.pass&#096;&lt;br&gt;fi&lt;br&gt;l=1&lt;br&gt;b=&#096;cat $1 &amp;#124; grep : &amp;#124; cut -d : -f 1,7 &amp;#124; wc -l -- &amp;#124; cut -d &quot; &quot; -f 1,7&#096;&lt;br&gt;while &#091; $b -ne 0 &#093;&lt;br&gt;do&lt;br&gt;c=&#096;cat $1 &amp;#124; grep : &amp;#124; cut -d : -f 1,7 &amp;gt; tmp$ &amp;&amp; sed &quot;$l&quot;&quot;p;</description>

<item>
    <title>htdigest работа из скрипта (Олейников Дмитрий)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID12/5795.html#3</link>
    <pubDate>Thu, 06 Jul 2017 06:23:04 GMT</pubDate>
    <description>Такая замена с рукопашной генерацией строк файла, не всегда приемлема. У htdigect есть полезная особенность - она умеет не только добавлять пароли, но и менять их. В скрипте это , наверное, сделать не просто. А иногда нужно делать именно менеджмент пользователей с автоматической сменой пароля. &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;ЗЫ:Хотя, может sed при правильном приготовлении сможет?&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>htdigest работа из скрипта (gostest)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID12/5795.html#2</link>
    <pubDate>Fri, 10 Jul 2009 10:52:04 GMT</pubDate>
    <description>echo генерирует дополнительный new line символ, поэтому стоит использовать echo -n при генерации hash.&lt;br&gt;</description>
</item>

<item>
    <title>htdigest работа из скрипта (takas)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID12/5795.html#1</link>
    <pubDate>Fri, 24 Oct 2008 11:26:52 GMT</pubDate>
    <description>&amp;gt;&lt;br&gt;&amp;gt;Файл паролей может содержать мусор (комментарии &apos;#&apos;), имя и пароль разделяются &apos;:&apos;) &lt;br&gt;&amp;gt;десятая строка собственно получение кол-ва строк в файле, ну а дальше &lt;br&gt;&amp;gt;отфильтровываем мусор (получаем одни имена), потом уже отфильтровываем пароли (переворачиваем, фильтруем, &lt;br&gt;&amp;gt;переворачиваем), а вот htdigest - обломс! &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;FreeBSD 7.0 RELEASE скрипт для /bin/sh &lt;br&gt;&lt;br&gt;Вообщем тему можно закрывать, вопрос решен...&lt;br&gt;&lt;br&gt;сделал следующим образом..&lt;br&gt;&lt;br&gt;&lt;br&gt;#!/bin/sh &lt;br&gt;if &#091; -z $1 &#093;; then echo &quot;ech: File name please&quot; &lt;br&gt;exit 1 &lt;br&gt;else &lt;br&gt;if &#091; -f sqp.pass &#093;; then clear &lt;br&gt;else &lt;br&gt;&#096;echo -n &amp;gt; sqp.pass &amp;&amp; chmod 600 sqp.pass&#096;&lt;br&gt;fi &lt;br&gt;l=1 &lt;br&gt;b=&#096;cat $1 &amp;#124; grep : &amp;#124; cut -d : -f 1,7 &amp;#124; &lt;br&gt;wc -l -- &amp;#124; cut -d &quot; &quot; -f 1,7&#096; &lt;br&gt;while &#091; $b -ne 0 &#093; &lt;br&gt;do &lt;br&gt;c=&#096;cat $1 &amp;#124; grep : &amp;#124; cut -d : -f 1,7 &amp;gt; tmp$ &amp;&amp; sed &quot;$l&quot;&quot;p;d&quot; tmp$ &amp;&amp; rm tmp$&#096;&lt;br&gt;g=&#096;cat $1 &amp;#124; grep : &amp;#124; rev &amp;#124; cut -d : -f 1,7 &amp;#124; rev &amp;gt; tmp$$ &amp;&amp; sed &quot;$l&quot;&quot;p;d&quot; tmp$$ &amp;&amp; rm tmp$$&#096;&lt;br&gt;hash=&#096;echo &quot;$c&quot;&quot;:unknown&quot;&quot;:&quot;&quot;$g&quot; &amp;#124; md5 &amp;#124; cut -b -32&#096;&lt;br&gt;&#096;echo &quot;$c&quot;&quot;:unknown&quot;&quot;</description>
</item>

</channel>
</rss>
