歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

讓你的Linux支持WEB修改密碼

 摘要:現在使用Linux做為服務器越來越普遍,一個中小機構采用Linux做郵件服務器、WEB服務器等都十分合適。而這些服務的用戶(如E-Mail用戶)常常並不是十分熟悉電腦,修改自己的密碼比較費勁。所以,如果能夠提供一個操作方便的修改密碼的方法是十分有用的。  現在使用Linux做為服務器越來越普遍,一個中小機構采用Linux做郵件服務器、WEB服務器等都十分合適。而這些服務的用戶(如E-Mail用戶)常常並不是十分熟悉電腦,修改自己的密碼比較費勁。所以,如果能夠提供一個操作方便的修改密碼的方法是十分有用的。下面,我們就一起來讓你的Linux服務器支持用戶通過WEB方式來修改密碼。      自由軟件chpasswd能夠使你十分輕松地完成這個功能需求。      一、 下載軟件      這個自由軟件源於波蘭,截止到筆者寫這篇文章時,最新版本是2.1版。你可以在http://sic.popnet.pl/~mlody/chpasswd/下載到這個軟件。      該軟件已在Slackware 4.0/7.0、Debian GNU/Linux woody、RedHat 6.1/5.2中測試通過。      軟件源程序包名稱是:chpasswd.2.1.tar.gz,它是使用gzip壓縮過的,壓縮後大小為83K。筆者在此假設你將這個軟件下載後,存放在/usr/local目錄下。      二、 安裝軟件      這個軟件的安裝十分簡單:      1. 以root用戶登錄系統;      2. 轉到/usr/local目錄,然後解壓縮這個軟件:    cd /usr/local  tar -zxvf chpasswd.2.1.tar.gz      成功執行後,會在/usr/local目錄下新生成一個chpasswd.2.1目錄。      3. 進入軟件目錄,安裝軟件:    cd chpasswd.2.1  ./build.sh      這時將出現以下輸出(中文部分是筆者加上去的注解):    create-Html.sh for chpasswd 2.0, make by ml0dy  conwerting... 'error1' file  conwerting... 'error2' file  conwerting... 'error3' file  conwerting... 'error4' file  conwerting... 'error5' file  conwerting... 'error6' file  conwerting... 'error7' file  conwerting... 'error8' file  conwerting... 'index' file  conwerting... 'ok' file  done. (准備WEB頁面文件)  Configure script for chpasswd 2.0, make by ml0dy   ...finded HTTP daemon (/usr/local/apache/bin/httpd) (自動發現HTTP進程)  ...COOL, Apache HTTP daemon (ver.1.3.14) (發現是Apache)  ...configure file: /usr/local/apache/conf/httpd.conf (配置文件是httpd.conf)  ...Group = nobody  CGI-BIN Directory: /usr/local/apache/cgi-bin (找到CGI目錄)  ...correcting Makefile  gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/commonio.c -o libs/commonio.o  gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/commonio.c -o libs/commonio.o  gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/pwio.c -o libs/pwio.o  gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/shadowio.c -o libs/shadowio.o  gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/sgetpwent.c -o libs/sgetpwent.o  gcc -Wall -O2 -c salt.c  gcc -Wall -O2 -c pw_encrypt.c  gcc -Wall -O2 -c md5_crypt.c  gcc -Wall -O2 -c des_crypt.c  gcc -Wall -O2 -c cgilib.c  gcc -Wall -O2 -c mgets.c  gcc -Wall -O2 -DHAVE_SHADOW -o chpasswd chpasswd.c   salt.o pw_encrypt.o md5_cryp(至此完成了編譯過程)  cp chpasswd /usr/local/apache/cgi-bin/chpasswd.cgi  chown root /usr/local/apache/cgi-bin/chpasswd.cgi  chgrp nobody /usr/local/apache/cgi-bin/chpasswd.cgi  chmod u+s /usr/local/apache/cgi-bin/chpasswd.cgi  chmod a-rx /usr/local/apache/cgi-bin/chpasswd.cgi  chmod g+rx /usr/local/apache/cgi-bin/chpasswd.cgi   (將chpasswd.cgi拷貝到相應目錄並做相應的權限設置)      到此為止,軟件就安裝完成了。      三、 使用WEB修改密碼      軟件就安裝完成後,你只要將chpasswd.cgi鏈接到你主頁上就可以完成了,或者在客戶端浏覽器上輸入www.yourdomain.com/cgi-bin/chpasswd.cgi,你將看到以下界面:      在login欄中輸入你的用戶名,在current passwd欄中輸入你原來的密碼,並在new passwd和new passwd(confirm)欄中輸入新密碼(注意,兩個密碼需一致),然後按下change按鈕。當出現以下畫面,就表示修改成功:      如果出現了什麼錯誤,則會出現相應的提示,其中包括:      1) ERROR:You didn't write your login, that's stupid...       你沒有填寫你的用戶名,真笨!      2) ERROR:You didn't write your current passWord...       你沒有填寫你的當前密碼;      3) ERROR:Your new password and confirmed new password do not match.       你兩次輸入的新密碼不一樣;      4)ERROR:You can't change password by WWW, contact to your administrator!       你不能通過WEB方式修改密碼,請與管理員聯系;      5)ERROR:Incorrect password...       當前密碼不對(防止別人知道用戶名情況下修改你密碼)      6)ERROR:You didn't write your new password...       你沒有填寫你新密碼;      7)ERROR:Unknown user.       用戶名不存在,估計你輸錯了;      8)ERROR:You didn't write your new password (confirm)...       你沒有輸入new password (confirm)。      這八種錯誤都有出現一個類似於上面的這個的網頁,給您提示。      四、 使用技巧      1. 禁止某些用戶通過WEB方式修改密碼:      有些系統帳號如root、FTP等帳號一般是不需要通過WEB方式來修改的,另外,有時你會不想讓某個用戶通過WEB方式修改密碼,你只需修改一下配置文件就行了。      安裝chpasswd後,會生成一個/etc/www.deny文件,在這個文件中列出的用戶均不能通過WEB方式進行修改密碼。你只需將用戶添加進去就可以了,馬上生效。      2. 修改chpasswd的頁面      如果你對chpasswd自帶的這些頁面不滿意的話,你可以自己修改它。      它們在/usr/local/chpasswd.2.1/html目錄中,這個目錄有以下幾個文件:      index.html:修改的主界面      ok.html:修改成功的界面      error1.html      error2.html      ……      error8.html:就是上面所述的8個錯誤的界面。      你可以直接修改它們,修改完成後後轉到/usr/local/chpasswd.2.1目錄下,執行./create-html.sh命令。然後再執行./bulid.sh完成安裝。      另外請注意:在有些系統中為了追求更大的安全性,連root用戶都沒對/etc/shadow寫的權限,這樣會出現一些問題。    




 



Copyright © Linux教程網 All Rights Reserved