始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

Linux/unix下Vsftpd服務器故障排除

發布時間:  2012/8/13 10:02:25
 VsftpdVsftpd中Vs的意思是“Verysecure”。從名稱可以看出,軟件的編寫者非常注重其安全性。據官方網站的數據,一臺Vsftpd服務器最多可以支持1500個并發用戶。24小時可以保存2.6TB數據。Vsftpd服務器的文件結構如表1所示。

表1Vsftpd服務器的文件結構

 


配置文件名稱功能說明/usr/sbin/vsftpdVsftpd的主程序 /etc/rc.d/init.d/vsftpd啟動腳本/etc/vsftpd/vsftpd.conf主配置文件 /etc/pam.d/vsftpdPAM認證文件 /etc/vsftpd.ftpusers禁止使用Vsftpd的用戶列表文件 /etc/vsftpd.user_list禁止或允許使用Vsftpd的用戶列表文件 /var/ftp匿名用戶主目錄 /var/ftp/pub 匿名用戶的下載目錄/etc/logrotate.d/vsftpd.logVsftpd的日志文件

 

此外,還有一些說明文檔和手冊文件。

1了解日志文件

了解日志文件對于故障排除非常重要,這里介紹詳細設置方法。vsftpd與log有關的選項:

vsftpd_log_file
xferlog_enable
xferlog_std_format
xferlog_file
dual_log_enable
syslog_enable
log_ftp_protocol
no_log_lock
在介紹之前,我們來看看vsftp中關于日志記錄的參數。

xferlog_enable=yes/no//是否啟用xferlog日志格式
xferlog_std_format=yes/no//是否采用標準格式記錄日志
xferlog_file=/path/to/logfile//xferlog日志文件所在位置,默認為/var/log/xferlog

上面的參數設置記錄xferlog日志的格式。這是早期Wu-ftpd服務的日志格式,它會記錄上傳和下載的動作。vsftpd也有專有的日志格式,用下列參數設置:


dual_log_enable=yes/no//是否采用Vsftpd自己的日志記錄方式
log_ftp_protocol=yes/no//是否記錄所有的ftp命令日志vsftpd_log_file=/path/to/logfile//指定vsftpd日志文件位置,默認為/var/log/vsftpd.log,xferlog_enable的默認值為no(vsftpd提供的配置文件模版將其值改為了yes),dual_log_enable的默認值也為no,就是說默認情況下vsftpd是不記錄日志的。我們也可以將日志信息寫入系統日志/var/log/messages中,使用如下參數:
syslog_enable=yes/no


下面是一個xferlog日志文件的內容:

ThuMar408:12:3020081202.114.40.24237/incoming/index.htmla_oaguest@my.netftp0*c

第一行各個數據參數如下表


記錄數據參數說明ThuMar408:12:302008當前服務器本地時間,格式:"DDDMMMddhh:mm:ssYYYY"1傳輸文件時間,單位秒202.114.40.242遠程主機IP地址/incoming/index.html傳輸文件名稱,包括路徑a傳輸類型包括:a:ascii碼傳輸,b:二進制文件傳輸_特殊處理標志:-:沒有處理C:文件壓縮U:文件不壓縮T:文件tar格式o文件傳輸方向o:從服務器到客戶端i:從客戶端到服務器a訪問模式:a:匿名的用戶g:來賓用戶r:本地用戶即系統用戶guest@my.net用戶名稱ftp服務類型0認證方式包括:1rfc931認證0:沒有進行認證*認證用戶的idc完成狀態:c完全的傳輸轉移。i:沒有完成傳輸

 

2vsftp常見故障排除

1日志文件文件出現錯誤信息“500OOPS:vsftpd:notfound:directorygivenin'secure_chroot_dir':/usr/share/empty”。

解決方法:vsftpd.conf添加一行:
secure_chroot_dir=/opt/usr/share/empty
建立一個目錄
mkdir/opt/usr/share/empty
然后關閉匿名登錄把vsftpd.conf
中的anonymous_enable=YES
修改為
anonymous_enable=NO

