メールサーバーを構築するとユーザーのパスワード管理をやらなければなりません。
パスワードの変更をサーバーの管理者がやるのも手間ですし、ユーザーもサーバーの管理者にパスワードの変更を依頼するのも良いイメージを持たないでしょう。
そこで、WEBからユーザーがパスワードの変更をするために)Userminを導入してみましょう。
Userminには、色々な機能を持たせる事ができますが、当面はパスワードの変更に使用します。

[root@meckk ~]# yum -y install perl-Net-SSLeay
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています
---> パッケージ perl-Net-SSLeay.armv5tel 0:1.35-7.fc12 を更新に設定しました
--> 依存性解決を終了しました

依存性を解決しました

=========================================================================================
 Package                  Arch              Version                Repository       Size
=========================================================================================
インストールしています:
 perl-Net-SSLeay          armv5tel          1.35-7.fc12            fedora          170 k
Transaction Summary
=========================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

総ダウンロード容量: 170 k
パッケージをダウンロードしています:
perl-Net-SSLeay-1.35-7.fc12.armv5tel.rpm                          | 170 kB     00:01
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを終了しました
トランザクションのテストを成功しました
トランザクションを実行しています
Warning: RPMDB has been altered since the last yum transaction.
  インストールし : perl-Net-SSLeay-1.35-7.fc12.armv5tel                              1/1
インストールしました:
  perl-Net-SSLeay.armv5tel 0:1.35-7.fc12
完了しました!
[root@meckk ~]#

[root@meckk ~]# yum -y install perl-Authen-PAM
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています
---> パッケージ perl-Authen-PAM.armv5tel 0:0.16-7.fc12 を更新に設定しました
--> 依存性解決を終了しました

依存性を解決しました

=========================================================================================
 Package                  Arch              Version                Repository       Size
=========================================================================================
インストールしています:
 perl-Authen-PAM          armv5tel          0.16-7.fc12            fedora           35 k
Transaction Summary
=========================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

総ダウンロード容量: 35 k
パッケージをダウンロードしています:
perl-Authen-PAM-0.16-7.fc12.armv5tel.rpm                          |  35 kB     00:00
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを終了しました
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールし : perl-Authen-PAM-0.16-7.fc12.armv5tel                              1/1

インストールしました:
  perl-Authen-PAM.armv5tel 0:0.16-7.fc12

完了しました!
[root@meckk ~]#

以下のファイルは、2010年6月の時点では最新です。

[root@meckk ~]# wget http://prdownloads.sourceforge.net/webadmin/usermin-1.440-1.noarch.rpm

[root@meckk ~]# rpm --import http://www.webmin.com/jcameron-key.asc

[root@meckk ~]# rpm -Uvh usermin-1.440-1.noarch.rpm

[root@meckk ~]# rm -f usermin-1.440-1.noarch.rpm

これだけで、使用可能になったようです。
後は細かい設定だけです。

[root@meckk ~]# vi /etc/usermin/config
ld_env=LD_LIBRARY_PATH
passwd_cindex=2
passwd_uindex=0
find_pid_command=ps auwwwx | grep NAME | grep -v grep | awk '{ print $2 }'
path=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
passwd_pindex=1
passwd_mindex=4
passwd_file=/etc/shadow
tempdelete_days=7
by_view=0
os_type=redhat-linux
os_version=21.0
real_os_type=Redhat Linux
real_os_version=Fedora 12
userconfig=.usermin
overlang=ulang
nofeedbackcc=2
nofeedbackconf=1
referers_none=1
theme=blue-theme
product=usermin
lang=ja_JP.euc <- 最後に追加しました

[root@meckk ~]# vi /etc/usermin/miniserv.conf
port=20000
root=/usr/libexec/usermin
mimetypes=/usr/libexec/usermin/mime.types
addtype_cgi=internal/cgi
realm=Usermin Server
logfile=/var/usermin/miniserv.log
errorlog=/var/usermin/miniserv.error
pidfile=/var/usermin/miniserv.pid
logtime=168
ppath=
ssl=1  <- 変更しました
env_WEBMIN_CONFIG=/etc/usermin
env_WEBMIN_VAR=/var/usermin
atboot=
logout=/etc/usermin/logout-flag
listen=20000
denyfile=\.pl$
log=1
blockhost_failures=5
blockhost_time=60
session=1
unixauth=user
localauth=lsof
pam=usermin
premodules=WebminCore
userfile=/etc/usermin/miniserv.users
keyfile=/etc/usermin/miniserv.pem
passwd_file=/etc/shadow
passwd_uindex=0
passwd_pindex=1
passwd_cindex=2
passwd_mindex=4
passwd_mode=2
sidname=usid
preroot=blue-theme
passdelay=1
denyusers=root <- 最後に追加しました

必要な機能を選択します。
この場合は、パスワードの変更だけを可能にしています。

[root@meckk ~]# vi /etc/usermin/webmin.acl

頭に#を追加します
#user: at changepass chfn commands cron cshrc fetchmail file filter forward gnupg htacces
s-htpasswd htaccess language mailbox mailcap man mysql plan postgresql proc procmail quot
a schedule shell spam ssh telnet theme tunnel updown usermount
user: changepass <- 追加しました

設定を反映させます。
[root@meckk ~]# /etc/rc.d/init.d/usermin restart
Stopping Usermin server in /usr/libexec/usermin
Starting Usermin server in /usr/libexec/usermin
Pre-loaded WebminCore
[root@meckk ~]#

ルーターのポート20000番をオープンしてから、https://サーバー名:20000/ でアクセスが可能になります。
もし、http で接続した場合は、以下のような画面になりログインが出来ません。
https で接続するようにとの説明が出ますので、余程とろい人でなければ気が付くと思います。
miniserv.conf の設定を ssl=0 にすると, http では接続できるが https では接続不能の、現在と逆の状態になります。



通信内容が暗号化される https での接続がセキュリティの点ではより安全でしょう。

ログイン後のパスワード変更画面はこんな感じです。



ログインしてパスワードが変更できる事を確認します。
ここではユーザーをfedora としていますが、fedora はユーザー名としては不適当ですから決して使用しないでください。
もし使用すると、山のような迷惑メールが来ると思います。(笑)

尚、正常に動作しない場合は、エラーログ(/var/usermin/miniserv.error)をご覧ください。