Linux CentOS環(huán)境下使用vsftpd搭建ftp服務(wù)器-安裝、配置
編輯:狂族晨曦 來(lái)源:系統(tǒng)運(yùn)維,經(jīng)驗(yàn)雜筆 日期:2016-10-19 閱讀: 3,144 次 2 條評(píng)論 » 百度已收錄
FTP在服務(wù)器中是門戶集的應(yīng)用,幾乎人人都有接觸。先森在公司上班也有三個(gè)月了,F(xiàn)TP的搭建也有了自己的一個(gè)文檔,最近都沒(méi)有怎么更新博客了,所以把自己用的部署文檔整理一下發(fā)布出來(lái),有問(wèn)題還請(qǐng)指點(diǎn)。
公司服務(wù)器用的FTP服務(wù)器都是清一色的vsftpd,所以本文是用vsftpd搭建FTP服務(wù)器。另外,先森發(fā)現(xiàn),萬(wàn)網(wǎng)免費(fèi)虛擬主機(jī)用的FTP也是vsftpd。

vsftpd
vsftpd安裝
安裝沒(méi)有什么說(shuō)的,vsftpd可以直接yum安裝,也可以下載rpm包安裝:
rpm -ivh vsftpd-2.2.2-11.el6_4.1.x86_64.rpm
因?yàn)橄壬玫氖荂entOS 6.8的系統(tǒng),默認(rèn)安裝的vsftpd版本為2.2.2的。
相關(guān)命令如下:
# 啟動(dòng)ftp服務(wù) service vsftpd start # 查看ftp服務(wù)狀態(tài) service vsftpd status # 重啟ftp服務(wù) service vsftpd restart # 關(guān)閉ftp服務(wù) service vsftpd stop
創(chuàng)建FTP用戶
首先創(chuàng)建一個(gè)不能登錄系統(tǒng)的用戶:
useradd -d /web/data/ftp -s /sbin/nologin -M xsftp
useradd參數(shù)解釋:
-d:設(shè)置用戶根目錄 -s:設(shè)置用戶登錄后所用的shel -M:創(chuàng)建用戶不自動(dòng)創(chuàng)建根目錄
設(shè)置用戶權(quán)限到文件夾
chown -R xsftp /web/data/ftp
設(shè)置權(quán)限
chmod 777 /web/data/ftp
設(shè)置密碼
passwd amtftp -> 密碼 -> 確認(rèn)密碼
有時(shí)候需要修改FTP用戶的根目錄,下面說(shuō)下怎么修改。
usermod -d /usr/newfolder -u uid username
uid:用戶UID,可在/etc/passwd中查到。
username:用戶名
修改配置文件
vsftpd的配置
配置文件:/etc/vsftpd/vsftpd.conf
vi /etc/vsftpd/vsftpd.conf
修改以下參數(shù):
anonymous_enable=NO # YES改為NO,禁止匿名用戶登錄
取消注釋:
chroot_local_user=YES #是否將所有用戶限制在主目錄,YES為啟用,NO或者注釋為禁用
末尾添加:
pasv_enable=yes #開(kāi)啟FTP被動(dòng)模式 pasv_max_port=6666 pasv_min_port=5555 # FTP被動(dòng)模式所用端口范圍5555到6666
保存退出
防火墻iptables的配置,開(kāi)啟FTP端口
vim /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 5555:6666 -j ACCEPT service iptables restart
【限制用戶只能訪問(wèn)其主目錄】
很多情況下,我們希望限制ftp用戶只能在其主目錄下(root dir)下活動(dòng),不允許他們跳出主目錄之外瀏覽服務(wù)器上的其他目錄,這時(shí)候我就需要使用到chroot_local_user,chroot_list_enable,chroot_list_file這三個(gè)選項(xiàng)了。
chroot_local_user #是否將所有用戶限制在主目錄,YES為啟用,NO禁用.(該項(xiàng)默認(rèn)值是NO,即在安裝vsftpd后不做配置的話,ftp用戶是可以向上切換到要目錄之外的) chroot_list_enable #是否啟動(dòng)限制用戶的名單 YES為啟用,NO禁用(包括注釋掉也為禁用) chroot_list_file=/etc/vsftpd/chroot_list #是否限制在主目錄下的用戶名單
至于是限制名單還是排除名單,這取決于chroot_local_user的值,我們可以這樣記憶: chroot_local_user總是一個(gè)全局性的設(shè)定,其為YES時(shí),全部用戶被鎖定于主目錄,其為NO時(shí),全部用戶不被鎖定于主目錄。那么我們勢(shì)必需要在全局設(shè)定下能做出一些“微調(diào)”,即,我們總是需要一種“例外機(jī)制",所以當(dāng)chroot_list_enable=YES時(shí),表示我們“需要例外”。而”例外“的含義總是有一個(gè)上下文的,即,當(dāng)”全部用戶被鎖定于主目錄“時(shí)(即chroot_local_user=YES),"例外"就是:不被鎖定的用戶是哪些;當(dāng)"全部用戶不被鎖定于主目錄"時(shí)(即chroot_local_user=NO),"例外"“就是:要被鎖定的用戶是哪些。這樣解釋和記憶兩者之間的關(guān)系就很清晰了!
歷史上的今天:
轉(zhuǎn)載請(qǐng)注明出處來(lái)自http://www.cnidcc.cn/vsftpd.html

川公網(wǎng)安備 51011202000104號(hào)
博主現(xiàn)在越來(lái)越6了
博主越來(lái)越牛越來(lái)越豪了!