CentOS6.5配置vsftp虛擬用戶全程記錄

CentOS6.5配置vsftp虛擬用戶全程記錄

一、 檢查selinux是否開啓,如果開啓,請先關閉以便調試

二、創建虛擬用戶文本文件,添加虛擬用戶和密碼

cd /etc/vsftpd/
touch  ftpusers.txt

編輯ftpusers.txt,設置用戶名、密碼,奇數行是用戶名,偶數是密碼

比如:

user1
123123
user2
123123

三、生成虛擬數據庫文件

如果db_load沒有安裝,yum install db4-utils db4-devel db4-4.3安裝才能使用

db_load –T –t hash –f /etc/vsftpd/ftpusers.txt  /etc/vsftpd/ftpusers.db 

四、 配置PAM認證

目的是對虛擬用戶進行登錄驗證

編輯/etc/pam.d/vsftpd文件,批註所有內容,後添加:

auth                 required     pam\_userdb.so   db=/etc/vsftpd/ftpusers
account              required     pam\_userdb.so   db=/etc/vsftpd/ftpusers

不能寫成db=/etc/vsftpd/ftpusers.db

五、修改虛擬數據庫文件ftpusers.db的權限

爲 700

chmod   700  ftpusers.db

六、增加一個系統用戶ftp

使用它來對應所有虛擬用戶,虛擬用戶使用系統用戶來訪問ftp服務器。

mkdir  /home/ftp  
useradd  -d  /home/ftp ftp  
chown  ftp:ftp  /home/ftp  
usermod -s /sbin/nologin ftp

七、修改vsftpd.conf配置文件

使虛擬用戶可以訪問vsftpd服務器,增加以下參數

#註釋掉原有端口配置
#connect_from_port_20=YES
#設置獨立進程控制vsftpd
listen=YES
#修改端口vsft接入端口
listent_port=9999       
#設置vsftp可隨機佔用的端口    
pasv_max_port=8000
pasv_min_port=7000
#激活虛擬賬戶
guest_enable=YES            
#把虛擬賬戶綁定爲系統賬戶ftp
guest_username=ftp           
#使用PAM驗證
pam_service_name=vsftpd     

"="兩邊不能有空格,請把所有註釋、空格全部刪掉,只留下文字和換行

八、 設置虛擬用戶的主配置文件

編輯vsftpd.conf文件,添加:

user_config_dir=/etc/ftp/ftp_user_conf

九、建立ftp_user_conf

mkdir /etc/ftp/ftp_user_conf

十、設置虛擬用戶配置文件

與虛擬賬戶同名

touch  /etc/ftp/ftp_user_conf/user1

編輯虛擬賬戶user1的配置文件user1,使虛擬賬戶user1獲得相應的權限,內容如下:

anon_world_readable_only=NO  
anon_upload_enable=YES  
anon_mkdir_write_enable=YES  
anon_other_write_enable=YES
anon_umask=022
local_root=/home/ftp/user1              

anon_world_readable_only=NO是否只讀
anon_upload_enable=YES允許上傳
anon_mkdir_write_enable=YES允許創建和刪除目錄
anon_other_write_enable=YES允許重命名和刪除文件
anon_umask=022配置上傳文件的默認權限
local_root=/home/ftp/user1
"="兩邊不能有空格,請把所有註釋、空格全部刪掉,只留下文字和換行

配置iptables

vim /etc/sysconfig/iptables
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
#ssh端口
-A INPUT -p tcp -m tcp --dport 111 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 111 -j ACCEPT
#允許迴環網卡所有端口,讓php-fpm正常運行
-A INPUT -i lo -j ACCEPT
#允許本機訪問外網
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#允許分配給vsftp的隨機端口
-A INPUT -p tcp -m tcp --dport 7000:8000 -j ACCEPT
COMMIT

附錄:

本次使用配置:

vsftpd.conf中:

listen_port指定ftp端口,修改前需先註釋掉系統默認配置的20端口

tcp_wrappers實現主機訪問控制

guest_enable允虛擬用戶

guest_username指定虛擬用戶映射的系統用戶

pam_service_name系統認證的服務名,vsftp的服務名就是vsftpd

user_config_dir指定虛擬用戶配置文件目錄

虛擬用戶名單ftpusers.txt:

虛擬用戶user1配置文件

vsftpd.conf部分解釋:

一:進程類別優化:

1.listen=YES/NO

設置獨立進程控制vsftpd

二:登錄和訪問控制選項優化:

1.anonymous_enable=YES/NO

允許/禁止匿名用戶登陸

2.banned_email_file=/etc/vsftpd/vsftpd.banned_emails

允許/禁止郵件的使用的存放路徑和目錄

配合使用:deny_email_enable=YES/NO

允許/禁止匿名用戶使用郵件作爲密碼

3.banner_file=/etc/vsftp/banner_file

在文件banner_file添加歡迎詞即可

4.cmds_allowed=HELP,DIR,QUIT,!

列出被允許使用的FTP命令

5.ftpd_banner=welcome to ftp server

和第三條一樣是歡迎詞屏幕,方法不一樣

6.local_enable=YES/NO

允許/禁止本地用戶登陸

7.pam_service_name=vsftpd

使用pam模塊進行ftp客戶端的驗證

8.userlist_deny=YES/NO

禁止/允許文件列表user_list的用戶訪問ftp服務器

配合使用:userlist_file=/etc/vsftpd/user_list

用戶列表文件

配合使用:userlist_enable=YES/NO

激活/失效第8條的功能

9.tcp_wrappers=YES/NO

啓用/不啓用tcp_wrappers控制服務訪問的功能

三:匿名用戶選項的優化:

1.anon_mkdir_write_enable=YES/NO

允許/禁止匿名用戶創建目錄、刪除文件

2.anon_root=/path/to/file

設置匿名用戶的根目錄,默認是/var/ftp/ 3.anon_upload_enable=YES/NO

允許/禁止匿名用戶上傳

4.anon_world_readable_only=YES/NO

禁止/允許匿名用戶瀏覽目錄和下載

5:ftp_username=anonftpuser

把匿名用戶綁定到系統用戶名

6:no_anon_password=YES/NO

不需要/需要匿名用戶的登錄密碼

四:本地用戶選項的優化:

1.chmod_enable=YES/NO

允許/禁止本地用戶修改文件權限

2.chroot_list_enable=YES/NO

啓用/不啓用禁錮本地用戶在家目錄

3.chroot_list_file=/path/to/file

建立禁錮用戶列表文件,一行一個用戶

4.guest_enable=YES/NO

激活/不激活虛擬用戶

5.guest_username=系統實體用戶

把虛擬用戶綁定在某個實體用戶上

6.local_root=/path/to/file

指定或修改本地用戶的根目錄

7.local_umask=具體權位數字

設置本地用戶新建文件的權限

8.user_config_dir=/path/to/file

激活虛擬用戶的的主配置文件

五:目錄選項的優化:

1.text_userdb_names=YES/NO

啓用/禁用用戶的名稱取代用戶的UID

六:文件傳輸選項優化:

1.chown_uploads=YES/NO

啓用/禁用修改匿名用戶上傳文件的權限

chown_username=賬戶

指定匿名用戶上傳文件的所有者

2.write_enable=YES/NO

啓用/禁止用戶的寫權限

max_clients=數字

設置FTP服務器同一時刻最大的連接數

4.max_per_ip=數字

設置每ip的最大連接數

七:網絡選項的優化:

1.anon_max_rate=數字

設置匿名用戶最大的下載速率(單位字節)

2.local_max_rate=數字

設置本地用戶最大的下載速率

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