FTP設(shè)置開機(jī)自動運(yùn)行:chkconfig vsftpd on
創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括秦安網(wǎng)站建設(shè)、秦安網(wǎng)站制作、秦安網(wǎng)頁制作以及秦安網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,秦安網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到秦安省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
關(guān)閉FTP開機(jī)自動運(yùn)行:chkconfig vsftpd off
查看所有服務(wù)開啟自動運(yùn)行的情況:chkconfig --list
啟動FTP服務(wù):service vsftpd start
停止FTP服務(wù):service vsftpd stop
重啟FTP服務(wù):service vsftpd restart
Liux系統(tǒng)下有好幾款很不錯的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è)置匿名登入者新增或上傳檔案時的umask值
anon_umask=022
# 是否激活目錄歡迎信息功能
dirmessage_enable=YES
xferlog_enable=YES
# 主動模式數(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è)置被動模式
pasv_enable=YES
# 被動模式傳輸使用端口
pasv_min_port=20020
pasv_max_port=20020
# 被動模式返回給客戶端的ip地址(服務(wù)器內(nèi)網(wǎng)穿透時使用)
pasv_address=0.0.0.0( 服務(wù)器外網(wǎng)ip )
# 設(shè)置用戶訪問目錄,默認(rèn)只允許用戶自己的ftp目錄
# 需要同時設(shè)置allow_writeable_chroot,允許受限用戶的寫權(quán)限,不然會報錯
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新用戶
#新增一個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主目錄上傳,可以新建一個子目錄,設(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. 啟動vsftp服務(wù)
#centos7 操作命令
啟動: systemctl start vsftpd.service
停止: systemctl stop vsftpd.service
重啟: systemctl restart vsftpd.service
查看狀態(tài): systemctl status vsftpd.service
#centos6 操作命令
啟動: service vsftpd start
停止: service vsftpd stop
重啟: service vsftpd restart
查看狀態(tài): service vsftpd status
1. 首先服務(wù)器要安裝ftp軟件,查看是否已經(jīng)安裝ftp軟件下:
#which vsftpd
如果看到有vsftpd的目錄說明服務(wù)器已經(jīng)安裝了ftp軟件
2. 查看ftp 服務(wù)器狀態(tài)
#service vsftpd status
3. 啟動ftp服務(wù)器
#service vsftpd start
4. 重啟ftp服務(wù)器
#service vsftpd restart
5. 查看服務(wù)有沒有啟動
#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)限要修改以下兩個文件
#vi /etc/vsftpd.ftpusers中注釋掉root
#vi /etc/vsftpd.user_list中也注釋掉root
然后重新啟動ftp服務(wù)。
7. vsftpd 500 OOPS: cannot change directory
登陸報錯:
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重啟后自動開啟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
此時能看到vsftpd項(xiàng),此時選中此services項(xiàng),保存后退出.
1、首先,連接相應(yīng)linux主機(jī),進(jìn)入到linux命令行狀態(tài)下,等待輸入shell指令。
2、其次,在linux命令行中輸入:ftp 10.18.34.115。
3、最后,按下回車鍵執(zhí)行shell指令,此時會看到已成功連接上ftp服務(wù),可輸入ftp命令了。