vsftpd

1 先裝ftp服務 yum installvsftpd –y

  設置開機啓動 chkconfig vsftpd on 啓動服務 /etc/init.d/vsftpd start

 設置防火牆,讓防火牆添加此服務爲信任服務或者刷掉防火牆 iptables–F或者關閉防火牆/etc/init.d/iptables stop

 查看防火牆 iptables –nL

2 新建ftp發佈目錄如下:(selinux是關閉的setenforce0

cd /var/ftp 

mkdir test

chmod 775 test/

chgrp ftp test/ 此時可以進入發佈目錄了,但不能上傳和下載,要上傳更改配置文件如下:

vi /etc/vsftpd/vsftpd.conf 更改如下:

anon_uploadenable=YES 的註解去掉就可以上傳了。更改完一定重啓服務 /etc/init.d/vsftpd restart

Chmod 777 /var/ftp/test  這樣纔可以上傳,要不我們登陸的默認是anonymous,對755的話對目錄沒有寫的權限,不能上傳,不改目錄權限也可以,lftp的時候加上-u ftp指明用戶,反正目錄要有對應的用戶的x權限

設置可以下載:vi/etc/vsftpd/vsftpd.conf 更改如下:

添加anon_umask=022 重啓服務後就可以下載了

3 設置其他用戶可以更改家目錄 lftp 192.168.0.191 –u lee 此時ls 看不了容易 selinux 打開)500 錯誤

       Chcon–t public_content_t test

       Getsebool–a | grep ftp

      Setsebool –P ftp_home_dir on  此時lee用戶可以進入test目錄了。但不可以新建文件夾

       如果selinux 打開爲 setenforce 1 就不能上傳了 要更改安全上下文

Semanage       fcontext  -a -t  public_content_rw_t  ‘/var/ftp/pub(/.*)?’ 更改安全上下文

 Restorecon  -RFvv     /var/ftp/pub/

4          setenforce 1 打開selinux

 netstat –antlpe  | grep vsftpd 查看ftp 的端口

       Semanage       fcontext -a  -t  public_content_rw_t  ‘/var/ftp/pub(/.*)?’ 更改安全上下文

 Restorecon  -RFvv     /var/ftp/pub/

 getsebool –a | grep ftp

 setsebool –P allow_ftpd_anon_write  on 就可以上傳了

5 更改發佈目錄

  Man5  vsftpd.conf 

 /root

vi /etc/vsftpd/vsftpd.conf  更改如下:

添加anon_root=/vsftpd/pub

Mkdir –p /vsftpd/pub  touch/vsftpd/pub  file

/etc/init.d/vsftpd  restart

lftp localhost    ls 查看有沒有file 但在此目錄下不能上傳和下載

 chmod 775 /vsftpd  -R 更改安全上下文

semanage fcontext –a –t public_content_t ‘/vsftpd/pub(/.*)?’

semanage fcontext –a –t public_content_t ‘/vsftpd(/.*)?’

restorecon –RFvv /vsftpd/

restorecon –RFvv  /vsftpd/pub/

ls –Zd

vi /etc/vsftpd/vsftpd.conf 更改如下:

打開anon_upload_enable=YES

     Anon_mkdir_write_enable=YES

添加anon_world_readable_only=NO

       Anon_other_write_enable=YES

問題:

ls: Login failed: 500 OOPS: vsftpd:refusing to run with writable anonymous root

解決:ftp的家目錄(就是ftp進去時候默認的目錄權限不能爲777

Chmod 775 /ftp家目錄

5          用戶登錄可以更改根目錄 vi /etv/vsftpd/vsftpd.conf 更改如下:

  添加 chown_uploads=YES

              Chown_username=leo

/etc/init.d/vsftpd restart

Setenforce 0

Lftp –u lee localhost

Ls 可以看到更目錄

Setenforce 1 就不能了

Getsebool –a | grep ftp

Setsebool –P ftp_home_dir on

6 編寫白名單(chroot_list_file

Vi /etc/vsftpd/chroot_list 添加容許更改目錄的用戶姓名

       Chroot_local_user=YES

       Chroot_list_enable=YES

     Chroot_list_file=/etc/vsftpd/chroot_list

7虛擬用戶

 Cd/etc/vsftpd

Vi user (虛擬用戶名單和密碼)

user1   

user1passwd

user2   

user2passwd

格式像這樣

Yum install  db4-utils  -y安裝加密軟件

Db_load –T –t hash –f user login.db

如果有錯誤,吧login.db刪除,在執行上面的:

Db_load –T –t hash –f user login.db

Vim /etc/vsftpd/vsftpd.conf更改如下:

在最下面添加如下:

Pam_server_name=virtual

Userlist_enable=YES

Tcp_wrappers=YES

Guest_enable=YES

Guest_username=ftp

Local_root=/var/ftp/virtual/$USER

User_sub_token=$USER

/etc/init.d/vsftpd  restart

 Cd  /etc/pam.d/

 Vim     virtual更改如下:

auth               required         /lib64/security/pam_userdb.so(64位操作系統,32位的話/lib/security/pam_userdb.so)      db=/etc/vsftpd/login

auth               required         /lib64/security/pam_userdb.so(64位操作系統,32位的話/lib/security/pam_userdb.so)       db=/etc/vsftpd/login

lftp –u user1 localhost  ls 看有沒有file1驗證

lftp –u user2  localhost ls 看有沒有file2

cd /var/ftp/

mkdir virtual/

cd virtual

mkdir user1 mkdir user2

cd uer1 touch file1

cd ../user2

touch file2

7更改接聽端口

 List_port5000

 /etc/init.d/vsftpd restart

Netstat –antlpe | grep ftp

Lftp localhost:5000

8 ftp限制內外網的上傳下載速度

先在本機上加一塊網卡:

Cd /etc/sysconfig/network-script/

Cp ifcig-eth0 ifcig-eth0:0

Vi eth0:0 更改如下:

DEVICE=eth0:0

BOOTPROTO=none

ONBOOT=yes

IPADDR=192.168.0.252  NETMASK GATEWAY  DNS1  DNS2 重啓網絡

Vi /etc/vsftpd/vsftpd.conf 更改如下

Listen = YES

Listen_address=192.168.0.251

Local_max_rate=102400

Anon_max_rate=10240

重啓服務

Netstat –antlpe | grep ftp 查看

Cd /etc/vsftpd

Cp vsftpd.conf  vsftpd1.conf

Vi vsftpd1.conf 更改如下:

Listen = YES

Listen_address=192.168.0.252

Local_max_rate=102400

Anon_max_rate=10240

重啓服務


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