Install & configuration of Poppasswd server on CentOS 5.2 Rumi, December 7, 2008December 7, 2008 1. Download Poppassd Daemon for Centos 5 Distro from here- http://rpm.razorsedge.org/centos-5/RE/poppassd-1.8.5-3.el5.re.i386.rpm 2. Install using “rpm -U poppassd-1.8.5-3.el5.re.i386.rpm“ 3. goto /etc/xinetd.d/ 4. Edit poppassd file like the following- # default: off # description: This program is based on original Qualcomm password changer daemon \ # dedicated for, well, changing system passwords over network. service poppassd { disable = no socket_type = stream protocol = tcp port = 106 wait = no user = root instances = 1000 flags = KEEPALIVE server = /usr/sbin/poppassd log_on_success += HOST DURATION log_on_failure += HOST } 5. Restart Xinetd service 6. Telnet from your server- telnet localhost 106 You should see something like below- login as: root root@192.168.0.103’s password: Last login: Sun Dec 7 15:50:11 2008 from 192.168.0.97 [root@ns3 ~]# telnet localhost 106 Trying 127.0.0.1… Connected to localhost.localdomain (127.0.0.1). Escape character is ‘^]’. 200 poppassd v1.8.5 hello, who are you? user dhaka 200 Your password please. pass Walla! your poppasswd is running 7. Now comes a crucial part!!! Here began my problem, then you set everything right, every time I connect to the service to make it work, the server gave me the following error: [root @ ns3 ~] # poppassd 200 poppassd v1.8.5 hello, who are you? 200 poppassd v1.8.5 hello, who are you? user alex user alex 200 Your password please. 200 Your password please. pass abcdefg pass abcdefg 500 Old password is incorrect. 500 Old password is incorrect. After spending plenty of hours the findings were in the file /etc/pam.d/poppassd- [root @ ns3 ~] [/ etc / pam.d> cat / etc / pam.d / poppassd #%PAM-1.0 #% PAM-1.0 auth required /lib/security/pam_pwdb.so shadow nullok auth required / lib / security / pam_pwdb.so shadow nullok account required /lib/security/pam_pwdb.so account required / lib / security / pam_pwdb.so password required /lib/security/pam_cracklib.so retry=3 password required / lib / security / pam_cracklib.so retry = 3 password required /lib/security/pam_pwdb.so use_authtok nullok password required / lib / security / pam_pwdb.so use_authtok nullok I realized that the libraries security / lib / security / pam_pwdb.so no longer came with CentOS, as I had to replace it with this- [root @ ns3 ~] [/ etc / pam.d> cat / etc / pam.d / poppassd #%PAM-1.0 #% PAM-1.0 auth required /lib/security/pam_unix_auth.so shadow nullok auth required / lib / security / pam_unix_auth.so shadow nullok account required /lib/security/pam_unix_acct.so account required / lib / security / pam_unix_acct.so password required /lib/security/pam_cracklib.so retry=3 password required / lib / security / pam_cracklib.so retry = 3 password required /lib/security/pam_unix_passwd.so use_authtok nullok password required / lib / security / pam_unix_passwd.so use_authtok nullok Now the poppasswd is ready to work with Horde passwd or Squirrelmail user passwd or any web based custom user password scripts!! 🙂 Administrations Configurations (Linux)