Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程

centos設置vsftp

日期:2017/8/16 9:22:55      編輯:Linux系統常見問題解答

vsftpd(Very Secure FTPd Daemon)是LINUX下一款常用的FTP服務端軟件。下面我簡單的介紹一下安裝和配置過程。

首先檢查是否已經安裝了vsftpd

# rpm -qa | grep vsftpd

如果已經安裝,則會顯示它的版本號,如果執行命令後無任何顯示說明系統沒有安裝。

安裝

用YUM在線安裝的方法是最簡單的:

# yum install vsftpd -y

執行命令後,開始自動下載安裝,最後顯示complete就說明安裝OK了。

在LINUX中開啟21端口(這是一般FTP默認使用的端口,你也可以用自己的端口號,當然如果這樣vsftpd的配置文件也需要相應的修改,在此我只介紹默認的21端口)

# vi /etc/sysconfig/iptables

打開系統的配置文件,在其中添加一句配置代碼以打開21端口:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 - j ACCEPT

然後保存修改。重啟防火牆使配置生效。

# service iptables restart

啟動vsftpd服務

# service vsftpd start

成功的話就會顯示
Starting vsftpd for vsftpd: [OK]

# chkconfig vsftpd on   
# netstate -tunlp | grep vsftpd

輸出 tcp 0 0 0.0.0.0:21 就說明服務運行正常了

關閉匿名登錄

現在你直接打開浏覽器,輸入fpt://你的服務器IP,就可以打開默認的FTP目錄了。
vsftpd的默認FTP目錄路徑為 /var/ftp/pub

當然,一般時候我們都是不希望直接這樣讓FTP可以匿名登錄的,下面修改一下vsftpd的配置文件把匿名登錄關閉。

打開vsftp的配置文件

# vi /etc/vsftpd/vsftpd.conf

將其中的:anonymous_enable設置為NO,注意如果句子開始有#注釋符號的話,需要刪除。

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
#anonymous_enable=YES
anonymous_enable=NO

修改並保存配置文件後,重啟一下vsftpd服務

# service vsftpd restart

添加FTP用戶

OK,既然關閉了匿名服務,那麼用哪個用戶來登錄呢?這時需要為vsftpd新建一個用戶,也就是你登錄FTP時候使用的用戶。

# useradd -d /var/ftp/pub -s/sbin/nologin FTPuserName

為這個用戶設置登錄密碼:

# passwd FTPuserName

現在就可以使用這個叫做FTPuserName的用戶來登錄FTP了。

修改FTP文件夾的讀寫權限

接著你可能還會發現,為什麼不能新建、刪除文件夾\文件,因為/var/ftp/pub目錄沒有操作權限,給這個目錄設置上可刪寫的權限即可。

#  chmod 777 /var/ftp/pub

ftp默認我們使用系統用戶, 現在我們來添加用戶ftptest, 指向目錄/home/ftptest , 權限是nologin, 就是沒給shell權限, 不影響ftp的

# useradd  ftptest  -d /home/ftptest -s /sbogin

如果顯示:in/nol

useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.

不用理會, 只是告訴你, 你指向的目錄已經存在了, 這不影響
設置目錄及其文件的屬組, 你也可以使用別的分組方式

# chown -R  ftptest . ftptest /home/ftptest

設置一下用戶hao32的密碼, 自定義啦

# passwd ftptest

把用戶 ftptest 加到/etc/vsftpd/vsftpd.chroot_list裡, 這樣用戶就可以正常登陸並且不能跳出自己的目錄

# echo ‘ ftptest ′ >> /etc/vsftpd/vsftpd.chroot_list
# service vsftpd restart
Copyright © Windows教程網 All Rights Reserved