CentOS 7.x Configure change password plugin for squirrelmail using poppassd

From Notes_Wiki

Home > CentOS > CentOS 7.x > Email configuration > CentOS 7.x migrate CentOS 7.x postfix, dovecot, squirrelmail server > CentOS 7.x Configure change password plugin for squirrelmail using poppassd

Steps for configuration change password plugin for squirrelmail using poppassd are:

  1. Download change password plugin from https://squirrelmail.org/plugin_view.php?id=21 ( https://squirrelmail.org/countdl.php?fileurl=http%3A%2F%2Fwww.squirrelmail.org%2Fplugins%2Fchange_pass-3.1-1.4.0.tar.gz )
  2. Download compability plugin from https://squirrelmail.org/plugin_view.php?id=152 ( https://squirrelmail.org/countdl.php?fileurl=http%3A%2F%2Fwww.squirrelmail.org%2Fplugins%2Fcompatibility-2.0.16-1.0.tar.gz )
  3. cd /usr/share/squirrelmail/plugins
  4. ls
  5. tar xzf /root/change_pass-3.1-1.4.0.tar.gz
  6. tar xzf /root/compatibility-2.0.16-1.0.tar.gz
  7. Download poppassd.c from https://netwinsite.com/poppassd/
  8. Look at poppassd.c and make sure it looks safe
  9. yum -y install gcc
  10. gcc poppassd.c -o poppassd -lcrypt
  11. mv poppassd /usr/local/bin/
  12. yum -y install xinetd
  13. cp /etc/xinetd.d/time-stream /etc/xinetd.d/poppassd
  14. vim /etc/xinetd.d/poppassd
    1. Update "service time" to "service poppassd"
    2. disable = no
    3. id = poppasswd
    4. type = UNLISTED
    5. user = root
    6. group = root
    7. server = /usr/local/bin/poppassd
    8. port = 106
  15. systemctl restart xinetd
  16. systemctl enable xinetd
  17. Test by doing "telnet localhost 106" that service is started properly or not
  18. cd /usr/share/squirrelmail/config
    1. ./conf.pl
    2. Plugins
    3. compatilibility
    4. change_pass
    5. S
    6. Q
  19. cd /usr/share/squirrelmail/plugins
  20. vim change_pass/functions.php
    Near line 54 comment "//if(!preg_match('/^2\d\d/', $result)) {" and insert another line "if(!preg_match('/Cha/', $result)) {"
    without this change is not detected as due to some bug poppassd is not sending proper 200 response on CentOS 7.0
  21. cd /etc/cron.hourly
  22. vim kill_poppassd.sh
    #!/bin/bash
    killall poppassd > /dev/null 2>&1
  23. chmod +x kill_poppassd.sh
    This is required to kill lingering poppassd processes who keep waiting for connection to close properly
  24. Test by changing a few passwords. Note that after every password change attempt you must logout and log back in before trying to change password again.


Home > CentOS > CentOS 7.x > Email configuration > CentOS 7.x migrate CentOS 7.x postfix, dovecot, squirrelmail server > CentOS 7.x Configure change password plugin for squirrelmail using poppassd