Linux vsFTPD安裝與配置文件和配置虛擬用戶
你們知道什么是Linux vsFTPD么這個非常高深的運用技術將由我來非常講解,Linux vsFTPDNB在哪呢,下面我來帶大家進入Linux vsFTPD的無限領域。Linux vsFTPD是一款小巧易用FTP服務器程序,是一款在Linux發(fā)行版中最受推崇的FTP服務器程序,特點是小巧輕快,安全易用。
Linux vsFTPD的安裝
在最新的各大發(fā)行版中的安裝盤中都有Linux vsFTPD的軟件包,用相應發(fā)行版提供的軟件包管理工具就能安裝。當然也可以到各大發(fā)行版的FTP鏡像中找到Linux vsFTPD的軟件包,用軟件包的管理工具在線安裝。推薦用發(fā)行版提供的軟件來安裝,不推薦自己編譯源碼包的安裝方式。Fedora 或Redhat 系統(tǒng),可以用下面的命令在線安裝;
- [root@localhost ~]# yum install vsftpd
- 如果是debian 類系統(tǒng),可以用apt 來在線安裝;
- [root@localhost ~]# apt-get install vsftpd
- 如果是RPM的系統(tǒng),也可以找到vsftpd-xxxx.rpm 的包來通過rpm命令來安裝;
- [root@localhost ~]# rpm -ivh vsftpd*.rpm
- 下載源碼包安裝
- [root@localhost ~]# tar zxvf vsftpd-2.0.3.tar.gz
- [root@localhost ~]# cd vsftpd-2.0.3
- [root@localhost ~]# make ;make install
- [root@localhost ~]# cp vsftpd.conf /etc
- 然后修改/etc/vsftpd.conf ,在配置文件的最后一行加入下面一行;listen=yes
源碼包安裝的方法,如果您的系統(tǒng)是RPM包管理的系統(tǒng),可以刪除/etc/xinetd.d/vsftpd 這個文件;然后啟動xinetd 服務器;
- [root@localhost ~]# /etc/init.d/xinetd restart
- 停止 xinetd: [ 確定 ]
- 啟動 xinetd: [ 確定 ]
- vsFTPd服務器的運行
- [root@localhost ~]# /usr/sbin/vsftpd &
- [root@localhost ~]# /usr/local/sbin/vsftpd &
- vsFTPd 服務器關閉
用pkill vsftpd 來殺死Linux vsFTPD進程,這樣就把Linux vsFTPD關閉,用psgrep vsftpd 來查看進程,如果沒有進程,證明Linux vsFTPD已經關掉;要用到root權限。
- [root@localhost ~]# pkill vsftpd
- [root@localhost ~]# pgrep vsftpd
- 在Fedora/Redhat/CentOS中vsFTPd 服務器的啟動和關閉:
- 在Fedora/Redhat/CentOS中,也可以用下面的方法來啟動vsFTPd;當然也要用到root權限;
- [root@localhost beinan]# /etc/init.d/vsftpd start
- 為 vsftpd 啟動 vsftpd: [ 確定 ]
- 重新啟動vsFTPd用下面的命令;
- [root@localhost beinan]# /etc/init.d/vsftpd restart
- 關閉 vsftpd: [ 確定 ]
- 為 vsftpd 啟動 vsftpd: [ 確定 ]
- 關掉vsFTPd服務器,應該用下面的命令;
- [root@localhost beinan]# /etc/init.d/vsftpd stop
- 關閉 vsftpd: [ 確定 ]
Linux vsFTPD配置文件
vsftpd.conf是Linux vsFTPD服務器的配置文件,此文件一般是/etc/vsftpd.conf或 /etc/vsftpd/vsftpd.conf,vsftpd.conf配置文件就是Linux vsFTPD服務器的全局控制文件,此配置文件中,每行應該算做一 個規(guī)則。配置完后需要重啟才有效。
Linux vsFTPD配置虛擬用戶
FTP用戶一般是不能登錄系統(tǒng)的,這也是為了安全。在系統(tǒng)中,沒有權限登錄系統(tǒng)的用戶一般也被稱之為虛擬用戶;虛擬用戶也是要寫進 /etc/passwd中;這只是一種虛擬用戶的方法,但說實在的并不是真正的虛擬用戶,只是把他登錄SHELL的權限去掉了,所以他沒有能力登錄系統(tǒng);如果我們想把beinan這個用戶目錄定位在/opt/beinan這個目錄中,并且不能登錄系統(tǒng);我們應該如下操作。
- [root@localhost ~]# adduser -d /opt/beinan -g ftp -s /sbin/nologin beinan
- [root@localhost ~]# passwd beinan
- Changing password for user beinan.
- New password:
- Retype new password:
- passwd: all authentication tokens updated successfully.
- [root@localhost ~]#
- 其實這還是不夠的,還要改一下配置文件vsftpd.conf ,以確保本地虛擬用戶能有讀寫權限;
- local_enable=YES
- write_enable=YES
- local_umask=022
- 如何實現(xiàn)虛擬路徑?
比如:
- /home/a 映射為 ftp://localhost/a
- /home/b/c 則為 ftp://localhost/c
- 可以通過如下的方法來實現(xiàn)。
- [root@localhost ~]# mount –bind [原有的目錄] [新目錄]
- 比如我的ftp的默認目錄是/var/ftp,我想把/mnt/LinG/WinSoft文件夾,映射到/var/ftp目錄中,我就如下操作
我們要先在/var/ftp目錄中建一個目錄
- [root@localhost ~]# mkdir /var/ftp/WinSoft
- 然后執(zhí)行mount命令
- [root@localhost ~]# mount –bind /mnt/LinG/WinSoft /var/ftp/WinSoft
- 這樣就OK了。
打開Linux vsFTPDv服務器的日志功能
把下面xferlog_file前面的#號對掉,也就是把vsftp的log功能打開,這樣我們就能在/var/log目錄下查看vsftpd.log。這是vsFTP的日志功能,這對于我們來說是極為重要的。xferlog_file=/var/log/vsftpd.log如何讓vsFTP服務器限制鏈接數(shù),以及每個IP最大的鏈接數(shù)?應該改Linux vsFTPD服務器的配制文件vsftpd.conf,加入下面的兩行:
- max_clients=數(shù)字
- max_per_ip=數(shù)字
- 舉例:我想讓我的vsFTP最大支持鏈接數(shù)為100個,每個IP,最多能支持5個鏈接,所以我應該在vsftpd.conf中加上如下的兩行:
- max_clients=100
- max_per_ip=5
- 如何限制傳輸速度?
- anon_max_rate=數(shù)字
- 注:這是匿名的速度
- local_max_rate=數(shù)字
- 注:這是vsFTP服務器上本地用戶的速度
- 注:這個數(shù)字的單位是byte,所以我們要計算一下。
- 比如我想讓匿名用戶和vsFTP上的用戶都以80KB下載,所以這個數(shù)字應該是1024×80=81920
- 所以我們要在vsftpd.conf中加入下面的兩行
- anon_max_rate=81920
local_max_rate=81920
【編輯推薦】