欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

FREEBSD6.0 架設FTP 服務器

  發(fā)布時間:2008-09-08 18:48:40   作者:佚名   我要評論
FTP (File Transfer Protocol) 是常用的網絡協(xié)議,主要的功能是用來傳輸檔案,我們時常從 FTP 站臺下載檔案。本章將介紹如何使用 FreeBSD 架設 FTP 服務器,并說明各種 FTP 服務器的管理技巧。本章除了 FreeBSD 內附的 FTP 服務器軟件外,并將介紹筆者開發(fā)的 SmbFTPD。

NoLoginList 的參數(shù)可以是使用者或是群組,如果是設定群組,請在群組名稱前加上 @。當要設定多個使用者或群組時,請使用逗號 , 分開。 匿名使用者「ftp」及「anonumous」會被對映到真實的使用者「ftp」,如果您要設定的是匿名的使用者「ftp」及「anonymous」,請使用「ftp」這個使用者。

例如:

NoLoginList user1,@group1,user2

表示不允許使用者 user1, user2 及群組 group1 登入。

NoLoginList user1,user2,@group1,@group2

TimeOut 設定聯(lián)機逾時秒數(shù)

當使用者超過這個時間沒有任何動作時,則中斷聯(lián)機。單位為秒。

TimeOut 900

MaxTimeOut 設定最大聯(lián)機逾時秒數(shù)

使用者可以自行設定 timeout 的時間,但我們可以在這里設定最長 timeout 的時間。預設是 2 小時。

MaxTimeOut 7200

15.7.3 FTP 目錄權限控制

DefaultMode 預設的權限控制模式

SmbFTPD 有二種模式,一個是 SMB mode,另一個是 Normal mode。在 SMB 模式中,SmbFTPD 會使用類似 Samba 的共享數(shù)據(jù)夾權限設定,系統(tǒng)會讀取 ShareConfPath 中的使用者目錄權限控制來設定他對于數(shù)據(jù)夾的存取權限。而 Normal 模式中,SmbFTPD 就像一般 FTP Daemon 一樣。

這個選項的值可以是 Normal 或 SMB,預設為 Normal。

DefaultMode Normal

ExceptionList 設定不使用預設權限控制模式的使用者

您可以在 ExceptionList 中設定不要使用 DefaultMode 的使用者及群組。例如,您如果希望所有人都使用 SMB 模式,但群組 wheel 要使用一般模式,則請將 DefaultMode 設為 SMB,再在 ExceptionList 中設定 @wheel 即可。

ExceptionList 的參數(shù)可以是使用者或群組,如果是群組的話,請在群組名稱前加上 @。例如:

ExceptionList user1,user2,@group1,@group2

ShareConfPath 設定數(shù)據(jù)夾權限設定文件位置

設定數(shù)據(jù)夾設定的 smbftpd_share.conf 所在路徑。如果您設定 DefaultMode 為 SMB,或是 DefaultMode 為 Normal 但有 ExceptionList,則一定要指定 smbftpd_share.conf 的所在路徑。

我們會檢查 smbftpd_share.conf 中的下列關鍵詞設定:

  • path:數(shù)據(jù)夾的路徑。
  • rw:可以有寫入權限的使用者或群組。
  • ro:可以有只讀權限的使用者或群組。
  • browseable:資料夾是否要設為隱藏。若設為 no,則使用者在根目錄 ls 時,將看不到該數(shù)據(jù)夾,但依然可以 cd 到該數(shù)據(jù)夾中。
  • disable_download:設定不可以下載的使用者。若使用者可以讀取該資料夾內容,您還可以設定讓它無法執(zhí)行下載的動作。
  • disable_ls:設定在資料夾中執(zhí)行 ls 時,不可以看到資料夾內容的使用者及群組。
  • disable_modify:設定不可以修改該資料夾中的檔案或目錄的使用者及群組。如果該使用者具有讀寫的權限,但又在此列表中,則該使用者只能上傳檔案或是建立新的目錄,而無法執(zhí)行 rename、delete、rmdir、chmod 等指令。

