CentOS配置vsftpd

來源:互聯網
上載者:User

Vsftp 安裝配置

 

1.查看是否安裝vsftp
rpm –qa|grep vsftpd
如果出現     vsftpd-2.0.5-16.el5_5.1  說明已經安裝 vsftp

安裝vsftp

yum -y install vsftpd

 

2.測試 是否安裝成功  (ip 改成自己啊,不要用俺的此次登入狀態匿名登入 user: anonymous 密碼為空白 如果成功登入會有下面內容  這說明vsftpd安裝成功)

[root@localhost ~]#service vsftpd start

為 vsftpd 啟動 vsftpd:[確定]

[root@localhost ~]#ftp 192.168.1.107

Connected to192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please loginwith USER and PASS.

530 Please loginwith USER and PASS.

KERBEROS_V4 rejectedas an authentication type

Name(192.168.1.107:root): anonymous

331 Please specifythe password.

Password:

230 Loginsuccessful.

Remote system typeis UNIX.

Using binary mode totransfer files.

ftp> bye

221 Goodbye.

[root@localhost ~]#

 

 

3.修改設定檔/etc/vsftpd/vsftpd.conf

[root@localhost ~]#vi /etc/vsftpd/vsftpd.conf

 

取消下面內容前面的注釋或添加

anonymous_enable=YES/NO  是否允許匿名使用者存取

chroot_list_enable=YES 限定使用者不可以離開主目錄

chroot_list_file=/etc/vsftpd/chroot_list

loca_enable=YES/NO 本機使用者是否可以訪問 註:如果為NO 則所有虛擬使用者都將不能訪問原因:虛擬使用者訪問在主機上其實是以本機使用者訪問的

pam_service_name=vsftpd  pam認證檔案名稱 在/etc/pam.d/vsftpd

guest_enable=YES    啟用虛擬使用者功能

guest_username=ftp  指定虛擬使用者的宿主使用者 –centos 裡面已經有內建的ftp使用者了(註:此使用者在chroot_list_file=/etc/vsftpd/chroot_list檔案裡所指定的使用者)

user_config_dir=/etc/vsftpd/vuser_conf 設定虛擬使用者個人vsftp的服務組態檔

(此檔案後面不能出現空格)

 

4.查看是否安裝 db4 db4-utils 

[root@localhost ~]#rpm -qa|grep db4  運行後出現下面內容 說明已經安裝可以使用db_load命令(主要是 db4-utils)

db4-devel-4.3.29-10.el5_5.2

db4-4.3.29-10.el5_5.2

db4-devel-4.3.29-10.el5_5.2

db4-4.3.29-10.el5_5.2

db4-tcl-4.3.29-10.el5_5.2

db4-utils-4.3.29-10.el5_5.2

[root@localhost ~]#

 

如果沒安裝則要安裝db4-utils

4.1安裝db4-utils

[root@localhost ~]#yum -y install db4-utils

 

5. 建立 chroot_list_file=/etc/vsftpd/chroot_list檔案

[root@localhost ~]#vi /etc/vsftpd/chroot_list (編輯檔案把 /etc/vsftpd/vsftpd.conf 中guest_username的值寫到檔案中本例中為 ftp)

或者直接按下面進行操作

[root@localhost ~]#touch /etc/vsftpd/chroot_list

[root@localhost ~]# echoftp >> /etc/vsftpd/chroot_list  (此處ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)

 

 

6.建立虛擬使用者目錄(密碼文本)

[root@localhost ~]#vi /etc/vsftpd/vftpuser.txtx (奇數行為使用者名稱 ,偶數行為密碼)

本文中添加如下(用cat 命令查看)

[root@localhost ~]#cat /etc/vsftpd/vftpuser.txtx

zz

aaaaa

ftp1

zzzzz

[root@localhost ~]#

 

7.產生虛擬使用者的db檔案

