Linux搭建ftp服務器的步驟
ftp:利用文件傳輸協(xié)議,用來不同服務器之間的文件傳輸。
ftp搭建
環(huán)境準備:一臺centos7.9服務器,可以聯(lián)通外網。
1:下載vsftpd工具
#前置條件 systemctl stop firewalld setenforce 0 #開始下載 yum install vsftpd -y rpm -qi vsftpd systemctl start vsftpd netstat -anpt |grep vsftpd #默認端口為21
2:下載客戶端工具
yum install ftp lftp -y
3:進入配置文件目錄
[root@ftp vsftpd]# ll 總用量 24 -rw-r--r-- 1 root root 6 8月 15 15:20 chroot_list #這里是后期新創(chuàng)建的,后續(xù)會說是做什么的 -rw------- 1 root root 125 6月 10 2021 ftpusers #黑名單 -rw------- 1 root root 361 6月 10 2021 user_list #黑名單或白名單 -rw------- 1 root root 5411 8月 15 15:51 vsftpd.conf #著配置文件目錄 -rwxr--r-- 1 root root 338 6月 10 2021 vsftpd_conf_migrate.sh
vsftpd.conf配置文件
是否允許匿名用戶ftp登錄,YES代表允許,NO不允許 anonymous_enable=YES
是否允許本地登錄 local_enable=YES
是否有寫的權利 write_enable=YES
日志文件位置 xferlog_file=/var/log/xferlog 采用標準的日志格式
4: 限制用戶只能在自己的家目錄訪問
如果讓普通用戶可以隨便切換目錄的話及其不安全
所以一般可以修改配置文件將用戶限制在自己的家目錄
在 vsftpd.conf 配置文件里面修改以下配置
chroot_list 文件默認不存在,需要在 /etc/vsftpd/下新建
在vsftpd.conf添加如下配置
#對本地用戶限制在自己的家目錄里 chroot_local_user=YES #啟用限制名單 chroot_list_enable=YES #具體的名單路徑,這個名單的用戶不受限制,可以隨意切換目錄 chroot_list_file=/etc/vsftpd/chroot_list #這個目錄沒有,需要自己新建。
5:創(chuàng)建用戶進入客戶端測試
默認情況下不允許root用戶登錄 vsftpd 使用的用戶名和密碼就是linux系統(tǒng)里面使用分用戶和密碼,不需要單獨新建
#新建一個用戶進行測試 useradd ceshi echo "ceshi" | passwd --stdin ceshi #這里有一個小坑,就是我后續(xù)使用這個用戶登錄發(fā)現(xiàn)沒法上傳文件,這里最好給ceshi的家目錄權限大一點 chmod 777 /home/ceshi 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls #查看自身目錄下的文件 227 Entering Passive Mode (192,168,198,129,201,209). 150 Here comes the directory listing. drwxr-xr-x 2 1002 1003 6 Aug 15 07:29 test.txt 226 Directory send OK. ftp> !ls #查看本地目錄內容 anaconda-ks.cfg dist m1 test.txt backup docker m2 ultrax.sql calico.yaml Dockerfile nginx check_mysqld.sh java sprinboot-vue.jar checkMysql.sh kube-flannel.yml sysconfigure.sh ftp> cd /root #切換目錄,這里報錯了 550 Failed to change directory. ftp>
這里報錯是因為我們限制用戶不能隨意的切換目錄訪問,這里如果想要切換目錄,在chroot_list中講用戶名稱添加進去就可以了
vim chrrot_list ceshi #一定記得重啟!!! systemctl restart vsftpd
我們接著上面的說
ftp> cd /var 250 Directory successfully changed. ftp> ls 227 Entering Passive Mode (192,168,198,129,21,205). 150 Here comes the directory listing. drwxr-xr-x 2 0 0 6 Apr 11 2018 adm ftp> cd /home/ceshi 250 Directory successfully changed. ftp> pwd 257 "/home/ceshi" ftp> !ls #查看本地目錄內容 anaconda-ks.cfg dist m1 test.txt backup docker m2 ultrax.sql calico.yaml Dockerfile nginx check_mysqld.sh java sprinboot-vue.jar checkMysql.sh kube-flannel.yml sysconfigure.sh ftp> put test.txt #上傳文件到ftp服務器 local: test.txt remote: test.txt 227 Entering Passive Mode (192,168,198,129,210,80). 150 Ok to send data. 226 Transfer complete. 6 bytes sent in 0.00198 secs (3.03 Kbytes/sec) ftp> ls 227 Entering Passive Mode (192,168,198,129,175,174). 150 Here comes the directory listing. drwxr-xr-x 2 1002 1003 6 Aug 15 07:29 111 -rw-r--r-- 1 1002 1003 6 Aug 15 08:22 test.txt 226 Directory send OK. ftp> get 機柜信息.txt #下載文件到本地,默認/root目錄 local: 機柜信息.txt remote: 機柜信息.txt 227 Entering Passive Mode (192,168,198,129,195,39). 150 Opening BINARY mode data connection for 機柜信息.txt (104 bytes). 226 Transfer complete. 104 bytes received in 4.9e-05 secs (2122.45 Kbytes/sec) ftp>
windows測試
在文件夾上輸入: ftp:/@192.168.198.129/,

這種方式是匿名訪問,默認在/var/ftp/pub路徑,如果向指定用戶如下圖進行登錄:


輸入賬戶密碼進行登錄。
登錄之后就可以傳輸文件了。
注意:
刪除目錄時,如果目錄是非空(FTP 協(xié)議默認不允許刪除非空目錄,需遞歸刪除)
到此這篇關于Linux搭建ftp服務器的文章就介紹到這了,更多相關Linux搭建ftp服務器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
FTP服務器設置虛擬目錄(Serv-u與FileZilla Server)
這篇文章主要介紹了FTP服務器設置虛擬目錄,這篇文章主要是針對最常用的兩款ftp服務器軟件Serv-u與FileZilla Server的設置方法,需要的朋友可以參考一下啊2016-09-09
FileZilla Server ftp 服務器下通過alias別名設置虛擬目錄(多個分區(qū))
這篇文章主要介紹了FileZilla Server ftp 服務器下通過alias別名設置虛擬目錄(多個分區(qū)共同一個賬號),需要的朋友可以參考下2016-09-09
Windows?Server?2019下FTP服務器搭建方法圖文教程
這篇文章主要為大家詳細介紹了Windows?Server?2019下FTP服務器搭建方法圖文教程,文中安裝步驟介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-07-07