范例一:

這個范例是有一個數(shù)據(jù)夾名為 public,其所在目錄為 /home/public,在 samba 群組中的使用者可以有只讀的權限,而 root 可以有寫入的權限。

[public]
	path = /home/public
	rw = root
	ro = @samba

范例二:

數(shù)據(jù)夾名稱為 private,只有 wheel 群組的人可以寫入,而且這個數(shù)據(jù)夾是隱藏的,wheel 群組的人登入后使用 ls 看不到這個資料夾,但是可以 cd 進去資料夾中。

[private]
	path = /root/ftp
	rw = @wheel
	browseable = no

范例三:

數(shù)據(jù)夾名稱為 upload, 使用者「ftp」及「anonymous」只能上傳檔案或建立新目錄,但是無法看到該數(shù)據(jù)夾中的內容,也不可以下載或是修改現(xiàn)有的檔案。但在使用者「wheel」群組中的使用者可以具有全部的讀寫權限。

[upload]
	path=/home/upload"
	rw=ftp,@wheel
	disable_ls=ftp
	disable_modify=ftp
	disable_download=ftp

請注意,匿名使用者「ftp」及「anonumous」會被對映到真實的使用者「ftp」,如果您要設定的是匿名的使用者「ftp」及「anonymous」,請使用「ftp」這個使用者。

如果您設定某個使用者對于某個數(shù)據(jù)夾有寫入的權限,但該使用者卻無法寫入,因為除了 SmbFTPD 的權限控制外,您還必須對數(shù)據(jù)夾的 UNIX 權限做一些設定,讓該數(shù)據(jù)夾的 UNIX 權限允許該使用者寫入。

ShareConfPath /some/where/smbftpd_share.conf

ChrootSet 設定使用 chroot 的使用者

在這個列表中的使用者或群組會被 chroot 到您所指定的路徑中,也就是讓它將您所設定的路徑做為根目錄,使用者無法到該路徑以外的地方。如果有需要,您可以同時設定多條 ChrootSet 的規(guī)則。

這個參數(shù)的第一個字段是使用者名稱或群組,如果在名稱之前加上 @,表示是群組,所有在該群組中的使用者都會被套用到群組的設定中。而另一個特別的用法是只有一個 @ 符號,表示所有使用者都會被套用到這個設定中。

請注意,被設定為 chroot 的使用者就算 DefaultMode 被歸類為 SMB mdoe 也一定會被強制使用 Normal mode。

這里有幾個設定的范例:

范例一:

使用者 ftp 登入時,將它 chroot 到 /var/spool/ftp

ChrootSet ftp /var/spool/ftp

范例二:

所有群組為 ftpgroup 的使用者都使用他們的家目錄 (home) 做為根目錄。例如,使用者 alex 的家目錄為 /home/alex,則其根目錄為 /home/alex,而 jack 則是 /home/jack。我們以 ~ 符號表示家目錄,系統(tǒng)會自動轉換為真正的路徑。

ChrootSet @ftpgroup ~

范例三:

所有 webusers 這個群組的人都以其家目錄下的 public_html 為根目錄。這對于您要開放 FTP 給某些使用者,但又不想讓他們去存取系統(tǒng)中其它路徑時十分有用。

ChrootSet @webusers ~/public_html

范例四:

所有使用者都必須以其家目錄為根目錄。

ChrootSet @ ~

ChrootSet @webusers ~/public_html
ChrootSet @ ~

15.7.4 匿名使用者控制

AnonymousLogin 是否支持匿名使用者登入

是否允許匿名使用者登入。匿名的使用者賬號為 ftp 或 anonymous。如果您要允許匿名使用者登入,您必須先新增一個 ftp 的系統(tǒng)使用者。

這個選項的值可以是 Yes 或 No,默認值為 No。

AnonymousLogin No

AnonymousOnly 是否只允許匿名使用者登入

