歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> 學習Linux >> vsftp,vsftpd

vsftp,vsftpd

日期:2017/3/3 17:30:53   编辑:學習Linux

vsftp,vsftpd


熱度4 評論 224 www.BkJia.Com 網友分享於: 2017-02-21 04:02:03 浏覽數18525次

vsftp,vsftpd


1 yum install vsftpd -y
2 iptables -I INPUT 1 -p tcp --dport 20:21 -j ACCEPT
3 service iptables save

1 vim /etc/vsftpd/vsftpd.conf
 1 anonymous_enable=YES // 匿名帳戶可登陸
 2 anon_root=/var/ftp/ // 匿名用戶登錄目錄 默認為 /var/ftp/
 3 local_enable=YES // 本地帳戶可以登陸
 4 write_enable=YES //用戶通過ftp在服務器上是否有寫權限
 5 local_umask=022 // 創建時默認權限。文件夾=777-umask,文件=666-umask
 6 anon_upload_enable=YES // 允許匿名帳戶上傳
 7 anon_mkdir_write_enable=YES // 允許匿名帳戶創建文件夾
 8 dirmessage_enable=YES // 是否開啟 .message 文件信息描述
 9 xferlog_enable=YES // 是否啟用日志
10 connect_from_port_20=YES  // 默認值為YES,指定FTP數據傳輸連接使用20端口。若設置為NO,則進行數據連接時,所使用的端口由ftp_data_port指定。
11 ftp_data_port=20      //設置PORT方式下FTP數據連接所使用的端口,默認值為20。
12 chown_uploads=YES // 開啟匿名帳戶上傳自動更改所屬功能
13 chown_username=bob // 屬主改為bob
14 xferlog_file=/var/log/xferlog // 日志存儲位置
15 idle_session_timeout=600 //空閒會話超時時間
16 data_connection_timeout=120 // 設置ftp 連接超時時間
17 ascii_upload_enable=YES //以ASCII方式上傳
18 ftpd_banner=Welcome to blah FTP service. //歡迎界面
19 chroot_list_enable=YES //開啟用戶更改根目錄功能,默認為禁用更改根
20 chroot_list_file=/etc/vsftpd.chroot_list //該文件中所有用戶啟用chroot
21 anon_other_write_enable=YES // 允許匿名帳戶刪除、重命名
22 anon_root=/ftp // 更改匿名帳戶根目錄,默認為"/var/ftp"
23 local_root=/local // 更改本地帳戶根目錄為/local,默認為用戶主目錄
24 userlist_enable=YES // 開啟用戶列表功能
25 userlist_deny=YES // 用戶列表文件中所有帳戶全拒絕。NO時,只有列表中用戶能登陸
26 deny_file={*.xxx} //限制用戶上傳的文件類型
27 userlist_file=/etc/vsftpd.user_list // 用戶列表文件
28 anon_max_rate=0 // 匿名用戶最大傳輸速率,0為無限
29 local_max_rate=0 // 本地用戶最大傳輸速率,0為無限
30 max_clients=0 // 最大客戶端連接數,0為無限
31 max_per_ip=5 //每個ip的最大客戶端數目
32 pasv_max_port=0 // 客戶端端口最大限制,0為無限制
33 pasv_min_port=0 // 客戶端端口最小限制,0為無限制
34 connect_from_port20=YES //使用標准的20端口來連接ftp
35 listen_address=192.168.10.14 //綁定到某個ip,其它ip不能訪問
36 anon_upload_enable=YES // 允許上傳
37 anon_world_readable_only=YES //允許下載
38 anon_mkdir_write_enable=YES //允許新建目錄
39 anon_other_write_enable=YES //擁有其它權限
40 local_root=/var/ftp/ziji //用戶的文件夾



anon_world_readable_only 默認情況下,匿名用戶所有上傳下載,所使用的用戶都是ftp用戶的權限,若要上傳文件,則需要ftp用戶有寫的權限,若要下載,則需要ftp用戶有讀的權限,也就是說一般情況下,ftp用戶對文件有讀權限就對文件有下載權限了 文件有三種權限,文件所有人,文件所有組,文件的其他人,這個anon_world_readable_only參數意思是,當他為YES時候,文件的其他人必須有讀的權限才允許下載,單單所有人為ftp且有讀權限是無法下載的,必須其他人也有讀權限,才允許下載,這是為安全性的一方面考慮,若為NO則只要ftp用戶對文件有讀權限即可下載

1.在linux centos6.5 中 允許本地用戶登錄後 卻不能登錄解決方法 方法一:將setenforce 設置為0 方法二:修改布爾值 setsebool -P ftp_home_dir on 2.上傳文件的方式 bin模式 一般為一些不可編輯的文件 ascii 模式 一般為一些可以編輯的文件 上傳命令 put 文件路徑 使用匿名用戶是登錄到/var/ftp/ 這個文件夾的,因為對這個目錄沒有權限,所以不能上傳文件。解決方法: mkdir /var/ftp/ceshi //創建一個目錄 chown ftp:ftp ceshi //更改文件的所有人和所有組 然後修改布爾值: setsebool -P allow_ftpd_anon_write on setsebool -P allow_ftpd_full_access on 3.對本地用戶進行chroot處理 當只啟用 chroot_local_user=YES 時,則對所有用戶進行chroot處理 當只啟用 chroot_list_enable=YES 時,只對list文件用戶進行chroot處理 當同時啟用這兩個文件時,則除了list文件用戶外,剩下的進行chroot處理 4.限制用戶登錄方法: 啟用pam_service_name=vsftpd userlist_enable=YES 方法一: echo 用戶名 > ftpusers 方法二: echo 用戶名 > user_list 5.添加虛擬用戶 ① 添加虛擬用戶口令文件: touch vsftpd_login.txt 文件裡奇數行寫用戶名 偶數行 寫密碼 ② 生成vsftpd的認證文件:使用db_load命令生成認證文件,“-f”命令選項設置的值是虛擬用戶的口令庫文件,即vsftpd_login.txt,命令的參數設置為需要生成的認證文件名vsftpd_login.db,該文件必須和口令文件放在一個文件夾下。注意:db_load 在centos6.5中自帶,centos5.5總必須安裝db4_utils這個軟件包才支持。最好對這個文件進行權限更改 ③建立虛擬用戶所需的PAM配置文件:修改/etc/pam.d/vsftpd文件 將默認配置全部用“#”注釋在最後添加 auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login (文件的路徑可以到文件夾下面查看) ④建立虛擬用戶所對應的本地賬戶:useradd -d /var/ftp/user1 user1 ⑤在配置文件裡添加 user_config_dir=用戶配置文件目錄 在目錄下建立虛擬用戶文件 進行配置相應的權限,需要注意的是 需要啟用本地用戶的登錄,這樣虛擬用戶才可以登錄 6,基於ip的虛擬vsftp服務 ①添加ip地址: ip addr add 192.168.10.141/24 dev eth0 label eth0:1 ②配置文件 cp -p ifcfg-eth0 ifcfg-eth0:1 ③對配置文件修改 並重啟網卡 ④cp -p vsftpd.conf vsftpd2.conf 在配置文件中添加listen_address=IP地址

http://www.bkjia.com/Linuxjc/1194393.html TechArticle

Copyright © Linux教程網 All Rights Reserved