2怎么配置vsftpd來chroot虛擬用戶?

解決方法:
當嘗試在vsftpd下chroot虛擬用戶的時候,需要這樣做:在vsftpd.conf里
guest_enable=yes
#virtualusersaremappedtouserftpwhichownsalldirs
guest_username=ftp
#chrootsthevirtualusertohisdirectory(userjoehasdirectoryjoe)
chroot_local_user=YES
user_sub_token=$USER

關鍵的事情是確保在/etc/passwd的ftp用戶的主目錄實際上包含在/var/ftp/$USER里的字符串$USER守護進程會做一個簡單的字符串匹配比較,來決定到哪里替換用戶的名字。

3vsftp中怎樣限制用戶只能在自己的home目錄下?

解決方法:
有些時候你不想讓FTP用戶可以訪問他自己home目錄之外的其他文件。vsftp守護進程可以通過chroot配置這個策略。編輯/etc/vsftpd/vsftpd.conf文件,添加一行:
chroot_local_user=YES
保存之后記得重啟vsftpd服務:
servicevsftpdrestart
重啟服務之后,FTP所有用戶都將受限制,只能訪問他們home目錄的文件了。

4如何修改vsftpd的默認根目錄/var/ftp/pub到另一個目錄?

解決方法:修改ftp的根目錄只要修改/etc/vsftpd/vsftpd.conf文件即可:
加入如下兩行:
local_root=/var/www/html
chroot_local_user=YES
重新啟動服務:
servicevsftpdrestart
任何一個用戶ftp登錄到這個服務器上都會chroot到/var/www/html目錄下。

參考文獻:
http://bsdftpd-ssl.sc.ru/doc/unix/xferlog.5.txt
http://vsftpd.beasts.org/vsftpd_conf.html


1日志文件文件出現錯誤信息“500OOPS:vsftpd:notfound:directorygivenin'secure_chroot_dir':/usr/share/empty”。解決方法:vsftpd.conf添加一行:secure_chroot_dir=/opt/usr/share/empty建立一個目錄mkdir/opt/usr/share/empty然后關閉匿名登錄把vsftpd.conf中的anonymous_enable=YES修改為anonymous_enable=NO2怎么配置vsftpd來chroot虛擬用戶?解決方法:當嘗試在vsftpd下chroot虛擬用戶的時候,需要這樣做:在vsftpd.conf里guest_enable=yes#virtualusersaremappedtouserftpwhichownsalldirsguest_username=ftp#chrootsthevirtualusertohisdirectory(userjoehasdirectoryjoe)chroot_local_user=YESuser_sub_token=$USER關鍵的事情是確保在/etc/passwd的ftp用戶的主目錄實際上包含在/var/ftp/$USER里的字符串$USER守護進程會做一個簡單的字符串匹配比較,來決定到哪里替換用戶的名字。3vsftp中怎樣限制用戶只能在自己的home目錄下?解決方法:有些時候你不想讓FTP用戶可以訪問他自己home目錄之外的其他文件。vsftp守護進程可以通過chroot配置這個策略。編輯/etc/vsftpd/vsftpd.conf文件,添加一行:chroot_local_user=YES保存之后記得重啟vsftpd服務:servicevsftpdrestart重啟服務之后,FTP所有用戶都將受限制,只能訪問他們home目錄的文件了。4如何修改vsftpd的默認根目錄/var/ftp/pub到另一個目錄?解決方法:修改ftp的根目錄只要修改/etc/vsftpd/vsftpd.conf文件即可:加入如下兩行:local_root=/var/www/htmlchroot_local_user=YES重新啟動服務:servicevsftpdrestart任何一個用戶ftp登錄到這個服務器上都會chroot到/var/www/html目錄下。


本文出自:億恩科技【www.czbl888.cn】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線