LINUX FTP安裝與配置

轉自網絡:

1.安裝vsftpd

yum install vsftpd


2.啓動/重啓/關閉vsftpd服務器

[root@localhost ftp]# /sbin/service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]


OK表示重啓成功了。
啓動和關閉分別把restart改爲start/stop即可。如果是源碼安裝的,到安裝文件夾下找到start.sh和shutdown.sh文件,執行它們就可以了。


3.與vsftpd服務器有關的文件和文件夾
vsftpd服務器的配置文件的是: /etc/vsftpd/vsftpd.conf
vsftpd服務器的根目錄,即FTP服務器的主目錄:

[root@localhost ftp]# more /etc/passwd|grep ftp
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin


這樣你就能看到FTP的服務器的目錄在/var/ftp處.如果你想修改服務器目錄的路徑,那麼你只要修改/var/ftp到別處就行了

4.添加FTP本地用戶

有的FTP服務器需要用戶名和密碼才能登錄,就是因爲設置了FTP用戶和權限.FTP用戶一般是不能登錄系統的,只能進入FTP服務器自己的目錄中,這是爲了安全.這樣的用戶就叫做虛擬用戶.實際上並不是真正的虛擬用戶,只是不能登錄SHELL了而已,沒能力登錄系統.

/usr/sbin/adduser -d /opt/ftp -g ftp -s /sbin/nologin ftpuser


這個命令的意思是:
使用命令(adduser)添加ftpuser用戶,不能登錄系統(-s /sbin/nologin),自己的文件夾在(-d /opt/ftp)),屬於組ftp(-g ftp).然後你需要爲它設置密碼 passwd ftp.這樣就添加了一個FTP用戶了.下面的示例可以幫助你進入FTP服務器了.

要保證自己能讀寫自己的目錄,就要在配置文件vsftpd.conf裏設置一下就可以讀寫了.

local_enable=yes
write_enable=yes
local_umask=022


5.匿名上傳下載

修改配置文件即可vsftpd.conf,確定有以下幾行,沒有自己添加進去就可以了.

anonymous_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_umask=022


然後你可以新建一個文件夾,修改它的權限爲完全開放,任何用戶就可以登錄這個文件夾,並上傳下載文件:

mkdir /var/ftp/guest
chmod 777 /var/ftp/guest


6.定製進入FTP服務器的歡迎信息

在vsftpd.conf文件中設置:
dirmessage_enable=yes
然後進入用戶目錄建立一個.message文件,輸入歡迎信息即可。

7.實現虛擬路徑

將某個目錄掛載到FTP服務器下供用戶使用,這就叫做虛擬路徑.比如將gxl用戶的目錄掛載到FTP服務器中,供FTP服務器的用戶使用,使用如下命令即可:

[root@localhost opt]# mount –bind /home/gxl /var/ftp/pub #使用掛載命令
[root@localhost opt]# ls /var/ftp/pub LumaQQ Screenshot.png 桌面


8.打開vsFTPd的日誌功能
添加下面一行到vsftpd.conf文件中,一般情況下該文件中有這一行,只要把前面的註釋符號#去掉即可,沒有的話就添加,或者修改:

xferlog_file=/var/log/vsftpd.log


9.限制鏈接數,以及每個IP最大的鏈接數
修改配置文件中,例如vsftp最大支持鏈接數100個,每個IP能支持5個鏈接:

max_clients=數字
max_per_ip=數字


10.限制傳輸速度
修改配置文件中,例如讓匿名用戶和vsftd上的用戶(即虛擬用戶)都以80KB=1024*80=81920的速度下載

anon_max_rate=81920
local_max_rate=81920


11.將用戶(一般指虛擬用戶)限制在自家目錄
修改配置文件中,這樣用戶就只能訪問自己家的目錄了:chroot_local_user=yes
如果只想某些用戶僅能訪問自己的目錄,其它用戶不做這個限制,那麼就需要在chroot_list文件(此文件一般是在/etc/vsftpd/中)中添加此用戶.編輯此文件,比如將test用戶添加到此文件中,那麼將其寫入即可.一般的話,一個用戶佔一行.

[root@localhost vsftpd]# cat chroot_list
ftpuser


12.綁定某個IP到vsFTPd
有時候要限制某些IP訪問服務器,只允許某些IP訪問,例如只允許192.168.0.33訪問這個FTP,同樣修改配置文件:

listen_address=192.168.0.33


配置vsftpd.conf 

anonymous_enable=NO                  #禁止匿名
local_enable=YES                     #允許本地登錄
write_enable=YES                     #允許寫,如需上傳,則必須
local_umask=027                      #將上傳文件的權限設置爲:777-local_umask
anon_upload_enable=YES               #允許虛擬用戶和匿名用戶上傳
anon_other_write_enable=YES          #允許虛擬用戶和匿名用戶修改文件名和刪除文件
dirmessage_enable=YES
xferlog_enable=YES                   #打開日誌記錄
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log     #日誌存放位置
xferlog_std_format=YES               #標準日誌格式
idle_session_timeout=600             #空閒連接超時
data_connection_timeout=120   
ftpd_banner=Welcome to ChinaRise FTP service       #歡迎信息
guest_enable=yes                     #允許虛擬用戶
guest_username=vsftpdguest           #虛擬用戶使用的系統賬號
virtual_use_local_privs=YES          #虛擬用戶擁有本地系統權限
   
chroot_local_user=YES
chroot_list_enable=YES
#以上兩行將虛擬用戶限制在其目錄下,不能訪問其他目錄,或直接用
chroot_local_user=YES                                  

listen=yes                #監聽/被動模式
listen_port=21            #監聽端口

chroot_list_file=/etc/vsftpd/vsftpd.chroot_list    #虛擬用戶名單保存在文件/etc/vsftpd/vsftpd.chroot_list 中
user_config_dir=/etc/vsftpd/vsftpd_user_conf       #每個虛擬用戶名的更加詳細的培植保存在/etc/vsftpd/vsftpd_user_conf 中


虛擬用戶其他設置

在/etc/vsftpd/vsftpd.chroot_list 文件中寫入允許登陸的虛擬用戶名稱,每行一個在/etc/vsftpd/vsftpd_user_conf 文件夾中創建一個以虛擬用戶用戶名命名的文件,寫:local_root = /var/FTP/子目錄名,然後在/var/FTP下創建一個對應的目錄即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章