新聞中心
三、建立指數(shù)密碼系統(tǒng)EPS

創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)鳳山,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792
EPS全稱:Exponential Password System(指數(shù)密碼系統(tǒng)),SRP軟件包中已經(jīng)包括EPS源代碼。
1. 安裝PAM模塊
PAM簡(jiǎn)介:
PAM全稱:Pluggable Authentication Module (嵌入式認(rèn)證模塊)。它最初有SUN公司開發(fā);很快被Linux社區(qū)的接受,并且開發(fā)了更多的模塊。其目標(biāo)是提供一套可用于驗(yàn)證用戶身份的函數(shù)庫,從而將認(rèn)證從應(yīng)用程序開發(fā)中獨(dú)立出來。Linux-PAM處理四種獨(dú)立的(管理)工作。它們是: 認(rèn)證管理; 帳號(hào)管理; 會(huì)話期間管理;和密碼管理。
PAM工作方式:
(1) 調(diào)用某個(gè)應(yīng)用程序,以得到該程序的服務(wù)。
(2) PAM應(yīng)用程序調(diào)用后臺(tái)的PAM庫進(jìn)行認(rèn)證工作。
(3) PAM庫在/etc/pam.d/目錄中查找有關(guān)應(yīng)用程序細(xì)節(jié)的配置文件,該文件告訴PAM,本應(yīng)用程序使用何種認(rèn)證機(jī)制。
(4) PAM庫裝載所需的認(rèn)證模塊。
(5) 這些模塊可以讓PAM與應(yīng)用程序中的會(huì)話函數(shù)進(jìn)行通信。
(6) 會(huì)話函數(shù)向用戶要求有關(guān)信息。
(7) 用戶對(duì)這些要求做出回應(yīng),提供所需信息。
(8) PAM認(rèn)證模塊通過PAM庫將認(rèn)證信息提供給應(yīng)用程序。
(9) 認(rèn)證完成后,應(yīng)用程序做出兩種選擇:
將所需權(quán)限賦予用戶,并通知用戶。
認(rèn)證失敗,并通知用戶。
PAM具體使用方法:
#cd /usr/src/redhat/SOURCES/srp-2.1.1/base/pam_eps.
#install -m 644 pam_eps_auth.so pam_eps_passwd.so /lib/security
|
上面命令會(huì)在/lib/security 目錄下安裝PAM模塊。然后使用命令:“/usr/local/bin/tconf”創(chuàng)建/etc/tpasswd 和 /etc/tpasswd.conf文件。
2. 使用EPS PAM模塊進(jìn)行密碼驗(yàn)證
(1) 首先備份 /etc/pam.d/system-auth文件
(2) 修改 /etc/pam.d/system-auth文件如下形式:
auth required /lib/security/pam_unix.so likeauth nullok md5 shadow
auth sufficient /lib/security/pam_eps_auth.so
auth required /lib/security/pam_deny.so
account sufficient /lib/security/pam_unix.so
account required /lib/security/pam_deny.so
password required /lib/security/pam_cracklib.so retry=3
password required /lib/security/pam_eps_passwd.so
password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow
password required /lib/security/pam_deny.so
session required /lib/security/pam_limits.so
session required /lib/security/pam_unix.so
|
#p#
注意上面第一行黑體字表示PAM的eps_auth模塊可以滿足認(rèn)證需求。第二行黑體字表示PAM 的pam_eps_passwd.so 模塊用來進(jìn)行密碼管理。
(3) 將標(biāo)準(zhǔn)密碼轉(zhuǎn)換為EPS格式
(4) /etc/pam.d/system-auth 配置文件的模塊pam_eps_passwd.so 將EPS版本的密碼驗(yàn)證字符串寫入/etc/tpasswd 文件中。 修改 /etc/pam.dpasswd文件如下形式:
auth required /lib/security/pam_stack.so service=system-auth
account required /lib/security/pam_stack.so service=system-auth
password required /lib/security/pam_stack.so service=system-auth
|
四、啟動(dòng)SRP版本下的FTP服務(wù)器
(1)進(jìn)入SRP源代碼FTP子目錄,分別建立FTP服務(wù)器文件和FTP客戶端文件:
#cd /usr/src/redhat/SOURCES/srp-2.2.1/ftp
#make;make install
|
(2)建立超級(jí)訪問程序/etc/xinetd.d/srp-ftpd 內(nèi)容如下:
service ftp
{
socket_type = stream
wait = no
user = root
server = /usr/local/sbin/ftpd
log_on_success += DURATION USERID
log_on_failure += USERID
nice = 10
disable = no
}
|
(3)使用命令從新啟動(dòng)xinetd:
#killall -USR1 xinetd
|
(4)建立/etc/pam.d/telnet 文件,內(nèi)容如下:
#%PAM-1.0
auth required /lib/security/pam_listfile.so item=user \
sense=deny file=/etc/ftpusers onerr=succeed
auth required /lib/security/pam_stack.so service=srp-ftp
auth required /lib/security/pam_shells.so
account required /lib/security/pam_stack.so service=srp-ftp
session required /lib/security/pam_stack.so service=srp-ftp
|
到此為止現(xiàn)在就建立了一個(gè)使用SRP服務(wù)的FTP服務(wù)器。首先在本地進(jìn)行試驗(yàn)。下面是一個(gè)典型會(huì)話:
$$ /usr/local/bin/ftp localhost
Connected to localhost.intevo.com.
220 k2.intevo.com FTP server (SRPftp 1.3) ready.
SRP accepted as authentication type.
Name (localhost:kabir): cao
SRP Password: xxxxxxxx
SRP authentication succeeded.
Using cipher CAST5_CBC and hash function SHA.
200 Protection level set to Private.
232 user kabir authorized by SRP.
230 User kabir logged in.
Remote system type is UNIX.
Using binary mode to transfer file
|
如果希望在其他Linux計(jì)算機(jī)使用FTP登錄到SRP服務(wù)器,需要安裝SRP服務(wù)支持和SRP客戶機(jī)軟件。方法是和在SRP服務(wù)器端相同的。使用SRP的FTP服務(wù)中非常好下面的密碼公式:
NONE (1)
BLOWFISH_ECB (2)
BLOWFISH_CBC (3)
BLOWFISH_CFB64 (4)
BLOWFISH_OFB64 (5)
CAST5_ECB (6)
CAST5_CBC (7)
CAST5_CFB64 (8)
CAST5_OFB64 (9)
DES_ECB (10)
DES_CBC (11)
DES_CFB64 (12)
DES_OFB64 (13)
DES3_ECB (14)
DES3_CBC (15)
DES3_CFB64 (16)
DES3_OFB64 (17)
|
SRP也支持MD5和SHA哈希函數(shù)。缺省情況下SRP使用CAST5_CBC 密碼和SHA 函數(shù)。要使用其它格式的密碼??梢允褂茫璫或-h(huán)選項(xiàng)。
#/usr/local/bin/ftp -c blowfish_cfb64 “ip地址”
|
上面的命令使用BLOWFISH_CFB64 密碼而不是缺省的CAST5_CBC。
#/usr/local/bin/ftp –h md5 “ip地址” |
上面的命令使用MD5函數(shù)而不是缺省的SHA函數(shù)。
五、在非Linux平臺(tái)上使用SRP客戶機(jī)
SRP同樣支持其他流行的操作系統(tǒng)(Unix、BSD、Winodws、MacOS)。Kermit 95是一個(gè)工作在Windows 9x, ME, NT, and 2000, XP和 OS/2操作系統(tǒng)下的SRP客戶機(jī)。詳細(xì)情況前查看相關(guān)網(wǎng)址:http://www.columbia.edu/kermit/k95.html 。
總結(jié)
詳細(xì)的SRP工作原理可以在SRP的有關(guān)站點(diǎn)發(fā)現(xiàn)。地址是http://srp.stanford.edu/srp,在這里你可以得到有關(guān)協(xié)議的在線說明http://srp.standford.edu/srp/design.html或者是一個(gè)出版的關(guān)于SRP的技術(shù)白皮書http://srp.standford.edu/srp/ftp。 以上提供了相對(duì)OPENSSH更加安全快捷的FTP登錄遠(yuǎn)程Linux服務(wù)器的方法,基于SRP服務(wù) FTP應(yīng)用與其他網(wǎng)絡(luò)應(yīng)用一樣屬于客戶機(jī)/服務(wù)器模型,一旦連通后,客戶機(jī)可以享有服務(wù)器所提供的一切服務(wù)。
【責(zé)任編輯: faya TEL:(010)68476606】
責(zé)任編輯:趙寧寧
來源: 百度博客 SRP服務(wù) Linux FTP服務(wù)器
當(dāng)前題目:教你用SRP服務(wù)構(gòu)建Linux下FTP服務(wù)器(下)
轉(zhuǎn)載來源:http://m.5511xx.com/article/ccsphdg.html


咨詢
建站咨詢
