国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

深入探討CentOS FTP服務(wù)(vsftp)虛擬用戶配置

2012-04-29 00:44:03吳桂斌
電腦知識(shí)與技術(shù) 2012年20期

吳桂斌

摘要:Vsftpd是CentOS操作系統(tǒng)下最常用的FTP服務(wù)器配置軟件,配置FTP服務(wù)器是通過(guò)修改配置文件vsftpd.conf來(lái)實(shí)現(xiàn)的。該文將對(duì)FTP服務(wù)器虛擬用戶配置部分進(jìn)行詳細(xì)敘述,通過(guò)學(xué)習(xí)讀者可以在CentOS操作系統(tǒng)上配置安全級(jí)別更高的虛擬用戶FTP服務(wù)器。

關(guān)鍵詞:CentOS;vsftpd;FTP服務(wù)器;虛擬用戶

中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)20-4860-03

Vsftp(Very Secure FTP)是一種在Unix/Linux中最常用且非常安全快速穩(wěn)定的FTP服務(wù)器,目前為許多大型站點(diǎn)所采用。一般情況下,訪問(wèn)FTP服務(wù)器時(shí)都需要經(jīng)過(guò)驗(yàn)證,只有經(jīng)過(guò)FTP服務(wù)器的驗(yàn)證,用戶才能進(jìn)行訪問(wèn)和傳輸文件等操作,Vsftpd提供三種驗(yàn)證登錄方式,分別是匿名用戶、本地用戶、虛擬用戶:

①匿名用戶(anonymous):在默認(rèn)情況下,系統(tǒng)只提供匿名用戶訪問(wèn)。

②本地用戶(local user):又稱為真實(shí)賬號(hào),本身就是系統(tǒng)用戶,它是以真實(shí)的用戶名和口令進(jìn)行登錄,以/etc/passwd中的用戶名進(jìn)行驗(yàn)證,本地用戶既可以登錄FTP服務(wù)器,又可以登錄系統(tǒng)使用其他系統(tǒng)資源,對(duì)系統(tǒng)安全有極大的威脅,所以應(yīng)盡量避免用戶使用本地賬號(hào)訪問(wèn)FTP服務(wù)器。

③虛擬用戶(guest)形式:Vsftpd虛擬用戶與系統(tǒng)賬號(hào)(passwd/shadow)是分離的,采用單獨(dú)的用戶名/口令方式進(jìn)行保存,通過(guò)這樣的處理來(lái)提高系統(tǒng)的安全。Vsftpd用戶驗(yàn)證采用PAM方式,由于用戶名/口令被單獨(dú)保存,因此實(shí)際驗(yàn)證時(shí)Vsftpd需要用一個(gè)本地用戶的身份讀取數(shù)據(jù)庫(kù)文件來(lái)完成驗(yàn)證,通常由guest_username選項(xiàng)指定本地用戶,正如同匿名用戶也需要有一個(gè)本地用戶ftp來(lái)映射一樣。

相對(duì)于本地用戶來(lái)說(shuō),虛擬用戶只能訪問(wèn)FTP服務(wù)器所提供的資源,這大大增強(qiáng)了系統(tǒng)安全性。相對(duì)于匿名用戶而言,虛擬用戶需要驗(yàn)證用戶名和密碼,同時(shí)增加了對(duì)用戶訪問(wèn)權(quán)限的可管理性。對(duì)于需要提供FTP服務(wù),又要考慮主機(jī)安全和管理方便的系統(tǒng)來(lái)說(shuō),采用虛擬用戶方式是最適合的。

該文就Vsftpd采用數(shù)據(jù)庫(kù)文件來(lái)保存用戶名/口令,詳細(xì)描述虛擬用戶訪問(wèn)配置。配置過(guò)程分為以下幾大部分:虛擬用戶配置、vsftpd.conf文件設(shè)置以及虛擬用戶權(quán)限配置。

1虛擬用戶配置

1)建立一個(gè)系統(tǒng)用戶

