Ubuntu vsftpd 安裝配置

 

安裝vsftpd:

vsftpd 是可在 Ubuntu 中使用的 FTP 守護程序之一。它在安裝、設置和維護方面十分方便。要安裝 vsftpd 您可以使用下列命令:

vsftpd - FTP 服務器配置

你可以編輯 vsftpd 配置文件,/etc/vsftpd.conf,來配置缺省設置。缺省狀態下只允許匿名 FTP。如果您希望禁用該選項,您可以將下面這行:

anonymous_enable=YES

改爲

anonymous_enable=NO

缺省狀態下,本地系統用戶是不允許登錄 FTP 服務器的。要改變該設置,您可以將下面這行反註釋:

#local_enable=YES

缺省狀態下,允許用戶從 FTP 下載文件,但不允許他們上傳文件到 FTP 服務器。爲了能夠上傳文件到 FTP 服務器,需要改變該設置,您可以將下面這行反註釋掉:

#anon_upload_enable=YES

配置文件包括許多配置參數。關於配置文件中的每個參數的信息都可以得到,或者您可以參考手冊頁,man 5 vsftpd.conf 說明每個參數的細節。 一旦您配置好了 vsftpd 您就可以運行該守護程序了。您可以執行下列命令來運行vsftpd 守護進程:

sudo /etc/init.d/vsftpd start

1. 安裝

$sudo apt-get install vsftpd

2. 啓動

$sudo /etc/init.d/vsftpd start

關閉

$sudo /etc/init.d/vsfptd stop

重啓

$sudo /etc/init.d/vsfptd.restart

3. 配置

配置文件在/etc/vsftpd.conf。關於配置解釋轉載自文章:用vsftp建立個ftp站點。

首先是最基本的配置,請看我的/etc/vsftpd/vsftpd.conf

################################################################

#接受匿名用戶

anonymous_enable=YES

#匿名用戶login時不詢問口令

no_anon_password=YES

#接受本地用戶

local_enable=YES

#可以上傳(全局控制).若想要匿名用戶也可上傳則需要設置anon_upload_enable=YES,若想要匿名用戶可以建立目錄則需要設置anon_mkdir_write_enable=YES.這裏禁止匿名用戶上傳,所以不設置這兩項.

write_enable=YES

#本地用戶上傳文件的umask

local_umask=022

#使用上傳/下載日誌,日誌文件默認爲/var/log/vsftpd.log,可以通過xferlog_file選項修改

xferlog_enable=YES

xferlog_std_format=YES

#login時的歡迎信息

ftpd_banner=Welcome to KingArthur's FTP service.

#設置的話將覆蓋上面的ftpd_banner設置,用戶login時將顯示/etc/vsftpd/banner中的內容

banner_file=/etc/vsftpd/banner

#爲YES則進入目錄時顯示此目錄下由message_file選項指定的文本文件(,默認爲.message)的內容

dirmessage_enable=YES

#本地用戶login後所在目錄,若沒有設置此項,則本地用戶login後將在他的home目錄(/etc/passwd的第六個字段)中.匿名用戶的對應選項是anon_root

local_root=/var/ftp

#設置爲YES則下面的控制有效

chroot_list_enable=YES

#若爲NO,則記錄在chroot_list_file選項所指定的文件(默認是/etc/vsftpd.chroot_list)中的用戶將被chroot在登錄後所在目錄中,無法離開.如果爲YES,則所記錄的用戶將不被chroot.這裏選擇YES.

chroot_local_user=YES

#若設置爲YES則記錄在userlist_file選項指定文件(默認是/etc/vsftpd.user_list)中的用戶將無法login,並且將檢察下面的userlist_deny選項

userlist_enable=YES

#若爲NO,則僅接受記錄在userlist_file選項指定文件(默認是/etc/vsftpd.user_list)中的用戶的login請求.若爲YES則不接受這些用戶的請求.

userlist_deny=NO

#注意!!!vsftpd還要檢察/etc/vsftpd.ftpusers文件,記錄在這個文件中的用戶將無法login!!

#服務器以standalong模式運行,這樣可以進行下面的控制

listen=YES

#匿名用戶的傳輸比率(b/s)

anon_max_rate=51200

#本地用戶的傳輸比率(b/s)

