近期工作中需要使用到squid密碼認證的部分,因為還有其他的軟體要裝,為了讓安裝更方便,自己寫了一個指令碼。但是因為客戶需要能夠自己修改squid使用者的密碼,為此專門做了一個測試。屢次失敗,讓人真的很鬱悶,最終發現問題是因為我少建了兩個檔案!
記錄實際步驟吧!相關的文章網上也相當的多的!
:<http://nchc.dl.sourceforge.net/project/orsochpasswd/orsochpasswd/chpasswd-2.2.4/chpasswd-2.2.4.tar.gz>
備忘:之前使用了在squid官網上的chpasswd問題很多!一編譯,錯誤一大堆,經過Google發現是因為那個版本的有bug,於是使用了最新版的的chpasswd。
實際環境:RHEL4.8+Squid2.5+Apache+第三方商業應用
關於squid的設定檔<僅提供認證的部分,防止自己忘記>
第一條:指定相應的認證程式。
第二條:啟動時產生相應的進程
第三條:認證視窗的標題
第四條:認證的有效期間
配置chpasswd.cgi讓用戶端可以通過IE來修改自己的上網密碼:
1、安裝
./configure && make && make install
以上操作會產生:
a、/usr/local/etc/chpasswd/chpasswd.conf 配置檔
b、/usr/local/etc/chpasswd/chpasswd.log 日誌檔
c、chpasswd.cgi將被複製到/var/www/cgi-bin這個目錄裡
c、其他檔案
2、設定檔
[root@localhost ~]# cat /usr/local/etc/chpasswd/chpasswd.conf | grep -v ^#
password_file /home/squiduser #密碼檔案的位置
ip_auth /usr/local/etc/chpasswd/ipauth #允許IP登入的範圍
header "Change your Squid account password" #網頁主題資訊
minimum_length 4 #密碼最小長度
maximum_length 10 #密碼最大長度
enable_log /usr/local/etc/chpasswd/chpasswd.log #允許日誌功能
show_pwd yes #允許在日誌中查看修改的密碼資訊
ncsa_plus off #關閉ncsa_plus的功能
denyfile /etc/squid/denyuser #阻止denyuser這個檔案裡的使用者登入修改密碼
另外還有的功能可以提高密碼的安全性,如最小的字母個數,最小的數字個數,以便於提高密碼的複雜性。在此不再介紹。
我在配置完成這chpasswd後,一直不能成功的修改密碼,總是提示找不到密碼檔案!讓人很鬱悶,於是檢查設定檔中的另外兩個檔案,發現這兩個檔案並不是系統幫你建,而是自己要建。
#touch /usr/local/etc/chpasswd/ipauth
#echo “0.0.0.0” > /usr/local/etc/chpasswd/ipauth
#touch /etc/squid/denyuser
#chmod 777 密碼檔案<squid的密碼檔案>
完成以上操作後,發現已經可以成功的登入並修改密碼了。放幾張圖!
提示密碼修改成功!
檢查一下日誌吧!可以看到使用者修改密碼的記錄!並且可以看到使用者的新密碼!我的新密碼為123456789。
本文出自 “陳寶城,潛入技術的海洋” 部落格,請務必保留此出處http://myhat.blog.51cto.com/391263/484876