一、安裝並配置vsftpd
步驟爲:
1.sudo apt-get install vsftpd //安裝vsftpd
2.cd /etc/ //備份默認的配置文件
3.sudo cp vsftpd.conf vsftpd.conf.orig
4.sudo vim vsftpd.conf //編輯FTP的配置文件
FTP的配置文件爲:
#匿名登錄用戶免密登錄
anonymous_enable=YES
anon_mkdir_write_enable=NO
no_anon_password=YES
#上傳文件更改用戶名
chown_uploads=YES
chown_username=pi
#上傳文件夾失敗時刪除文件
delete_failed_uploads=YES
#本地用戶能夠登錄和上傳文件,指定登錄的文件路徑
local_enable=YES
local_root=/srv/ftp/
allow_writeable_chroot=YES
anon_root=/srv/ftp/
write_enable=YES
local_umask=022
#設置FTP監聽的端口
listen=YES
listen_ipv6=NO
listen_port=21
#設置vsftpd的日誌以及登錄的提示信息
ftpd_banner=Welcome to LingYun loT system Lab.FTP service.
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
#是否限制本地所有用戶切換根目錄的權限,“YES”爲開啓權限(登錄後的用戶不能訪問FTP根目錄之外的目錄)
chroot_local_user=YES
pam_service_name=vsftpd
#userlist爲一個名單,“YES”表示userlist中的用戶才能登錄FTP
userlist_enable=YES
#禁止userlist中的用戶登錄,“NO”表示不啓用此功能
userlist_deny=NO
#指定userlist文件
userlist_file=/etc/vsftpd.userlist
#本地用戶登錄的配置文件夾,能夠分別指定每個用戶的登錄路徑
user_config_dir=/etc/vsftpd/userconfig
二、配置本地用戶登錄
1.創建vsftpd的登錄用戶並且設置密碼
(1)sudo useradd -s /bin/bash pi -m //創建用戶
(2)sudo passwd pi
(3)su pi //設置密碼
(4)exit //退出
2.創建FTP服務器匿名用戶以及本地用戶的默認工作根路徑和測試文件
(1)sudo mkdir -p /srv/ftp/
(2)sudo chown pi.pi /srv/ftp/ //將FTP跟目錄的所有者權限給用戶pi
(3)sudo chmod 755 /srv/ftp/ //將文件權限修改爲755
(4)sudo touch /srv/ftp/test_file.txt
關於文件權限:
755:rwxr-xr-x
777:rwxrwxrwx
3.創建用戶pi的登錄根路徑和測試文件:
(1)sudo mkdir -p /srv/pi
(2)sudo touch /srv/pi/pi_test.txt
(3)sudo chown -R pi.pi /srv/pi/
4.創建vsftpd.userlist,該文件用來保存允許登錄的用戶:
(1)sudo vim vsftpd.userlist
例如:
anonymous
pi
5.修改配置pi用戶的登錄文件路徑爲/srv/pi/,與匿名用戶的工作路徑區分開(pi用戶的工作路徑可以修改也可以不用修改)
(1)sudo mkdir -p /etc/vsftpd/userconfig
(2)cd /etc/vsftpd/userconfig/
(3)sudo vim pi
例如:local_root=/srv/pi/
三、測試vsftp服務
1.重啓vsftpd服務:sudo service vsftpd restart
2.輸入命令:sudo netstat -tlnp
如果vsftpd未運行,則去檢查vsftpd的配置,看是否配置出現問題。
四、運行測試
在瀏覽器或者我的電腦地址欄輸入:ftp://Linux+系統IP,例如:ftp://192.168.XXX.XXX
顯示如下界面則說明FTP服務器配置成功:
五、安裝FlashFXP,實現文件的上傳
1.在官網上下載軟件並安裝,安裝成功後打開右上角此圖標:
2.在彈出的界面填寫地址域、用戶名稱、密碼:
3.觀察右下角的連接狀態信息,如圖所示則表示連接成功:
4.點擊此圖標:
5.找到需要上傳的文件或者文件夾,直接拖動到右邊即可實現文件的上傳:
注:在配置ftp服務器時注意ufw和iptables,筆者剛開始由於開啓了iptables,出現了下面這種情況:
iptables
iptables是與最新的 3.5 版本 Linux 內核集成的 IP 信息包過濾系統,如果 Linux 系統連接到因特網或LAN、服務器或連接 LAN 和因特網的代理服務器,則該系統有利於在 Linux 系統上更好地控制 IP信息包過濾和防火牆配置。netfilter/iptables(簡稱iptables)組成Linux平臺下的包過濾防火牆,與大多數的Linux軟件一樣,這個包過濾防火牆是免費的,它工作在網絡層,針對TCP/IP數據包實施過濾和限制,是典型的包過濾防火牆,它也可以實現網絡地址轉換(NAT)等功能
ufw
ufw是ubuntu系統默認提供的一個基於iptable之上的防火牆工具,ufw支持圖形界面操作,只需在命令行運行ufw命令即能看到一系列的操作