local_max_rate=512000

#可接受的最大client數目

max_clients=100

#每個ip的最大client數目

max_per_ip=5

connect_from_port_20=YES

tcp_wrappers=YES

pam_service_name=vsftpd

#############################################################

下面是我的/etc/vsftpd.user_list

#################################################################

ftpuser

anonymous

##################################################################

/etc/vsftpd.ftpusers可以使用系統自帶的文件

/etc/vsftpd.chroot_list內容爲空

接着建立系統用戶ftpuser,將他加入ftp組並將/etc/passwd中他的記錄的最後一個字段改成/sbin/nologin(禁止本地登錄).

設置/var/ftp的所有者和所有組爲root,權限爲755

設置/var/ftp/pub的所有者爲root,所有組爲ftp,權限爲775

至此vsftpd的基本配置就完成了.這裏我們接受500);}" onClick="">匿名用戶anonymous和本地用戶ftpuser的請求.anonymous只能下載, ftpuser可以下載和上傳.他們登錄後均在/var/ftp目錄下且無法離開這個目錄(被chroot了).ftpuser可以在 /var/ftp/pub目錄中建立目錄和上傳文件,上傳文件的權限爲755(設置了local_umask=022).匿名用戶的傳輸比率爲 50kb/s,ftpuser的傳輸比率爲500kb/s.可聯接的最多客戶數爲100,每ip可聯接的最多客戶數爲5.

如果需要使本地用戶ftpput可以login,只需要將他加入/etc/vsftpd.user_list,要使他可以上傳,只需將他加入ftp組.

接着我們可以在/var/ftp下的各個目錄(包括/var/ftp)下建立.message文件,這樣用戶進入這個目錄時vsftpd將顯示. message的內容,你可以在這裏面寫上歡迎信息或者注意事項等等.另外可以編輯/etc/vsftpd/banner,建立login時的歡迎信息, 讓你的ftp更加個性化.

下面我們使用quota爲ftpuser加入磁盤限額,避免惡意用戶用垃圾數據塞滿你的硬盤.

假設/var/ftp在根分區/(/dev/hda5)中,則將/etc/fstab中根分區的記錄的第4個字段改成defaults,usrquota,這樣這條記錄看起來類似這樣:

LABEL=/ / ext3 defaults,usrquota 1 1

接着重啓系統後輸入下列命令:

quotacheck -acu #檢查啓用了配額的文件系統,併爲每個文件系統建立一個當前磁盤用來的表

quotacheck -avu #生成每個啓用了配額的文件系統的當前磁盤用量表

edquota ftpuser #爲用戶ftpuser設置磁盤配額

這時系統會在默認文本編輯器(vi)中打開配額文件,顯示類似這樣:

Disk quotas for user ftpuser (uid 501):

Filesystem blocks soft hard inodes soft hard

/dev/hda5 0 0 0 0 0 0

第一列是啓用了配額的文件系統的名稱。第二列顯示了用戶當前使用的塊數。隨後的兩列用來設置用戶在該文件系統上的軟硬塊限度。inodes 列顯示了用戶當前使用的i節點數量。最後兩列用來設置用戶在該文件系統上的軟硬i節點限度.硬限是用戶或組羣可以使用的磁盤空間的絕對最大值。達到了該限度後,磁盤空間就不能再被用戶或組羣使用了。軟限定義可被使用的最大磁盤空間量。和硬限不同的是,軟限可以在一段時期內被超過。這段時期被稱爲過渡期(grace period)。過渡期可以用秒鐘、分鐘、小時、天數、週數、或月數表示。如果以上值中的任何一個被設置爲 0,那個限度就不會被設置.按你的需要修改後存盤推出.

要校驗用戶的配額是否被設置,使用以下命令:

quota testuser

接着使用edquota -t來設置過渡期(grace period)

和另一個 edquota 命令相似,這個命令也會在文本編輯器中打開當前的文件系統配額:

Grace period before enforcing soft limits for users:

Time units may be: days, hours, minutes, or seconds

Filesystem Block grace period Inode grace period

/dev/hda5 7days 7days

按你的需要修改後存盤退出

轉自:http://blog.chinaunix.net/space.php?uid=23381466&do=blog&id=58770

發佈了1 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章