阿里云ECS七天训练营-搭建FTP
@[TOC])
搭建ftp筆記
? 主動模式:
客戶端從一個隨機的大于1024以上的端口N連接到服務(wù)器的21端口,客戶端開始監(jiān)聽端口N+1同時發(fā)送命令“port N+1”,告訴服務(wù)器開放了N+1端口。服務(wù)器使用20端口回連到客戶端指定的N+1端口開始傳輸數(shù)據(jù)
? 被動模式:
– 客戶端從一個隨機的大于1024以上的端口N連接到服務(wù)器的21端口,開始監(jiān)聽端口N+1,并且 同時發(fā)送命令PASV。結(jié)果服務(wù)器會開啟一個隨機的大于1024以上的端口P,并發(fā)送”PORT P”命令給客戶端,然后客戶端發(fā)起從本地端口N+1到服務(wù)器的端口P的連接來傳送數(shù)據(jù)
安裝vsftpd
實驗環(huán)境:centos7
這里只顯示匿名用戶和本地用戶的主動模式
yum -y install vsftpd
systemctl enable vsftpd.service設(shè)置FTP服務(wù)開機自啟動。
systemctl start vsftpd.service啟動FTP服務(wù)。
netstat -antup | grep ftp查看FTP服務(wù)監(jiān)聽的端口。
出現(xiàn)如下圖所示界面,表示FTP服務(wù)已啟動,監(jiān)聽的端口號為 21。此時,vsftpd默認(rèn)已開啟匿名訪問功能,您無需輸入用戶名密碼即可登錄FTP服務(wù)器,但沒有修改或上傳文件的權(quán)限。
配置vsftpd
vsftpd(very secure FTP daemon)是一款在Linux發(fā)行版中最受推崇的FTP服務(wù)器。vsftpd支持匿名訪問和本地用戶模式兩種訪問方式。匿名訪問方式任何用戶都可以訪問搭建的FTP服務(wù);本地用戶模式只支持添加的本地用戶訪問搭建的FTP服務(wù)。
說明: 匿名用戶模式和本地用戶模式只可同時配置一種。
匿名用戶模式
vim /etc/vsftpd/vsftpd.conf
修改配置文件vsftpd.conf。
按 i 鍵進(jìn)入編輯模式,將匿名上傳權(quán)限 anon_upload_enable=YES 的注釋解開。
按ESC鍵退出編輯模式,輸入:wq 保存并退出vim。
更改/var/ftp/pub目錄的權(quán)限,為FTP用戶添加寫權(quán)限。
chmod o+w /var/ftp/pub/
systemctl restart vsftpd.service重啟FTP服務(wù)。
驗證:切換路徑 創(chuàng)建1.txt在本地進(jìn)行驗證
cd /var/ftp/pub/
touch 1.txt
本地用戶模式
為FTP服務(wù)創(chuàng)建一個Linux用戶。
adduser ftptest
為用戶設(shè)置密碼。
passwd ftptest
創(chuàng)建一個供FTP服務(wù)使用的文件目錄。
mkdir /var/ftp/test
更改/var/ftp/test目錄的擁有者為ftptest。
chown -R ftptest:ftptest /var/ftp/test
修改vsftpd.conf配置文件。
配置FTP為主動模式請執(zhí)行如下命令:
sed -i ‘s/anonymous_enable=YES/anonymous_enable=NO/’ /etc/vsftpd/vsftpd.conf #禁止匿名登錄FTP服務(wù)器
sed -i ‘s/listen=NO/listen=YES/’ /etc/vsftpd/vsftpd.conf #監(jiān)聽IPv4 sockets
sed -i ‘s/listen_ipv6=YES/#listen_ipv6=YES/’ /etc/vsftpd/vsftpd.conf #關(guān)閉監(jiān)聽IPv6 sockets
sed -i ‘s/#chroot_local_user=YES/chroot_local_user=YES/’ /etc/vsftpd/vsftpd.conf #全部用戶被限制在主目錄
sed -i ‘s/#chroot_list_enable=YES/chroot_list_enable=YES/’ /etc/vsftpd/vsftpd.conf #啟用例外用戶名單
sed -i ‘s/#chroot_list_file=/chroot_list_file=/’ /etc/vsftpd/vsftpd.conf #指定例外用戶列表文件,列表中的用戶不被鎖定在主目錄
echo “allow_writeable_chroot=YES” >> /etc/vsftpd/vsftpd.conf
echo “l(fā)ocal_root=/var/ftp/test” >> /etc/vsftpd/vsftpd.conf #設(shè)置本地用戶登錄后所在的目錄
這里使用用戶登錄ftptest 無法登錄解決方法:修改配置文件vim /etc/vsftpd/vsftpd.conf
cd /var/ftp/test/ 切換到本地文件目錄
touch 3.text 創(chuàng)建文件
systemctl restart vsftpd重啟服務(wù)
宿主機訪問 輸入ftptest 密碼12345678
總結(jié)
以上是生活随笔為你收集整理的阿里云ECS七天训练营-搭建FTP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 咖啡技术培训:传统意式咖啡菜单制作配方及
- 下一篇: S-8254A------3节/4节电池