linux ftp服務
主動模式port:伺服器主動發起資料連接配接。用戶端向伺服器21端口建立ftp資料連接配接。伺服器從20端口向用戶端随機端口發送資料。
被動模式pasv:伺服器被動等待資料連接配接。如果客戶機防火牆禁止主動模式,會采用被動模式。用戶端向伺服器21端口建立ftp資料連接配接。需要傳輸資料時,用戶端向伺服器設定範圍内的端口(非20)建立資料連接配接。
開始:
關閉安全系統
setenforce 0
關閉防火牆
service iptables stop
1. 安裝軟體包
mount /dev/cdrom /mnt
rpm -ivh /mnt/packages/vsftpd-2.2.2-11.el6.i686.rpm
2. 修改配置檔案
vi /etc/vsftpd/vsftpd.conf
(1)匿名通路
修改配置檔案語句:
允許匿名通路
anonymous_enable=yes
上傳檔案預設掩碼值
local_umask=022
允許匿名使用者上傳檔案
anon_upload_enable=yes
允許匿名使用者建立目錄,寫入權限
anon_mkdir_write_enable=yes
允許匿名使用者删除、覆寫、重命名
anon_other_write_enable=yes
限制匿名使用者最大傳輸速率
anon_max_rate=10240
儲存,啟動服務
service vsftpd start
(2)本地使用者通路
local_enable=yes 允許本地使用者通路
local_root=/var/ftp 設定登入ftp家目錄
write_enable=yes 啟用vsftpd 服務總開關
local_umask=022 使用者上傳檔案/目錄權限掩碼
chroot_local_user=yes 鎖定本地賬戶在家目錄
儲存,service vsftpd reload 。
直接輸入本地使用者賬号密碼即可登入
user_list使用者清單檔案
vi /etc/vsftpd/user_list
輸入本地賬戶名,如jack
userlist_enable=yes 啟用使用者清單檔案
userlist _deny=no 白名單,隻有user_list中的使用者才能通路ftp
userlist _deny=yes 黑名單,user_list中的使用者不能通路ftp
系統預設為yes
修改vsftpd服務監聽位址、端口
listen=yes 允許獨立監聽
listen_address= 隻在一個接口監聽服務
listen_port= 監聽端口改為
netstat -anpt | grep “vsftpd” 确認vsftpd監聽情況
pasv_enable=yes 允許被動連接配接
pasv_min_port=24500 指定被動模式下限端口
pasv_max_port=24600 指定被動模式上限端口
max_clients=20 限制并發客戶連接配接最多20個
max_per_ip=2 每個ip連接配接數最多2個
anan_max_rate=50000 限制匿名使用者傳輸速率50kb/s
local_max_rate=200000 限制匿名使用者傳輸速率200kb/s
(3)虛拟使用者通路ftp
首先挂載,安裝軟體包
mount /dev/cdrom /mnt
rpm -ivh /mnt/packages/db4-utils-4.7.25-17.el6.i686.rpm
建立文本格式使用者名密碼清單
vi /etc/vsftpd/vusers 建立名為vusers檔案
t01 設定賬号
abc 密碼
t02
abc
建立資料庫檔案
cd /etc/vsftpd/
将文本檔案轉化成資料庫檔案
db_load -t -t hash -f vusers vusers.db
更改使用者賬号檔案權限
chmod 600 /etc/vsftpd/vusers
chmod 600 /etc/vsftpd/vusers.db
添加虛拟使用者映射賬号
useradd -d /var/ftproot -s /sbin/nologin vusers 使用者名vusers
為虛拟使用者建立pam認證檔案
vi /etc/pam.d/vsftpd.vu
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
修改vsftpd檔案配置
local_enable=yes
write_enable=yes
guest_enable=yes
guest_username=vusers
pam_service_name=vsftpd.vu
#pam_service_name=vsftpd
儲存,重新開機vsftpd服務
然後可以使用t01登入了,密碼abc
為不同虛拟使用者建獨立配置檔案
user_config_dir=/etc/vsftpd/vusers_dir
儲存
mkdir /etc/vsftpd/vusers_dir
cd /etc/vsftpd/vusers_dir
vi t01
local_root=/var/t01 設定登入家目錄
anon_upload_enable=yes 允許上傳檔案
anon_mkdir_write_enable=yes 允許寫入權限
儲存,重新開機服務
mkdir /var/t01
這時候用t01登入時,會登入在/var/t01裡
vi t02
local_root=/var/t02
mkdir /var/t02
用t02登入時,會登入在/var/t02裡