1.運(yùn)行以下命令安裝 vsftpd。
公司主營業(yè)務(wù):成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出隴西免費(fèi)做網(wǎng)站回饋大家。
yum install -y vsftpd
2.運(yùn)行以下命令打開及查看etc/vsftpd
cd /etc/vsftpd
ls
說明:
/etc/vsftpd/vsftpd.conf 是核心配置文件。
/etc/vsftpd/ftpusers 是黑名單文件,此文件里的用戶不允許訪問 FTP 服務(wù)器。
/etc/vsftpd/user_list 是白名單文件,是允許訪問 FTP 服務(wù)器的用戶列表。
/etc/vsftpd/vsftpd_conf_migrate.sh 是vsftpd操作的一些變量和設(shè)置
備注:使用命令 rpm -ql vsftpd 可列出vsftpd中包含的文件
3.運(yùn)行以下命令設(shè)置開機(jī)自啟動(dòng)。
systemctl enable vsftpd
4.運(yùn)行以下命令啟動(dòng) FTP 服務(wù)。
systemctl start vsftpd
5.運(yùn)行以下命令查看 FTP 服務(wù)端口。
netstat -antup | grep ftp
6.配置本地用戶登錄
本地用戶登錄就是指用戶使用 Linux 操作系統(tǒng)中的用戶賬號和密碼登錄 FTP 服務(wù)器。
vsftpd 安裝后默只支持匿名 FTP 登錄,用戶如果試圖使用 Linux 操作系統(tǒng)中的賬號登錄服務(wù)器,將會(huì)被 vsftpd 拒絕,但可以在 vsftpd 里配置用戶賬號和密碼登錄。具體步驟如下:
a.運(yùn)行以下命令創(chuàng)建 ftptest 用戶。
useradd ftptest
(刪除用戶命令:sudo userdel -r newuser)
b.運(yùn)行以下命令修改 ftptest 用戶密碼。
passwd ftptest
7.修改/etc/vsftpd/vsftpd.conf
a.運(yùn)行vim /etc/vsftpd/vsftpd.conf。
b.按鍵 “i” 進(jìn)入編輯模式。
c.將是否允許匿名登錄 FTP 的參數(shù)修改為anonymous enable=NO。
d.將是否允許本地用戶登錄 FTP 的參數(shù)修改為local_enable=YES。
e.按鍵 “Esc” 退出編輯模式,然后按鍵“:wq” 保存并退出文件。
f.運(yùn)行命令 cat /etc/vsftpd/vsftpd.conf 查看配置文件內(nèi)容。 命令的使用方法可查詢“Linux命令大全”。
1. 首先服務(wù)器要安裝ftp軟件,查看是否已經(jīng)安裝ftp軟件下:
#which vsftpd
如果看到有vsftpd的目錄說明服務(wù)器已經(jīng)安裝了ftp軟件
2. 查看ftp 服務(wù)器狀態(tài)
#service vsftpd status
3. 啟動(dòng)ftp服務(wù)器
#service vsftpd start
4. 重啟ftp服務(wù)器
#service vsftpd restart
5. 查看服務(wù)有沒有啟動(dòng)
#netstat -an | grep 21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
如果看到以上信息,證明ftp服務(wù)已經(jīng)開啟。
6.如果需要開啟root用戶的ftp權(quán)限要修改以下兩個(gè)文件
#vi /etc/vsftpd.ftpusers中注釋掉root
#vi /etc/vsftpd.user_list中也注釋掉root
然后重新啟動(dòng)ftp服務(wù)。
7. vsftpd 500 OOPS: cannot change directory
登陸報(bào)錯(cuò):
C:\ftp 192.168.0.101
Connected to 192.168.0.101.
220 (vsFTPd 2.0.5)
User (192.168.0.101:(none)): frank
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/home/frank
Login failed.
ftp ls
500 OOPS: child died
Connection closed by remote host.
解決方法:
setsebool ftpd_disable_trans 1
service vsftpd restart
就OK了!
這是SELinux的設(shè)置命令,在不熟悉SELnux前,把SELinux關(guān)掉也可以的。
8. 永久開啟,即os重啟后自動(dòng)開啟ftp服務(wù)
方法一:
cd /etc/xinetd.d ,編輯ftp服務(wù)的配置文件gssftp的設(shè)置:
vi /etc/xinetd.d/gssftp ,將 修改兩項(xiàng)內(nèi)容:
(a) server_args = -l –a 去掉-a 改為server_args = -l
(b) disable=yes改為disable=no
(c) 保存退出。
方法二:
(a) system-config-services , 進(jìn)入圖形界面的System services查看是否有 vsftpd項(xiàng),如果沒有轉(zhuǎn)到2.,保存后退出
(b) 用redhat第三張盤 安裝此服務(wù)(開始--刪除/增加程序),200K左右
(c) #setup
此時(shí)能看到vsftpd項(xiàng),此時(shí)選中此services項(xiàng),保存后退出.
Linux下ftp服務(wù)可以通過搭建vsftpd服務(wù)來實(shí)現(xiàn),以CentOS為例,首先查看系統(tǒng)中是否安裝了vsftpd,可以通過執(zhí)行命令?rpm -qa |grep?vsftpd?來查看是否安裝相應(yīng)的包,如果沒有安裝那么可以執(zhí)行?yum?-y?install?vsftpd?來安裝,安裝之后首先創(chuàng)建ftp用戶,比如ftp_test,命令如下:
useradd?-s?/sbin/nologin?-d?/home/ftp_test?ftp_test
目錄盡量不要選擇根目錄下,這里是/home/ftp_test,并且ftp_test這個(gè)目錄不要手動(dòng)創(chuàng)建,否則權(quán)限會(huì)有問題,執(zhí)行命令的時(shí)候會(huì)自動(dòng)創(chuàng)建,
可以看到權(quán)限現(xiàn)在是對于ftp_test用戶是可讀可寫可執(zhí)行的,其他用戶和組下面的都沒有任何權(quán)限,現(xiàn)在為ftp_test用戶創(chuàng)建密碼:
passwd ftp_test
執(zhí)行之后輸入2次密碼確認(rèn)就設(shè)置好了密碼
然后編輯vsftpd配置文件,位置是:vim /etc/vsftpd/vsftpd.conf
找到anonymous_enable這個(gè)配置項(xiàng),默認(rèn)是YES,修改成NO,表示不允許匿名用戶登錄
現(xiàn)在直接保存配置文件,執(zhí)行?systemctl start vsftpd.service?啟動(dòng)vsftp服務(wù),然后可以通過命令:?systemctl status vsftpd.service?查看ftp服務(wù)的運(yùn)行狀態(tài),現(xiàn)在就可以用ftp客戶端進(jìn)行連接了,這里用FileZilla測試,連接正常
現(xiàn)在基本的ftp服務(wù)就部署完了,客戶端可以正常上傳,下載,修改文件;但是這樣有個(gè)問題就是所有的目錄都暴露給客戶端了,雖然客戶端不能隨意修改刪除其余的文件,但是因?yàn)槟夸浛梢姡钥倳?huì)有一些風(fēng)險(xiǎn),所以接下來還需要配置讓ftp用戶只在自己的家目錄下面活動(dòng),而無法查看其它任何目錄,同樣是打開配置文件/etc/vsftpd/vsftpd.conf,找到chroot_local_user=YES這個(gè)配置,默認(rèn)是注釋的,這里去掉注釋,表示只讓用戶在自己的目錄里面活動(dòng),如果只是保存這一個(gè)配置的話,用ftp連接客戶端會(huì)返回500 OOPS: vsftpd: refusing to run with writable root inside chroot()的錯(cuò)誤,即禁止運(yùn)行在可寫的家目錄中,因?yàn)閯偛舊tp_test這個(gè)目錄有w權(quán)限,而現(xiàn)在我們使用的vsftpd版本是3.0.2 屬于比較新的版本,為了安全性做了一些限制,如果你此時(shí)想通過?chmod?a-w?/home/ftp_test?來去掉目錄的寫權(quán)限,那么連接成功是沒問題的,但是無法上傳文件了,所以網(wǎng)上很多說修改權(quán)限的方法是不可取的,正確的做法是應(yīng)該在下面添加一行配置allow_writeable_chroot=YES表示允許對家目錄的寫權(quán)限,具體配置如下:
配置完這兩項(xiàng)以后保存退出,然后執(zhí)行?systemctl restart vsftpd.service?重啟vsftpd服務(wù),現(xiàn)在重新使用ftp連接就成功了,并且任何操作也是沒問題的
現(xiàn)在可以看到上面的路徑是一個(gè)/,對于ftp用戶來說也就是根目錄了,只能在這個(gè)目錄下操作,而無法跳出這個(gè)目錄
以上就是vsftpd服務(wù)的基本搭建過程,實(shí)際使用時(shí)可以分配多個(gè)用戶
1、檢查安裝vsftpd軟件
使用如下命令#rpm -qa |grep vsftpd可以檢測出是否安裝了vsftpd軟件,
如果沒有安裝,使用YUM命令進(jìn)行安裝。
2、啟動(dòng)服務(wù)
使用vsftpd軟件,主要包括如下幾個(gè)命令:
啟動(dòng)ftp命令#service vsftpd start
停止ftp命令#service vsftpd stop
重啟ftp命令#service vsftpd restart
3、vsftpd的配置
ftp的配置文件主要有三個(gè),位于/etc/vsftpd/目錄下,分別是:
ftpusers 該文件用來指定那些用戶不能訪問ftp服務(wù)器。
user_list 該文件用來指示的默認(rèn)賬戶在默認(rèn)情況下也不能訪問ftp
vsftpd.conf vsftpd的主配置文件
4、以匿名用戶為例,我們?nèi)サ襞渲梦募sftpd.conf 里面以下
anon_upload_enable=YES
anon_mkdir_write_enable=YES
兩項(xiàng)前面的#號,就可以完成匿名用戶的配置,此時(shí)匿名用戶既可以登錄上傳、下載文件。記得修改配置文件后需要重啟服務(wù)。
5、非匿名賬戶的創(chuàng)建與使用
vsftpd服務(wù)與系統(tǒng)用戶是相互關(guān)聯(lián)的,例如我們創(chuàng)建一個(gè)名為test 的系統(tǒng)用戶,那么此用戶在默認(rèn)配置的情況下就可以實(shí)現(xiàn)登錄,如圖
登錄后在頁面創(chuàng)建名為“aa”的文件夾,同樣我們在服務(wù)器test用戶 的home目錄里也可以看到相同的文件。
Liux系統(tǒng)下有好幾款很不錯(cuò)的ftp服務(wù),各有特點(diǎn),適應(yīng)于不同的應(yīng)用場合。一般在各種Linux的發(fā)行版中,默認(rèn)帶有的ftp軟件是vsftp,本文是針對CentOs7系統(tǒng)下搭建vsftpd服務(wù)為例。
1. 首先確定系統(tǒng)中已經(jīng)安裝了vsftpd軟件,查看命令:
rpm -q vsftpd
rpm -qa |grep vsftpd
2. 安裝vsftpd(以yum安裝為例)
yum install -y vsftpd
3.關(guān)閉selinux和iptables(也可配置防火墻相關(guān)訪問策略,反之系統(tǒng)阻斷),設(shè)置vsftpd開機(jī)自啟
永久關(guān)閉selinux
vi /etc/sysconfig/selinux
將配置SELinux=enforcing改為SELinux=disabled
保存退出并重啟服務(wù)器
驗(yàn)證是否關(guān)閉命令:getenforce
關(guān)閉防火墻
centos 7 操作命令:systemctl stop firewalld.service
centos 6 操作命令:service stop iptables
設(shè)置vsftpd開機(jī)自啟
centos 7 操作命令:systemctl enable vsftpd.service
centos 6 操作命令:chkconfig vsftpd on
4.vsftpd的配置
ftpusers 該文件用來指定哪些用戶不能訪問ftp服務(wù)器。
user_list 該文件用來指定的默認(rèn)賬戶在默認(rèn)情況下也不能訪問ftp服務(wù)器。
vsftpd.conf vsftpd的主要配置文件,路徑:
/etc/vsftpd/vsftpd.conf
# vsftpd.conf的配置
# 是否允許匿名登錄
anonymous_enable=NO
# 是否允許本地用戶登錄
local_enable=YES
# 是否允許本地用戶對FTP服務(wù)器文件具有寫權(quán)限
write_enable=YES
# 本地用戶主目錄
local_root=/var/ftp
# 匿名用戶主目錄
anon_root=/var/ftp/pub
# 是否允許匿名用戶上傳文件,如允許,須將全局的
write_enable=YES
anon_upload_enable=YES
# 是否允許匿名用戶創(chuàng)建新文件夾
anon_mkdir_write_enable=YES
# 容許匿名用戶除了新建和上傳外的其他權(quán)限
anon_other_write_enable=YES
# 本地用戶掩碼
local_umask=022
# 設(shè)置匿名登入者新增或上傳檔案時(shí)的umask值
anon_umask=022
# 是否激活目錄歡迎信息功能
dirmessage_enable=YES
xferlog_enable=YES
# 主動(dòng)模式數(shù)據(jù)傳輸20端口
connect_from_port_20=NO
xferlog_std_format=YES
# 是否監(jiān)聽ipv4
listen=YES
# listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
# 是否設(shè)置被動(dòng)模式
pasv_enable=YES
# 被動(dòng)模式傳輸使用端口
pasv_min_port=20020
pasv_max_port=20020
# 被動(dòng)模式返回給客戶端的ip地址(服務(wù)器內(nèi)網(wǎng)穿透時(shí)使用)
pasv_address=0.0.0.0( 服務(wù)器外網(wǎng)ip )
# 設(shè)置用戶訪問目錄,默認(rèn)只允許用戶自己的ftp目錄
# 需要同時(shí)設(shè)置allow_writeable_chroot,允許受限用戶的寫權(quán)限,不然會(huì)報(bào)錯(cuò)
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES
5.創(chuàng)建例外用戶文件
#哪怕沒有例外用戶也必須創(chuàng)建
vim /etc/vsftpd/chroot_list
只想讓指定賬戶不限制在其主目錄,其它賬戶都限制在主目錄。
對于chroot_local_user與chroot_list_enable的組合效果,可以參考下表:
6. 創(chuàng)建ftp新用戶
#新增一個(gè)test(用戶名),并指定上傳目錄在/home/ftp/test下
useradd -g root -d /home/ftp/test -s /sbin/nologin test
# 如果后期想變更此用戶的上傳到(/XXX/ftp/test),請使用下面的命令:
usermod -d /XXX/ftp/test test
# 設(shè)置用戶密碼
passwd test
因?yàn)榘踩珕栴},vaftpd不允許匿名用戶在ftp主目錄上傳,可以新建一個(gè)子目錄,設(shè)置權(quán)限為777
7. 關(guān)于local_umask和anon_umask掩碼
掩碼決定了上傳文件的權(quán)限,掩碼為022代表上傳后的文件權(quán)限為
666-022=644 - rw-r--r--
掩碼即為要去除的權(quán)限為,默認(rèn)設(shè)為033即可。
8. 啟動(dòng)vsftp服務(wù)
#centos7 操作命令
啟動(dòng): systemctl start vsftpd.service
停止: systemctl stop vsftpd.service
重啟: systemctl restart vsftpd.service
查看狀態(tài): systemctl status vsftpd.service
#centos6 操作命令
啟動(dòng): service vsftpd start
停止: service vsftpd stop
重啟: service vsftpd restart
查看狀態(tài): service vsftpd status
第一步:打開終端(快捷鍵是Ctrl+Alt+t),如果當(dāng)前用戶不是root用戶,請輸入命令“su”,然后輸入root賬戶密碼即可;
第二步:輸入命令“apt-get update”,這一步是為了更新下載的數(shù)據(jù)源,如果不更新可能造成有幾個(gè)后面的軟件包無法下載;
第三步:輸入命令“apt-get install vsftpd”完成安裝vsftpd;
第四步:判斷vsftp是否安裝成功,輸入命令“service vsftpd restart”重啟vsftpd服務(wù),如果他在運(yùn)行狀態(tài)說明安裝成功;
第五步:新建“/home/uftp”目錄作為用戶主目錄,輸入命令“mkdir /home/uftp”回車 ,然后輸入命令“l(fā)s /home”查看home目錄下有uftp這個(gè)目錄嗎,如果有就是創(chuàng)建成功;
第六步:新建用戶uftp并且設(shè)置密碼,輸入命令“useradd -d /home/uftp -s /bin/bash uftp”
回車,然后再輸入命令“passwd uftp”回車,然后輸入兩次密碼就設(shè)置ok了
第七步:使用vi修改配置文件/etc/vsftpd.conf,輸入命令“vi /etc/vsftpd.conf”回車,
向文件中添加“userlist_deny=NO””userlist_enable=YES”?, “userlist_file=/etc/allowed_users”?,
“seccomp_sandbox=NO”,最后把文件中的“l(fā)ocal_enable=YES”保存(如果提示無法保存,直接退出來,把讀寫和執(zhí)行權(quán)限給這個(gè)文件,具體操作為:輸入命令: “chmod 777 /etc/vsftpd.conf”回車就可以了);
第八步:新建文件/etc/allowed_users,輸入命令“vi /etc/allowed_users”,打開后再這個(gè)文件內(nèi)寫入“uftp”保存即可;《Linux就該這么學(xué)》
第九步:查看/etc/ftpusers文件(不能訪問ftp服務(wù)用戶清單)的內(nèi)容,輸入命令“vi /etc/ftpusers”回車,如果里面有uftp,就把他刪除;
第十步:安裝winscp軟件,進(jìn)行遠(yuǎn)程登錄訪問;下載直接在百度下載就行
網(wǎng)頁名稱:linux重啟ftp命令的簡單介紹
標(biāo)題路徑:http://chinadenli.net/article0/hgcgio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、App開發(fā)、品牌網(wǎng)站設(shè)計(jì)、動(dòng)態(tài)網(wǎng)站、小程序開發(fā)、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)