以前給公司配了一臺服務器,在服務器上安裝了FTP Server。 當時還整理了一個文檔,如今放在這個裏備份一下。bash
本文主要描述在UBUNTU Server系統上如何安裝FTP服務器。
1. 基本狀況說明:
1)服務器ip爲192.168.1.164
2)服務器的OS版本爲Ubuntu 12.04
3)ftp軟件有多種,本服務器使用的軟件爲vsftpd 服務器
2. 打開terminal,首先運行「sudo apt-get update「 完成更新。若是不運行該命令,直接安裝vsftpd,可能會出現"有 幾個軟件包沒法下載,您能夠運行apt-get update------"相似這樣的錯誤提示,致使沒法安裝。網絡
3.安裝vsftpd
運行 sudo apt-get install vsftpd ui
4. check FTP是否真的安裝成功
運行sudo service vsftp restart;若是顯示結果以下:
vsftp stop/waiting
vsftp start/running,process 6424
就表示安裝成功。rest
5.創建/home/uftp目錄做爲用戶主目錄
在terminal運行sudo mkdir /home/uftporm
6. 添加用戶並設置密碼。
1)在terminal運行 sudo useradd -d /home/uftp -s /bin/bash YuRen 即建立用戶YuRen。
2) 用戶建立成功後運行 sudo passwd YuRen 便可設置密碼。連續輸入兩次密碼,密碼即設置成功。ip
7. 修改配置文件
1) 進入/etc/vsftp.conf 。vsftp配置文件比較敏感,空格的多少有時都能使得配置出錯,從而使ftp不能正常運行,因此首先使用 cp vsftp.conf vsftp.conf1將配置文件備份,而後就能夠放心的修改vsftp.conf
2)在vsftp.conf進行以下配置。注意:a)每一行配置都放在每一行的起始位置,不能有空格。b)「=」兩端不能有空格。ssl
listen=YESci
anonymous_enable=NO文檔
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ftpd_banner=Welcome to Ewaybot FTP service.
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/allowed_users
local_root=/home/uftp
8. 修改/home/uftp文件夾的權限
1)運行sudo chmod 777 /home/uftp修改文件夾的權限。
9.建立allowed_users文件
1)在/etc中建立allowed_user文件。使用touch allowed_user命令。
2)打開allowed_user文件,將步驟6建立的用戶添加到其中。
10. 重啓ftp服務
1)運行sudo service vsftp restart,使新的配置生效。
完成上述配置,ftp服務器配置完成。
而後咱們在客戶端運行terminal,在客戶端運行ftp 192.168.1.164便可正常鏈接上FTP。
鏈接成功後出現以下顯示:
YuRen@YuRen-ThinkPad-E460:~$ ftp 192.168.31.164
Connected to 192.168.31.164.
220 Welcome to Ewaybot FTP service.
Name (192.168.31.164:YuRen):
輸入用戶名,回車。
331 Please specify the password.
Password:
輸入密碼,回車。
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
顯示如上的消息,就能夠正常使用FTP進行上傳和下載了。
ftp客戶端經常使用操做命令以下:
ascii 以ASCII模式傳輸數據;
binary 以二進制模式傳輸數據,對可執行程式的傳輸比須用此;
ls 顯示ftp服務器端目錄列表;
cd 改動目錄;
lcd 改動本機目錄;
get 下載文件至本機;
put 上傳文件至ftp服務器端;
quit/bye 退出;
? 顯示本地幫助信息。
在實際安裝和使用還會有有些問題,具體的問題和解決方式以下。
常見問題補充:1) 不要是用匿名方式登錄,匿名方式的配置文件坑比較多,容易出問題。因此在配置文件中,儘可能將匿名的相關配置註釋掉,使用本地用戶。2)若是發現FTP不一樣,常見辦法以下:a)先使用ping命令,看使用能ping通服務器。b)若是能ping通,再使用netstat -ntl看看端口21是否打開。FTP協議佔用TCP/IP協議族的端口20和21,其中20用來傳輸數據,21用來創建鏈接。覈實21端口存在說明FTP確實創建了網絡鏈接。3)運行sudo service vsftp status可查看ftp的狀態,若是發現不是爲vsftp start/running狀態,說明ftp service沒有正常運行。在多數狀況下是vsftp.conf 文件配置錯誤,查找並修改該文件。4)在使用使用過程若是FTP發生錯誤,能夠經過查看log信息來進行定位。log信息儲存在/var/log/vsftpd.log中,經過查看該文件來看log的詳細信息。