是否只允許匿名使用者登入。若設為 Yes,則一般使用者無法登入。

AnonymousOnly No

15.7.5 檔案傳輸控制

TransferLog 設定上下傳記錄文件位置

這個選項用來設定使用者上傳及下載的檔案記錄。您可以設定當使用者下載或上傳檔案時,將它所上傳或下載的檔名、傳輸時間、大小等數(shù)據(jù)寫在這個檔案中。

TransferLog /var/run/smbftpd.log

MaxDownloadRate 設定最大下傳速度

您可以針對使用者及群組設定最大的下載頻寬。頻寬 rate 的單為是 KB/s。您也可以設定多條 MaxDownloadRate 規(guī)則。

這個選項的第一個參數(shù)可以是使用者或群組,如果是群組,則名稱開頭必須加上 @。而若只有一個 @ 符號,表示所有使用者都要套用到該規(guī)則。

MaxDownloadRate @group100 100
MaxDownloadRate ftp 20
MaxDownloadRate @friends 1000

MaxUploadRate 設定最大上傳速度

您可以針對使用者及群組設定最大的上傳頻寬。頻寬 rate 的單為是 KB/s。您也可以設定多條 MaxDownloadRate 規(guī)則。

這個選項的第一個參數(shù)可以是使用者或群組,如果是群組,則名稱開頭必須加上 @。而若只有一個 @ 符號,表示所有使用者都要套用到該規(guī)則。

MaxUploadRate @group100 100
MaxUploadRate ftp 20
MaxUploadRate @friends 1000

15.7.6 SSL/TLS 控制

SecurityPolicy 設定是否使用 SSL/TLS

這個選項可以讓您設定是否要啟用 SSL/TLS 加密。您可以 強制一定要使用加密聯(lián)機,或是關閉加密功能,或是同時允許加密及非加密模式。各種模式的說明如下:

  • secure:只允許加密聯(lián)機。
  • nosecure:只允許非加密聯(lián)機。
  • both:同時允許加密及非加密聯(lián)機。

您可以將 SecurityPolicy 設為 secure、nosecure、或 both,默認值是同時允許加密及非加密聯(lián)機。

SecurityPolicy both

EncryptionType 設定加密類型

當您要使用加密聯(lián)機時,您可以選擇要支持哪一種加密模式。SmbFTPD 支持二種模式:SSL 及 TLS,您可以使用下列設定值以選擇要使用另一種模式:

  • TLS:只使用 RFC 2228 所定義的 FTP-TLS 模式。
  • SSL:只支持 FTP-SSL 模式。
  • Both:同時支持 SSL 及 TLS。

默認值是同時支持 SSL 及 TLS。

EncryptionType both

NormalUserMustSecure 強制一般使用者使用加密聯(lián)機

當 NormalUserMustSecure 設為「Yes」時,表示一般使用者登入時一定要使用加密的聯(lián)機,否則無法登入。

我們在 FTP 服務中使用 SSL/TLS 的目的是為了避免使用者的機密數(shù)據(jù)在網絡上以明碼流傳,為了強制所有使用者都使用比較安全的模式聯(lián)機,您可以將這個選項設為「Yes」。

NormalUserMustSecure No

AnonymDisableSecure 設定不允許匿名使用者使用加密聯(lián)機

當 AnonymDisableSecure 設為「Yes」時,系統(tǒng)將不允許匿名的使用者使用加密的聯(lián)機。

既然 SSL/TLS 的目的是避免使用者數(shù)據(jù)在網絡上流傳,而匿名使用者是任何人都可以使用,保護匿名使用者的數(shù)據(jù)似乎比較不需要。所以您可以將這個選項設為「No」,以避免匿名使用者也使用加密聯(lián)機登入,徒然耗費 CPU 的資源。

AnonymDisableSecure No

SSLCertFile 設定公開金鑰位置