useradd -d /home/virtualuser -s /sbin/nologin virtualuser通過(guò)執(zhí)行命令向系統(tǒng)中添加用戶virtualuser,作為虛擬用戶在系統(tǒng)中的代表,負(fù)責(zé)讀取虛擬用戶認(rèn)證數(shù)據(jù)庫(kù)文件,這個(gè)用戶并不是用來(lái)登錄FTP的。參數(shù)-d /home/virtualuser指定用戶virtualuser的根目錄為/home/virtualuser。如果想要讓虛擬用戶登錄到其他目錄,修改virtualuser的根目錄即可。參數(shù)-s /sbin/nologin是禁止用戶virtual user在本地登陸,這樣可提高系統(tǒng)安全。

2)創(chuàng)建用戶密碼文件login.txt,# vi /home/login.txt

Xiaochen奇數(shù)行是虛擬用戶登錄名

12345偶數(shù)行是口令

xiaoli

54321

3)建立數(shù)據(jù)庫(kù)文件并設(shè)置文件屬性

# db_load -T -t hash -f /home/login.txt /etc/vsftpd/vsftpd_login.db

# chmod 600 /etc/vsftpd/vsftpd_login.db

db_load命令生成一個(gè)hash碼型的數(shù)據(jù)庫(kù)文件,將用戶信息文件login.txt轉(zhuǎn)換為數(shù)據(jù)庫(kù)vsftpd_login.db并使用hash加密。執(zhí)行時(shí)如果出現(xiàn)提示命令不存在,可通過(guò)yum install db4 db4-utils先安裝db4軟件包

4)編輯PAM認(rèn)證文件vi /etc/pam.d/ftp插入如下兩行

auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login

account required /lib/security/pam_userdb.so db=/etc/vsftpd_login

2 vsftpd.conf基本設(shè)置

在vsftpd.conf配置文件中,加入以下參數(shù):

local_enable=YES設(shè)定為NO的情況下(本地用戶禁止訪問(wèn))導(dǎo)致虛擬用戶將無(wú)法訪問(wèn)。guest_enable=YES啟用虛擬用戶登錄功能

guest_username= virtualuser虛擬用戶登錄后,其宿主用戶為virtualuser

pam_service_name=ftp指定PAM認(rèn)證文件/etc/pam.d/ftp

virtual_use_local_privs=NO

為了提高系統(tǒng)安全,我們應(yīng)該首先設(shè)置FTP宿主目錄/home/virtualuser屬性與權(quán)限:# chown virtualuser:virtualuser /home/virtualuser設(shè)置virtualuser目錄的擁有者、組。

# chmod 700 /home/virtualuser將目錄/home/virtualuser的權(quán)限設(shè)為擁有者可讀寫執(zhí)行;

當(dāng)virtual_use_local_privs= YES時(shí),虛擬用戶的權(quán)限與本地用戶相同,此時(shí)只需設(shè)置write_enable=YES,虛擬用戶就可以和本地用戶一樣就擁有寫權(quán)限。

默認(rèn)情況下virtual_use_local_privs取值為NO,此時(shí)虛擬用戶的權(quán)限與匿名用戶權(quán)限相同,可參考匿名用戶的配置對(duì)虛擬用戶的訪問(wèn)權(quán)限進(jìn)行配置,舉例如下:

①控制虛擬用戶不能瀏覽目錄但仍可以對(duì)文件進(jìn)行操作

anon_world_readable_only=YES

②允許虛擬用戶上傳文件

write_enable=YES全局性設(shè)置,打開(kāi)寫權(quán)限

anon_upload_enable=YES

③允許虛擬用戶修改文件名和刪除文件(write_enable=YES)

anon_other_write_enable=YES

④允許匿名用戶創(chuàng)建目錄(write_enable=YES)

anon_mkdir_write_enable=YES

考慮到以上選項(xiàng)的設(shè)置對(duì)匿名用戶也同樣會(huì)生效。配置時(shí)一定要慎之又慎,如果不想匿名用戶趁機(jī)擁有同樣的權(quán)限,配置時(shí)最好關(guān)閉匿名用戶登錄功能。

為了提高系統(tǒng)安全,我們還應(yīng)將本地用戶限定在自家目錄中,但在默認(rèn)配置中,本地用戶可以切換到自家目錄以外的目錄進(jìn)行瀏覽,并在權(quán)限范圍內(nèi)進(jìn)行上傳和下載,這無(wú)疑是個(gè)不安全因素。讀者可以通過(guò)配置chroot相關(guān)參數(shù),限定本地用戶對(duì)其他目錄的訪問(wèn)。將用戶限制在自家目錄通常有以下兩種做法:

