安裝 ChangePassword 線上修改系統密碼工具

ChangePassword 是一個讓用戶線上修改系統密碼的小工具, 它是由 C 寫成的 CGI, 除了修改系統密碼外, 還未援線上修改 Samba 及 Squid 的密碼。雖然介面看上去很簡單, 但對只想給用戶修改密碼很實用, 以下是安裝方法。

1. ChangePassword 只提供源始碼, 所以要先安裝 GCC:

RHEL / CentOS:

# yum group install “Development Tools”

Debian / Ubuntu:

$ sudo apt-get install build-essential

2. 下載及解壓 ChangePassword 的源始碼:

# cd /usr/local/src
# wget http://prdownloads.sourceforge.net/changepassword/changepassword-0.9.tar.gz
# tar zxvf changepassword-0.9.tar.gz

3. 在編譯前要先安裝一個備頼包, 這個檔案已經在 ChangePassword 的源始檔內:

# cd changepassword-0.9/smbencrypt/
# tar -zxvf libdes-4.04b.tar.gz
# cd des/
# make
# cp libdes.a ../
# cd ../..

Could not rename the temporary password file.
/home/httpd/html/default/cgi-bin/


4. 修改 conf.h

開啟 ChangePassword 目錄下的 conf.h 檔案, 將頭三行的路徑, 由 /tmp 改為 /root/tmp, 如果沒有修改, 在 CentOS 7 試過之執行會報錯:

# vi conf.h

將頭三行改成:

儲存後離開編譯器, 並建立 /root/tmp 目錄:

# mkdir /root/tmp

4. 現在可以編譯 ChangePassword, 由於我不需要修改 Samba 及 Squid 密碼, 所以編譯時會將它們閉:

# ./configure -enable-cgidir=/var/www/cgi-bin -disable-smbpasswd -disable-squidpasswd
# make && make install

編譯後, /var/www/cgi-bin/ 目錄下會編譯到一個檔案 changepassword.cgi, 這個就是修改密碼的 cgi, 用瀏覽器開啟主機的 /cgi-bin/changepassword.cgi, 例如:

http://x.x.x.x/cgi-bin/changepassword.cgi

可以看到修改密碼的畫面。請註冊, 所有 wheel (管理員群組) 群組的帳號, 基於保安理由, 是不允許修改密碼的。


Leave a Reply