您好,登錄后才能下訂單哦!
這篇文章主要介紹“linux下vsftpd安裝和配置步驟”,在日常操作中,相信很多人在linux下vsftpd安裝和配置步驟問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”linux下vsftpd安裝和配置步驟”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
第一步:下載vsftpd的RPM包
你可以從下面兩個地方獲得最新的vsftpd的RPM包 Redhat's rpm collection 或者 rpmfind.net.為了你的方便, 你也可以使用wget從本站下載vsftpd的rpm包到你的本地電腦.
代碼如下:
wget http://www.vsftpdrocks.org/vsftpd-1.1.3-8.i386.rpm
一但有了vsftpd的RPM包,你就可以安裝它
rpm -Uvh vsftpd-1.1.3-8.i386.rpm
就這樣. Vsftpd現在正式安裝.
第二步:啟動并在"standalone"模式下進行測試
代碼如下:
vi /etc/vsftpd/vsftpd.conf
添加下面一行, 或者查看文件確定存在下面一行:
代碼如下:
listen=YES
保存并退出.
現在來啟動vsftpd...
代碼如下:
/usr/sbin/vsftpd &
現在來用ftp命令至你的服務器. 你可以看到如下面這下樣的成功登陸后的會話信息:
代碼如下:
[root@somehost]ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 1.2.1)
Name (localhost:admin): bobsmith (很明顯,你必須使用在你的服務器上的有效用戶)
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
150 Here comes the directory listing.
-rw-r--r-- 1 1001 1001 25372 Jan 17 18:50 somefile.tar.gz
drwx------ 2 1001 1001 512 Jan 16 19:16 index.htm
226 Directory send OK.
ftp> quit
221 Goodbye.
[root@somehost]
如果你準備就緒的話,就可以看到類似于上面的返回信息 ! 如果你想讓你的FTP服務器運行在 inetd或xinetd上, 那么你就需要繼續進行下面的測試. 我個人推薦將FTP服務器運行在 inetd或xinetd上.
第三步:為inetd/xinetd操作進行配置
要在inetd或xinetd配置vsftpd,要進行下面的操作:
首先,來編輯/etc/vsftpd.conf,并告訴它vsftpd沒有運行在"standalone"模式:
代碼如下:
vi /etc/vsftpd/vsftpd.conf
確認下行的存在并將其設置為 "NO":
代碼如下:
listen=NO
如果你在運行inetd,進行下面的操作:
代碼如下:
vi /etc/inetd.conf
如果文件有包含任何“ftp"行的存在, 請注釋或刪除掉它們,并添加入下面一行:
代碼如下:
ftp stream tcp nowait root /usr/local/sbin/vsftpd vsftpd
保存并退出.
現在重啟inetd:
代碼如下:
/etc/rc.d/init.d/inetd restart
如果你的xinetd正在運行,進行下面的操作:
Redhat用戶:
代碼如下:
vi /etc/xinetd.d/vsftpd
# default: off
# description: The vsftpd FTP server serves FTP connections. It uses \
# normal, unencrypted usernames and passwords for authentication.
service ftp
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
nice = 10
}
保存并退出.
現在停止并重啟xinetd...
代碼如下:
/etc/rc.d/init.d/xinetd restart
現在來測試inetd/xinetd ftp服務器:
代碼如下:
[root@somehost]ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 1.2.1)
Name (localhost:admin): bobsmith (很明顯,你必須使用在你的服務器上的有效用戶)
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
150 Here comes the directory listing.
-rw-r--r-- 1 1001 1001 25372 Jan 17 18:50 somefile.tar.gz
drwx------ 2 1001 1001 512 Jan 16 19:16 index.htm
226 Directory send OK.
ftp> quit
221 Goodbye.
[root@somehost]
如果你準備就緒的話,就可以看到類似于上面的返回信息 ! 恭喜,你的FTP服務器已經正常運行! 在接下來的步驟, 我們將調整vsftpd的配置讓其擁有最好的性能.
第四步:vsftpd主配置文件
vsftpd主要配置應該是在:/etc/vsftpd.conf. 這個文件將決定如何對你的vsftpd FTP服務器進行操作. 你必須在vsftpd.conf中查找是否包含下面的配置選項。我雖然不能講訴所有的選面,但是列表中列出來了vsftpd配置的重要部分 :
anonymous_enable=NO/YES
這個開關用于開啟FTP的匿名訪問. 如果將該選項打開,那么請按照第三步的方法進行匿名匿名服務的配置. 如果你不清楚什么是匿名FTP服務,最好把該選項選項設置為“ON”
local_enable=NO/YES
啟用或禁用這個選項,可以使本地系統用戶FTP至你的服務器. 典型的FTP服務器會將其設置為"YES". 我認為只有一種可以選"NO",
write_enable=NO/YES
啟用或禁用FTP的寫入功能.你必須將其設置為"YES" .
local_umask=022 (或者根據你的需要設置)
vsftpd默認的umask為:077. 它決定目錄和文件被創建時得到的初始權限
xferlog_enable=YES
這個選項是啟用或禁用服務器的上傳&下載日志記錄.
ftpd_banner=Welcome to blah FTP service
沒有任何形式來界定該選項, 但它可以為你的FTP服務器定制一個更加友好的問候.
chroot_list_enable=NO/YES
chroot_list_file=/etc/vsftpd.chroot_list
這是一個對于開啟了"chroot"選項相當重要的功能. 當 "chroot_list_enable" 設置為"YES"時, vsftpd會尋找在 "chroot_list_file"指定的下一行位置. 被列出在"/etc/vsftpd.chroot_list" 文件中的任何用戶,會自動的"chrooted"至他們的主目錄. 這將禁止用戶進入除了他或她們用戶主目錄之外的任何位置. 非常適用于共享的FTP環境或者安全與保密性一般的層面.
userlist_enable=NO/YES
userlist_deny=NO/YES
"userlist_enable"選項是用于控制下面兩個文件中其中的一個: vsftpd.ftpusers和 vsftpd.user_list.如果這個選項設置為 "YES", 這兩個文件將列出用戶名單將允許訪問FTP服務. 不管怎樣,當額外加上"userlist_deny=YES"時,這兩個文件將列出用戶名單將不允許訪問FTP服務.這個選項是一個非常有用的徹底拒絕通過ftp獲取關鍵系統用戶的功能.比如"root"或"apche"或"www"這樣的用戶. 對于你的FTP服務器的安全是一個非常好的用途.
第五步: vsftpd.ftpusers, vsftpd.user_list 配置文件
這兩個文件直接與/etc/vsftpd.conf配置文件中的""userlist_enable" 和"userlist_deny"選項關聯.當"userlist_enable"選項設置為 "YES"時, 這兩個文件列表中的用戶將允許訪問FTP服務器. 不管怎樣, 當額外加上"userlist_deny=YES"選項時,這兩個文件列表中的用戶將不允許訪問FTP服務器. 當"userlist_deny"選項被使用時,決定一個有戶是否被FTP服務拒絕,主要取決于它存在于上述兩個文件中的其中的哪一個.
如果一個用戶同時存在于"vsftpd.user_list"與"userlist_deny",當用戶試圖連接FTP服務器時,它們在開始請求FTP連接時 得不到密碼提示并會被拒絕.
如果一個用戶同時存在于"vsftpd.user_list"與"userlist_deny", 用戶必須登陸后更改這一密碼提示.
就個人而言, 我更喜歡使用 "vsftpd.user_list"來建立用戶列表(root, apache, www, nobody等等.) 如果有誰從未見到密碼提示,那么他應該進行FTP的初始化連接.
第六步: vsftpd.chroot_list 配置文件
"vsfrtpd.chroot_list", 當啟用"chroot_list_enable"選項時, 為FTP建立的用戶列表文件,不管是誰,都必須被 "chrooted"至主FTP目錄. 那些用戶不能改變路徑到其它用戶目錄.在保密性較強的公共FTP環境中,這是一個非常不錯的功能.
在任何時間你都可以改變你的配置文件, 并確認后重啟vsftpd!
到此,關于“linux下vsftpd安裝和配置步驟”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。