[root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db

 

8.產生虛擬使用者的認證檔案

[root@localhostvsftpd]# vi /etc/pam.d/vsftpd

 

#%PAM-1.0

session    optional    pam_keyinit.so    force revoke

auth       required     pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusers onerr=succeed

auth       required     pam_shells.so

auth       include      system-auth

account    include     system-auth

session    include     system-auth

session    required    pam_loginuid.so

 

注釋掉/etc/pam.d/vsftpd中所有的內容 反正已經不要本機使用者的認證了

特別注意 以下區別
32位系統增加以下兩句:
auth      required     pam_userdb.so db=/etc/vsftpd/vftpuser
account   required     pam_userdb.so db=/etc/vsftpd/vftpuser
64位系統增加以下兩句:
auth   required    /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required    /lib64/security/pam_userdb.sodb=/etc/vsftpd/vftpuser

 

註:db=/etc/vsftpd/vftpuser 中的vftpuser 是你產生的虛擬使用者的db檔案

 

9.建立每個虛擬使用者自己的設定檔,設定檔的路徑是/etc/vsftpd/vsftpd.conf中的

user_config_dir=/etc/vsftpd/vuser_conf路徑

在 /etc/vsftpd/vuser_conf/下面建立以使用者名稱為名稱的檔案(名稱是/etc/vsftpd/vftpuser.txtx 下面的奇數行)

 

[root@localhostvsftpd]# cat /etc/vsftpd/vftpuser.txtx

zz

aaaaa

ftp1

zzzzz

 

[root@localhostvsftpd]# mkdir vuser_conf

[root@localhostvsftpd]# vi /etc/vsftpd/vuser_conf/zz

 

內容如下 

local_root=/var/www(虛擬使用者的根目錄根據實際修改)
write_enable=YES (可寫)
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022

 

10.給文夾許可權(否則不能上傳 許可權可自定 本人給的是 777)

[root@localhostvsftpd]# chmod 777 /var/www/

 

11.重啟vsftpd

[root@localhostvsftpd]# service vsftpd restart

 

到此安裝配置完成 如果出現串連被 同位體重設 或其它錯誤 請查看SELinux的當前模式

 

 

12.登入測試

[root@localhost vsftpd]# ftp192.168.1.107

Connected to 192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as anauthentication type

Name (192.168.1.107:root): zz

331 Please specify the password.

Password:

500 OOPS: cannot changedirectory:/var/www

Login failed.

ftp>

 

查看方法

[root@localhost vsftpd]# getenforce

Enforcing   如果出現(Enforcing )

關閉方法:[root@localhost vsftpd]#setenforce 0       (0|1  開|關)

 

再次測試 登入成功

[root@localhost vsftpd]# chmod 777/var/www/

[root@localhost vsftpd]# ftp192.168.1.107

Connected to 192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as anauthentication type

Name (192.168.1.107:root): zz

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp>

 

查看系統是多少位的命令

[root@bogon ~]# getconf LONG_BIT

64 (64|32)

Vsftp 安裝配置

 

1.查看是否安裝vsftp
rpm –qa|grep vsftpd
如果出現     vsftpd-2.0.5-16.el5_5.1  說明已經安裝 vsftp

安裝vsftp

yum -y install vsftpd

 

2.測試 是否安裝成功  (ip 改成自己啊,不要用俺的此次登入狀態匿名登入 user: anonymous 密碼為空白 如果成功登入會有下面內容  這說明vsftpd安裝成功)

[root@localhost ~]#service vsftpd start

為 vsftpd 啟動 vsftpd:[確定]

[root@localhost ~]#ftp 192.168.1.107

Connected to192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please loginwith USER and PASS.

530 Please loginwith USER and PASS.

KERBEROS_V4 rejectedas an authentication type

Name(192.168.1.107:root): anonymous

331 Please specifythe password.

Password:

230 Loginsuccessful.

Remote system typeis UNIX.

Using binary mode totransfer files.

ftp> bye

221 Goodbye.

[root@localhost ~]#

 

 

3.修改設定檔/etc/vsftpd/vsftpd.conf

[root@localhost ~]#vi /etc/vsftpd/vsftpd.conf

 

取消下面內容前面的注釋或添加

anonymous_enable=YES/NO  是否允許匿名使用者存取

chroot_list_enable=YES 限定使用者不可以離開主目錄

chroot_list_file=/etc/vsftpd/chroot_list

loca_enable=YES/NO 本機使用者是否可以訪問 註:如果為NO 則所有虛擬使用者都將不能訪問原因:虛擬使用者訪問在主機上其實是以本機使用者訪問的

pam_service_name=vsftpd  pam認證檔案名稱 在/etc/pam.d/vsftpd

guest_enable=YES    啟用虛擬使用者功能

guest_username=ftp  指定虛擬使用者的宿主使用者 –centos 裡面已經有內建的ftp使用者了(註:此使用者在chroot_list_file=/etc/vsftpd/chroot_list檔案裡所指定的使用者)

user_config_dir=/etc/vsftpd/vuser_conf 設定虛擬使用者個人vsftp的服務組態檔

(此檔案後面不能出現空格)

 

4.查看是否安裝 db4 db4-utils 

[root@localhost ~]#rpm -qa|grep db4  運行後出現下面內容 說明已經安裝可以使用db_load命令(主要是 db4-utils)

db4-devel-4.3.29-10.el5_5.2

db4-4.3.29-10.el5_5.2

db4-devel-4.3.29-10.el5_5.2

db4-4.3.29-10.el5_5.2

db4-tcl-4.3.29-10.el5_5.2

db4-utils-4.3.29-10.el5_5.2

[root@localhost ~]#

 

如果沒安裝則要安裝db4-utils

4.1安裝db4-utils

[root@localhost ~]#yum -y install db4-utils

 

5. 建立 chroot_list_file=/etc/vsftpd/chroot_list檔案

[root@localhost ~]#vi /etc/vsftpd/chroot_list (編輯檔案把 /etc/vsftpd/vsftpd.conf 中guest_username的值寫到檔案中本例中為 ftp)

或者直接按下面進行操作

[root@localhost ~]#touch /etc/vsftpd/chroot_list

[root@localhost ~]# echoftp >> /etc/vsftpd/chroot_list  (此處ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)

 

 

6.建立虛擬使用者目錄(密碼文本)

[root@localhost ~]#vi /etc/vsftpd/vftpuser.txtx (奇數行為使用者名稱 ,偶數行為密碼)

本文中添加如下(用cat 命令查看)

[root@localhost ~]#cat /etc/vsftpd/vftpuser.txtx

zz

aaaaa

ftp1

zzzzz

[root@localhost ~]#

 

7.產生虛擬使用者的db檔案

[root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db

 

8.產生虛擬使用者的認證檔案

[root@localhostvsftpd]# vi /etc/pam.d/vsftpd

 

#%PAM-1.0

session    optional    pam_keyinit.so    force revoke

auth       required     pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusers onerr=succeed

auth       required     pam_shells.so

auth       include      system-auth

account    include     system-auth

session    include     system-auth

session    required    pam_loginuid.so

 

注釋掉/etc/pam.d/vsftpd中所有的內容 反正已經不要本機使用者的認證了

特別注意 以下區別
32位系統增加以下兩句:
auth      required     pam_userdb.so db=/etc/vsftpd/vftpuser
account   required     pam_userdb.so db=/etc/vsftpd/vftpuser
64位系統增加以下兩句:
auth   required    /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required    /lib64/security/pam_userdb.sodb=/etc/vsftpd/vftpuser

 

註:db=/etc/vsftpd/vftpuser 中的vftpuser 是你產生的虛擬使用者的db檔案

 

9.建立每個虛擬使用者自己的設定檔,設定檔的路徑是/etc/vsftpd/vsftpd.conf中的

user_config_dir=/etc/vsftpd/vuser_conf路徑

在 /etc/vsftpd/vuser_conf/下面建立以使用者名稱為名稱的檔案(名稱是/etc/vsftpd/vftpuser.txtx 下面的奇數行)

 

[root@localhostvsftpd]# cat /etc/vsftpd/vftpuser.txtx

zz

aaaaa

ftp1

zzzzz

 

[root@localhostvsftpd]# mkdir vuser_conf

[root@localhostvsftpd]# vi /etc/vsftpd/vuser_conf/zz

 

內容如下 

local_root=/var/www(虛擬使用者的根目錄根據實際修改)
write_enable=YES (可寫)
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022

 

10.給文夾許可權(否則不能上傳 許可權可自定 本人給的是 777)

[root@localhostvsftpd]# chmod 777 /var/www/

 

11.重啟vsftpd

[root@localhostvsftpd]# service vsftpd restart

 

到此安裝配置完成 如果出現串連被 同位體重設 或其它錯誤 請查看SELinux的當前模式

 

 

12.登入測試

[root@localhost vsftpd]# ftp192.168.1.107

Connected to 192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as anauthentication type

Name (192.168.1.107:root): zz

331 Please specify the password.

Password:

500 OOPS: cannot changedirectory:/var/www

Login failed.

ftp>

 

查看方法

[root@localhost vsftpd]# getenforce

Enforcing   如果出現(Enforcing )

關閉方法:[root@localhost vsftpd]#setenforce 0       (0|1  開|關)

 

再次測試 登入成功

[root@localhost vsftpd]# chmod 777/var/www/

[root@localhost vsftpd]# ftp192.168.1.107

Connected to 192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as anauthentication type

Name (192.168.1.107:root): zz

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp>

 

查看系統是多少位的命令

[root@bogon ~]# getconf LONG_BIT

64 (64|32)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.