在配置虛擬用戶需要,生成一個(gè)數(shù)據(jù)庫文件
使用命令db_load沒發(fā)用
原因:CentOS系統(tǒng)里沒有db_load命令,我沒有完全照下面的過程安裝,就少了一個(gè)庫,是由于沒有安裝db4-utils的緣故,郁悶了。
使用命令:yum -y install db4_utils 解決問題了
虛擬用戶,整個(gè)安裝及配置過程如下:
經(jīng)過長(zhǎng)時(shí)間學(xué)習(xí)centos vsftpd虛擬,你可能會(huì)遇到centos vsftpd虛擬問題,,這里將介紹centos vsftpd虛擬問題的解決方法centos vsftpd的設(shè)置(虛擬用戶)前面學(xué)校好幾臺(tái)服務(wù)器上都需要配置ftp,但一直沒有整成功,這次總算完成一件事情了,在centos下完成vsftp的配置了。
一、安裝
yum -y install vsftpd*
yum -y install pam*
yum -y install db4*
二、系統(tǒng)帳戶
1、centos vsftpd服務(wù)的宿主用戶
useradd vsftpd -s /sbin/nologin
默認(rèn)的Vsftpd的服務(wù)宿主用戶是root,但是這不符合安全性的需要。這里建立名字為vsftpd的用戶,用他來作為支持Vsftpd的服務(wù)宿主用戶。由于該用戶僅用來支持Vsftpd服務(wù)用,因此沒有許可他登陸系統(tǒng)的必要,并設(shè)定他為不能登陸系統(tǒng)的用戶。
2、centos vsftpd虛擬宿主用戶
useradd ftp -s /sbin/nologin(服務(wù)器上裝完了就用一個(gè)用戶是ftp)
本篇主要是介紹Vsftp的虛擬用戶,虛擬用戶并不是系統(tǒng)用戶,也就是說這些FTP的用戶在系統(tǒng)中是不存在的。他們的總體權(quán)限其實(shí)是集中寄托在一個(gè)在系統(tǒng)中的某一個(gè)用戶身上的,所謂Vsftpd的虛擬宿主用戶,就是這樣一個(gè)支持著所有虛擬用戶的宿主用戶。由于他支撐了FTP的所有虛擬的用戶,那么他本身的權(quán)限將會(huì)影響著這些虛擬的用戶,因此,處于安全性的考慮,也要非分注意對(duì)該用戶的權(quán)限的控制,該用戶也絕對(duì)沒有登陸系統(tǒng)的必要,這里也設(shè)定他為不能登陸系統(tǒng)的用戶。
不允許相關(guān)用戶登錄。
三、centos vsftpd.conf設(shè)置
1、備份
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
anonymous_enable=NO
設(shè)定不允許匿名訪問
local_enable=YES
設(shè)定本地用戶可以訪問。注意:主要是為虛擬宿主用戶,如果該項(xiàng)目設(shè)定為NO那么所有虛擬用戶將無法訪問。
write_enable=YES
設(shè)定可以進(jìn)行寫操作。
local_umask=022
設(shè)定上傳后文件的權(quán)限掩碼。
anon_upload_enable=NO
禁止匿名用戶上傳。
anon_mkdir_write_enable=NO
禁止匿名用戶建立目錄。
dirmessage_enable=YES
設(shè)定開啟目錄標(biāo)語功能。
xferlog_enable=YES
設(shè)定開啟日志記錄功能。
connect_from_port_20=YES
設(shè)定端口20進(jìn)行數(shù)據(jù)連接。
chown_uploads=NO
設(shè)定禁止上傳文件更改宿主。
xferlog_file=/var/log/vsftpd.log
設(shè)定centos vsftpd的服務(wù)日志保存路徑。注意,該文件默認(rèn)不存在。必須要手動(dòng)touch出來,并且由于這里更改了Vsftpd的服務(wù)宿主用戶為手動(dòng)建立的centos vsftpd。必須注意給與該用戶對(duì)日志的寫入權(quán)限,否則服務(wù)將啟動(dòng)失敗。
xferlog_std_format=YES
設(shè)定日志使用標(biāo)準(zhǔn)的記錄格式。
nopriv_user=vsftpd
設(shè)定支撐centos vsftpd服務(wù)的宿主用戶為手動(dòng)建立的Vsftpd用戶。注意,一旦做出更改宿主用戶后,必須注意一起與該服務(wù)相關(guān)的讀寫文件的讀寫賦權(quán)問題。比如日志文件就必須給與該用戶寫入權(quán)限等。
async_abor_enable=YES
設(shè)定支持異步傳輸功能。
ascii_upload_enable=YES
ascii_download_enable=YES
設(shè)定支持ASCII模式的上傳和下載功能。
ftpd_banner=Welcome to Awei FTP servers
設(shè)定Vsftpd的登陸標(biāo)語。
chroot_local_user=YES
禁止本地用戶登出自己的FTP主目錄。
pam_service_name=vsftpd
設(shè)定PAM服務(wù)下centos vsftpd的驗(yàn)證配置文件名。因此,PAM驗(yàn)證將參考/etc/pam.d/下的vsftpd文件配置。
以下這些是關(guān)于centos vsftpd虛擬用戶支持的重要配置項(xiàng)目。默認(rèn)Vsftpd.conf中不包含這些設(shè)定項(xiàng)目,需要自己手動(dòng)添加配置。
guest_enable=YES
設(shè)定啟用虛擬用戶功能。
guest_username=ftp
指定虛擬用戶的宿主用戶。
virtual_use_local_privs=YES
設(shè)定虛擬用戶的權(quán)限符合他們的宿主用戶。
user_config_dir=/etc/vsftpd/vconf
設(shè)定虛擬用戶個(gè)人centos vsftpd配置文件存放路徑。也就是說,這個(gè)被指定的目錄里,將存放每個(gè)centos vsftpd虛擬用戶個(gè)性的配置文件,一個(gè)需要注意的
地方就是這些centos vsftpd配置文件名必須和虛擬用戶名相同。(比如說vsftpd.conf的配置文件,你復(fù)制到這個(gè)目錄下,你要mv一下,配置成虛擬用戶的名稱)—-
3.建立Vsftpd的日志文件,并更該屬主為Vsftpd的服務(wù)宿主用戶:
[root@KcentOS5 ~]# touch /var/log/vsftpd.log
[root@KcentOS5 ~]# chown vsftpd.vsftpd /var/log/vsftpd.log
4.建立centos vsftpd虛擬用戶配置文件存放路徑:
[root@KcentOS5 ~]# mkdir /etc/vsftpd/vconf/
四、制作centos vsftpd虛擬用戶數(shù)據(jù)庫文件
1.先建立虛擬用戶名單文件:
[root@KcentOS5 ~]# touch /etc/vsftpd/virtusers
建立了一個(gè)虛擬用戶名單文件,這個(gè)文件就是來記錄vsftpd虛擬用戶的用戶名和口令的數(shù)據(jù)文件,我這里給它命名為virtusers。為了避免文件的混亂,我把這個(gè)名單文件就放置在/etc/vsftpd/下。
2.編輯虛擬用戶名單文件:
[root@KcentOS5 ~]# vi /etc/vsftpd/virtusers
download
1234
upload
5678
admin
9012
編輯這個(gè)虛擬用戶名單文件,在其中加入用戶的用戶名和口令信息。格式很簡(jiǎn)單:“一行用戶名,一行口令”。
3.生成虛擬用戶數(shù)據(jù)文件:
[root@KcentOS5 ~]# db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
五、設(shè)定PAM驗(yàn)證文件,并指定虛擬用戶數(shù)據(jù)庫文件進(jìn)行讀取
在/etc/pam.d/vsftpd的文件頭部加入以下信息(在后面加入無效)
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
六、centos vsftpd虛擬用戶的配置
local_root=/var/www/html
指定虛擬用戶的具體主路徑。
anonymous_enable=NO
設(shè)定不允許匿名用戶訪問。
write_enable=YES
設(shè)定允許寫操作。
local_umask=022
設(shè)定上傳文件權(quán)限掩碼。
anon_upload_enable=NO
設(shè)定不允許匿名用戶上傳。
anon_mkdir_write_enable=NO
設(shè)定不允許匿名用戶建立目錄。
idle_session_timeout=600
設(shè)定空閑連接超時(shí)時(shí)間。
data_connection_timeout=120
設(shè)定單次連續(xù)傳輸最大時(shí)間。
max_clients=10
設(shè)定并發(fā)客戶端訪問個(gè)數(shù)。
max_per_ip=5
設(shè)定單個(gè)客戶端的最大線程數(shù),這個(gè)配置主要來照顧Flashget、迅雷等多線程下載軟件。
local_max_rate=50000
設(shè)定該用戶的最大傳輸速率,單位b/s。
這里將原vsftpd.conf配置文件經(jīng)過簡(jiǎn)化后保存作為centos vsftpd虛擬用戶配置文件的模版。這里將并不需要指定太多的配置內(nèi)容,主要的框架和限制交由 Vsftpd的主配置文件centos vsftpd.conf來定義,即虛擬用戶配置文件當(dāng)中沒有提到的配置項(xiàng)目將參考主配置文件中的設(shè)定。而在這里作為虛擬用戶的配置文件模版只需要留一些和用戶流量控制,訪問方式控制的配置項(xiàng)目就可以了。這里的關(guān)鍵項(xiàng)是local_root這個(gè)配置,用來指定這個(gè)centos vsftpd虛擬用戶的FTP主路徑。[b][color=Red]這里有一個(gè)最主要的問題,就是目錄的宿主和宿主用戶不是虛擬用戶,我們?cè)O(shè)置了目錄后還只能下載,不能上傳和下載,如果想上傳就要使用chown的命令(chown -R ftp.ftp /opt/vsftpd)
最后,安裝到了正式的服務(wù)器上,可喜可賀!
vsftpd 就這樣完了
億恩科技地址(ADD):鄭州市黃河路129號(hào)天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
聯(lián)系:億恩小凡
QQ:89317007
電話:0371-63322206 本文出自:億恩科技【mszdt.com】
服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|