在Linux4.1.15上使用vsftpd搭建FTP服務問題解析
BUG1:在windows系統登陸arm Linux FTP時,顯示“伺服器不允許匿名登入,或者不接受該電子郵件位址”
在這種情況下,無法查找到是什麼原因引起的,後改為python編寫ftp用戶端:
import ftplib
import socket
HOST = ‘100.60.0.114’
def main():
try:
f = ftplib.FTP(HOST)
except (socket.error, socket.gaierror):
print(‘ERROR:cannot reach " %s"’ % HOST)
return
print(‘SUCCESS:***Connected to host “%s”’ % HOST)
try:
f.login()
except ftplib.error_perm:
print(‘ERROR: cannot login anonymously’)
f.quit()
return
print(‘SUCCESS:*** Logged in as “anonymously”’)
f.quit()
return
if name == ‘main’:
main()
上段FTP用戶端代碼在登陸FTP伺服器出錯時,會有相應的錯誤列印資訊,這樣可以根據錯誤列印資訊解決問題
BUG2:500 OOPS: config file not owned by correct user, or not a file
該BUG是因為vsftpd.conf檔案權限不對,應使用下面的指令進行更改:
chown root:root vsftpd.conf
BUG3:500 OOPS: could not bind listening IPv4 socket
直接啟動vsftpd已經可以登陸FTP端了,但是使用inetd的方式啟動vsftpd會有這種問題。
很多人都說應該将 LISTEN=YES注釋掉,但是在vsftpd3.0.3中應該将 LISTEN=NO,
這樣才能使inetd的方式啟動vsftpd。