設定所要使用的憑證,這個憑證會被送到客戶端做為加密用。如果您沒有設定這個選項,預設會使用 /usr/local/etc/smbftpd/ssl.crt/server.crt

您也可以和 Apache+SSL 共享憑證,Apache 的 SSL 憑證通常位于 /usr/local/etc/apache2/ssl.crt/server.crt。

SSLCertFile /usr/local/etc/smbftpd/ssl.crt/server.crt

SSLKeyFile 設定私密金鑰位置

這個選項是用來設定您上述設定的憑證所對映的 private key。這個 private key 和憑證是成對的,預設是在 /usr/local/etc/smbftpd/ssl.key/server.key。

如果您使用 Apache SSL 憑證,則這里也必須設定使用 Apache 的 key,通常位于 /usr/local/etc/apache2/ssl.key/server.key。

SSLKeyFile /usr/local/etc/smbftpd/ssl.key/server.key

SSLDebugMode 是否啟用 SSL 的除錯模式

設定是否要啟動 SSL 的除錯模式,當設為「Yes」時,您還必須要設定記錄文件位置 SSLDebugLog。

SSLDebugMode No

SSLDebugLog 設定除錯記錄文件位置

設定 SSL 除錯模式的記錄文件要放在什么地方。

SSLDebugLog /var/log/smbftpd-ssl.log

相關文章

  • Unix,BSD,Linux系統(tǒng)三者的區(qū)別小結

    這篇文章主要介紹了Unix,BSD,Linux系統(tǒng)三者的區(qū)別小結,需要的朋友可以參考下
    2023-05-03
  • FreeBSD如何添加硬盤?FreeBSD添加硬盤的方法

    一些朋友問小編FreeBSD如何添加硬盤?別擔心,今天小編就為大家分享FreeBSD添加硬盤的方法,希望對大家會有幫助,有需要的朋友一起去看看吧
    2017-04-06
  • Freebsd PF 安裝使用詳解

    今天小編為大家?guī)淼氖荈reebsd PF 安裝使用詳解,希望對大家會有幫助,有需要的朋友一起去看看吧
    2017-04-06
  • FreeBSD下zfs: failed with error 6錯誤如何解決?

    最近一些朋友問小編 FreeBSD下zfs: failed with error 6錯誤如何解決?今天小編要為大家?guī)淼氖?FreeBSD下zfs: failed with error 6錯誤的解決方法,有需要的朋友一起去看
    2017-04-06
  • Unix文件系統(tǒng)和pwd命令實現(xiàn)詳解

    今天小編要為大家?guī)淼氖荱nix文件系統(tǒng)和pwd命令實現(xiàn)詳解,希望對大家會有幫助,有需要的朋友一起去看看吧
    2017-04-01
  • Unix中的dot命令詳解

    今天小編將為大家?guī)淼氖荱nix中的dot命令詳解!希望對大家會有幫助!有需要的朋友一起去看看吧
    2017-03-22
  • freebsd時間設置小節(jié)詳解

    近日!一些朋友對于freebsd時間設置小節(jié)存在疑慮!下面小編將為大家?guī)淼氖莊reebsd時間設置小節(jié)詳解!希望對大家會有幫助!有需要的朋友一起去看看吧
    2017-03-19
  • grub2引導freebsd詳解

    今天小編要為大家?guī)淼氖莋rub2引導freebsd詳解!希望對大家會有幫助,有需要的朋友一起去看看吧
    2017-03-19
  • FreeBSD10安裝內核源代碼方法講解

    下面小編為大家?guī)淼氖荈reeBSD10安裝內核源代碼方法講解!希望能夠幫助到大家!有需要的朋友一起去看看吧
    2017-03-19
  • FreeBSD下如何使GraphicsMagick支持中文字體?

    最近一些朋友在問FreeBSD下如何使GraphicsMagick支持中文字體?今天小編為大家?guī)淼氖荈reeBSD下使GraphicsMagick支持中文字體的方法!有需要的朋友一起去看看吧
    2017-03-15

最新評論