vsftp相關配置檔案說明
/etc/vsftpd/vsftpd.conf #Redhat AS3.0 配置檔案位置
/etc/vsftpd.conf #Redhat AS4.0配置檔案位置
全局設定
在vsftpd.conf 檔案添加以下兩行
listen=YES
background=YES
一、 匿名使用者配置
vi /etc/vsftpd/vsftpd.conf Redhat AS3.0
vi /etc/vsftpd.conf Redhat AS4.0
*****配置檔案自帶選項,隻需要進行修改即可****
允許匿名使用者登入
anonymous_enable=YES
允許匿名使用者上傳檔案
anon_upload_enable=YES
允許匿名使用者建立目錄
anon_mkdir_write_enable=YES
*****以下是需要自己添加,配置檔案沒有選項可改*****
允許匿名使用者下載下傳檔案
anon_world_readable_only=NO
(YES不允許匿名使用者下載下傳檔案)
允許匿名使用者删除檔案
anon_other_write_enable=YES
(NO 不允許匿名使用者删除檔案)
功能:經過以上配置,匿名使用者将能夠登入VSFTP,能夠上傳,下載下傳,删除檔案
二、 本地使用者配置
在系統中添加一個使用者, 登入Shell選擇: /sbin/nologin
這樣建立的使用者,将不能登入系統
vi /etc/vsftpd.conf Redhat AS4.0
本地帳戶能夠登陸
local_enable=YES
本地帳戶登陸後能删除和修改檔案
write_enable=YES
本地使用者都隻能在自已目錄
chroot_list_enable=YES
被限制在自己主目錄的使用者,需要在下面的檔案中添加
chroot_list_file=/etc/vsftpd.chroot_list
功能:經過以上配置,本地使用者将能夠登入VSFTP,隻能在自己的目錄内上傳,下載下傳,删除檔案
(2) 限制本地使用者能否通路VSFTP
方法一 指定的本地使用者能夠通路VSFTP ,
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list
使檔案/etc/vsftpd.user_list中指定的本地使用者可以通路FTP伺服器,而其他本地使用者不可以通路FTP伺服器
方法二 指定的本地使用者不能通路VSFTP
userlist_deny=YES
使檔案/etc/vsftpd.user_list中指定的本地使用者不能通路FTP伺服器,而其他本地使用者可通路FTP伺服器。
三、虛拟使用者配置
(一) 配置需求:現在我們利用虛拟使用者來實作三個使用者的不同權限:
1. upload使用者,可以上傳下載下傳,可以建立檔案夾,但不能删除檔案和檔案夾,不能重命名原有檔案和檔案夾。
2. download使用者,隻能下載下傳
3. admin使用者,管理者,可以上傳,可以下載下傳,可以建立檔案夾,可以删除和更改檔案和檔案夾名。
些使用者都不能登入系統,并且用ftp連接配接時鎖定在自己的家目錄中不能進入系統檔案夾。
(二)配置步驟
1. vi /tmp/logins.txt
upload
upload #upload 使用者的密碼
download
download #download 使用者的密碼
admin
admin #admin 使用者的密碼
說明:此文本檔案的格式是:單數行為使用者名,偶數行為密碼
2.db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd_login.db
3.chmod 600 /etc/vsftpd_login.db
4. 下載下傳一個源始的 vsftpd 安裝包,如本例下載下傳的是 vsftpd-2.0.5.tar 将其進行解壓,以便後面使用
5.cd vsftpd-2.0.5/EXAMPLE
cp VIRYUAL_USERS/vsftpd.pam /etc/pam.d/ftp.vu (進入你的解包的源碼目錄,把虛拟使用者的認證檔案拷貝到/etc/pam.d/下)
6.useradd -d /home/ftpsite ftpuser #建立一個使用者,用于虛拟使用者映射時所用
chmod 700 /home/ftpsite
vi /homt/ftpsite/test.file 建立一個臨時的測試檔案
7. vi /etc/vsftpd/vsftpd.conf Redhat AS3.0
在 vsftpd.con 檔案添加以下功能
啟用虛拟使用者
guest_enable=YES
将虛拟使用者映射為本地ftpuser
guest_username=ftpuser
指定PAM配置檔案為ftp.vu
pam_service_name=ftp.vu
(此選項,配置檔案預設為 vsftpd,将其修改成 ftp.vu 即可)
指定不同虛拟使用者配置檔案的存放路徑
user_config_dir=/etc/vsftpd_user_conf
儲存退出
8.mkdir /etc/vsftpd_user_conf #建立使用者配置檔案目錄
9. cd /etc/vsftpd_user_conf
配置每個使用者的相應權根
vi download
anon_world_readable_ only=NO
注意這個地方不要寫成YES,否則将不能列出檔案和目錄
vi upload
anon_world_readable_only=NO
write_enable=YES (增加寫權限。)
anon_upload_enable=YES(增加上傳權限。)
anon_mkdir_write_enable=YES (增加建立目錄的權限。)
vi admin
anon_other_write_enable=YES(增加管理者使用者的删除/重命名的權限。)
指定使用者的主目錄,該功能,根據實作需要,可以每個使用者裡添加。
local_root=/tmp/ftp
10. 配置完後,啟動vsftpd 服務,upload,download,admin三個使用者的功能均能正常實作。
注意:
1. 修改配置檔案最好用 vi 指令,如果用 gedit 編輯配置檔案,如果有多餘的空格,vsftpd将無法啟動。
2. Redhat AS4.0 可用以下指令啟動服務,在終端輸入指令,如果配置檔案有錯誤,将會看到提示,如 500 OOPS是因為在有些選項的配置中有空格
/usr/local/sbin/vsftpd /etc/vsftpd.conf & Redhat AS4.0
/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf & Redhat AS3.0
四、安全選項
使用者會話空閑後10分鐘
idle_session_timeout=600(秒)
将資料連接配接空閑2分鐘斷
data_connection_timeout=120(秒)
将用戶端空閑1分鐘後斷
accept_timeout=60(秒)
中斷1分鐘後又重新連接配接
connect_timeout=60(秒)
本地使用者傳輸率50K
local_max_rate=50000(bite)
匿名使用者傳輸率30K
anon_max_rate=30000(bite)
FTP的最大連接配接數
max_clients=200
每IP的最大連接配接數
max_per_ip=4
從5555端口進行資料連接配接
listen_port=5555
五、 檢視誰登陸了FTP,并殺死它的程序
ps –xf |grep ftp
kill 程序号