本文以redhat AS 4.0為例:
首先要安裝linux下的vsftp軟體包。
rpm -qa|gerp vsftpd //尋找vsftpd有沒有安裝
如果沒有安裝就 vsftpd-2.0.1-5.i386.rpm (在第一張光碟片)
在linux中有一個非常重要的一點就是要掛載光碟機 mount /media/cdrom
在這裡我們就不用原始碼安裝了。用的是rpm安裝
#rpm -ivh vsftpd-2.0.1-5.i386.rpm
這裡就安裝好了。
service vsftpd start 啟動vsftpd服務
如果在不設定任何的情況下,可以以匿名的方式訪問該ftp。
注.如果訪問不了的時候請大家要把linux的防火牆也要關閉:
iptables -F 清除防火牆
在安裝好ftp會產生幾個檔案:
/etc/vsftpd/vsftpd.conf 主設定檔
/etc/vsftpd.ftpusers 指定哪些使用者不能訪問FTP伺服器
/etc/vsftpd.user_list 檔案中指定的使用者是否可以訪問ftp伺服器由vsftpd.conf檔案中的userlist_deny的取值來決定。
這幾個檔案就是整個ftp控制和禁止使用者的許可權配置。。。
下面我們就來設定一個vsftpd的核心檔案
# cd /etc/vsftpd/vsftpd.conf 這就是vsftpd的核心設定檔
anonymous_enable=YES/no 是否允許匿名使用者登入
anonymous_enable=yes/no 是否允許匿名上傳檔案
local_enable= YES/no 是否允許本機使用者登入
write_enable= YES/no 是否允許本機使用者上傳
guest_enable=yes/no 是否允許虛擬使用者登入;
local_mask=022 設定本機使用者的檔案產生掩碼為022,預設值為077
dirmessage_enable= YES 設定切換到目錄時顯示.message隱含檔案的內容
xferlog_enable= YES 啟用上傳和下載日誌
connect_from_port_20=YES 啟用FTP資料連接埠串連
pam_service_name=vsftpd 設定PAM認證服務的設定檔名稱, 該檔案存放在/etc/pam.d目錄下
userlist_enable= YES 允許vsftpd.user_list檔案中的使用者訪問伺服器
userlist_deny= YES 拒絕vsftpd.user_list檔案中的使用者訪問伺服器
listen= YES/no 是否使用獨佔啟動方式(這一項比較重要)
tcp_wrappers= YES/no 是否使用tcp_wrappers作為主機存取控制方式
最主要的就是這些設定了。(這是一般都是預設的不是太懂的不要動)
大家可以設定下面的設定:
ftpd_banner=welcome to ftp service 設定串連伺服器後的歡迎資訊
idle_session_timeout=60 限制遠端客戶機串連後,所建立的控制串連,在多長時間沒有做任何的操作就會中斷(秒)
data_connection_timeout=120 設定客戶機在進行資料轉送時,設定閒置資料停機時間
accept_timeout=60 設定在多長時間後自動建立串連
connect_timeout=60 設定資料連線的最大啟用時間,多長時間斷開,為別人所使用;
max_clients=200 指明伺服器總的客戶並發串連數為200
max_per_ip=3 指明每個客戶機的最大串連數為3
local_max_rate=50000(50kbytes/sec)
anon_max_rate=30000 設定本機使用者和匿名使用者的最大傳輸速率限制
pasv_min_port=連接埠
pasv-max-prot=連接埠號碼 定義最大與最小連接埠,為0表示任意連接埠;為用戶端串連指明連接埠;
listen_address=IP地址 設定ftp服務來監聽的地址,用戶端可以用哪個地址來串連;
listen_port=連接埠號碼 設定FTP工作的連接埠號碼,預設的為21
chroot_local_user=YES 設定所有的本機使用者可以chroot
chroot_local_user=NO 設定指定使用者能夠chroot
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list(只有/etc/vsftpd.chroot_list中的指定的使用者才能執行 )
local_root=path 無論哪個使用者都能登入的使用者,定義登入帳號的主目錄, 若沒有指定,則每一個使用者則進入到個人使用者主目錄;
chroot_local_user=yes/no 是否鎖定本地系統帳號使用者主目錄(所有);鎖定後,使用者只能訪問使用者的主目錄/home/user,不能利用cd命令向上轉;只能向下;
chroot_list_enable=yes/no 鎖定指定檔案中使用者的主目錄(部分),檔案:/chroot_list_file=path 中指定;
userlist_enable=YES/NO 是否載入使用者列表檔案;
userlist_deny=YES 表示上面所載入的使用者是否允許拒絕登入;
userlist_file=/etc/vsftpd.user_list 列表檔案
這些就是進階設定了。大家可以適當的更改。
#vi /etc/hosts.allow
vsftpd:192.168.5.128:DENY 設定該IP地址不可以訪問ftp服務(vsftpd在獨佔啟動方式下支援tcp_wrappers主機存取控制方式)
時間限制:
#cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd
#vi /etc/xinetd.d/vsftpd/
修改 disable = no
access_time = hour:min-hour:min (添加配置訪問的時間限制(註:與vsftpd.conf中listen=NO相對應)
例: access_time = 8:30-11:30 17:30-21:30 表示只有這兩個時間段可以訪問ftp
ftp的配置基本上只有這些了。
該文章轉摘自-網頁製作大寶庫(www.dabaoku.com) - 原文連結:http://www.dabaoku.com/jiaocheng/fabu/ftp/200910121516.shtml