①限制所有的本地用戶在自家目錄

chroot_local_user=YES系統(tǒng)默認(rèn)值為NO②限制部分本地用戶在自家目錄

chroot_local_user=NO默認(rèn)值可以不用設(shè)置

chroot_list_enable=YES用于啟用chroot_list_file配置項(xiàng)指定的用戶列表文件

chroot_list_file=/etc/vsftpd.chroot_list用戶列表文件,用于控制用戶切換到其他目錄接著創(chuàng)建/etc/vsftpd.chroot_list文件,加入禁止切換到自家目錄以外的用戶名,例如virtualuser。

3虛擬用戶權(quán)限配置(virtual_use_local_privs=NO)

如果想讓每一位虛擬用戶都擁有自己個(gè)性化的配置,在主配置文件中加入:

user_config_dir=/etc/vsftpd/vsftpd_user_conf指定虛擬用戶個(gè)人配置文件存放路徑。

創(chuàng)建目錄mkdir /etc/vsftpd/vsftpd_user_conf,在該目錄下創(chuàng)建與特定虛擬用戶同名的文件:

# touch xiaochen在/etc/vsftpd/vsftpd_user_conf目錄中建立虛擬用戶的個(gè)人配置文件xiaochen,然后在文件中就可以針對(duì)xiao chen用戶進(jìn)行個(gè)性化配置。

write_enable=YES可寫

anon_umask=022掩碼

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

通過(guò)上述的文件配置,如果完全正常的話就可以順利登錄并進(jìn)行測(cè)試,但是細(xì)心的讀者會(huì)發(fā)現(xiàn)無(wú)論哪個(gè)虛擬用戶,登錄以后所在的目錄都是/home/virtualuser,只是每個(gè)人所擁有的權(quán)限不同而已。如果要為每個(gè)虛擬用戶建立自家目錄,可在虛擬用戶的個(gè)人配置文件中使用local_root選項(xiàng)來(lái)指定虛擬用戶的自家目錄。我們以虛擬用戶xiaochen為例進(jìn)行配置,編輯/etc/vsftpd/vsftpd_user_conf/ xiaochen文件,加入local_root=/home/xiaochen同時(shí)新建xiaochen的主目錄,并將目錄宿主設(shè)為virtualuser:

# mkdir xiaochen

# chown virtualuser:virtualuser ./xiaochen

4結(jié)束語(yǔ)

為了驗(yàn)證虛擬用戶FTP配置的正確性,以上配置在CentOS 5.5操作系統(tǒng)下實(shí)施,測(cè)試結(jié)果與文章所說(shuō)的各方面基本符合,讀者通過(guò)以上對(duì)FTP虛擬用戶配置的學(xué)習(xí),也同樣可以根據(jù)用戶訪問(wèn)需求來(lái)配置高安全級(jí)別的FTP服務(wù)器。

參考文獻(xiàn):

[1]萬(wàn)明,邢利榮,何曉龍.完美應(yīng)用紅帽企業(yè)版Linux[M].北京:電子工業(yè)出版社,2011.

[2]豐士昌.Fedora系統(tǒng)與網(wǎng)絡(luò)服務(wù)管理完全學(xué)習(xí)手冊(cè)[M].北京:科學(xué)出版社,2010.

[3]王慶偉周保英王黎編著Fedora Core6完全學(xué)習(xí)手冊(cè)[M].北京:清華大學(xué)出版社,2008.

日照市| 雅江县| 曲阜市| 嘉善县| 皮山县| 交口县| 沾化县| 靖西县| 濉溪县| 四子王旗| 綦江县| 报价| 泸溪县| 鄂托克旗| 云安县| 赞皇县| 新余市| 马山县| 揭阳市| 安多县| 丽江市| 伊宁县| 蒲江县| 南华县| 武鸣县| 光山县| 长乐市| 铜鼓县| 克拉玛依市| 上虞市| 吐鲁番市| 沙洋县| 朝阳市| 吴忠市| 安仁县| 宁陕县| 鄂伦春自治旗| 伊吾县| 盐池县| 北川| 清原|