推薦-Vsftpd虛擬使用者的配置 for CentOS

來源:互聯網
上載者:User

標籤:linux   密碼   使用者名稱   資料庫   

Vsftpd虛擬使用者的配置

System:Linux centos6.5 2.6.32-431.el6.x86_64

vsftpd-2.2.2-21.el6.x86_64


第一步、安裝

#cd  /etc/yum.repos.d/

# rm -rf *

# wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo

# yum clean all

# yum -y install vsftpd

# yum -y install db4-utils

 

第二步、建立虛擬使用者

#vim /home/loginuser.txt

user1  

password1  

user2  

password2  

user3  

password4 

格式為第一行為使用者名稱名,第二行為密碼,然後類推


建立db資料庫,同時只有root使用者才能讀寫

# db_load -T -t hash -f /home/loginuser.txt /etc/vsftpd/vsftpd_login.db

# chmod 600 /etc/vsftpd/vsftpd_login.db


配置pam檔案

# vim /etc/pam.d/vsftpd.vu  (64位系統)

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login  

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 

 

# vim /etc/pam.d/vsftpd.vu (32位系統)

auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login  

account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 


#vim /etc/pam.d/vsftpd    (64位系統)

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login


建立虛擬使用者對應的系統真實使用者

useradd jboss -d /data -s /sbin/nologin

chown jboss.jboss /data

註:在虛擬機器主機伺服器上用nginx,使用者為www


第三步、修改設定檔

# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO 

local_enable=YES 

write_enable=NO 

dirmessage_enable=YES 

xferlog_enable=YES 

xferlog_file=/var/log/vsftpd.log  

connect_from_port_20=YES 

xferlog_std_format=YES 

listen=YES 

userlist_enable=YES 

chroot_local_user=YES 

tcp_wrappers=YES 

#guest_enable=YES 

#guest_username=jboss 

pam_service_name=vsftpd.vu  

user_config_dir=/etc/vsftpd/vsftpd_user_conf  

virtual_use_local_privs=YES 

pasv_min_port=50000 

pasv_max_port=50010 

pasv_enable=yes 

max_clients=200 

max_per_ip=4 

idle_session_timeout=600 

ftpd_banner=Welcome to Windows2008 FTP Service.  


注釋如下:

anonymous_enable=NO

設定不允許匿名訪問

local_enable=YES

設定本機使用者可以訪問。注意:主要是為虛擬宿主使用者,如果該項目設定為NO那麼所有虛擬使用者將無法訪問。

write_enable=YES

設定可以進行寫操作。

local_umask=022

設定上傳後檔案的許可權掩碼。

anon_upload_enable=NO

禁止匿名使用者上傳。

anon_mkdir_write_enable=NO

禁止匿名使用者建立目錄。

dirmessage_enable=YES

設定開啟目錄標語功能。

xferlog_enable=YES

設定開啟日誌記錄功能。

connect_from_port_20=YES

設定連接埠20進行資料連線。

chown_uploads=NO

設定禁止上傳檔案更改宿主。

xferlog_file=/var/log/vsftpd.log

設定Vsftpd的服務日誌儲存路徑。注意,該檔案預設不存在。必須要手動touch出來,並且由於這裡更改了Vsftpd的服務宿主使用者為手動建立的Vsftpd。必須注意給與該使用者對日誌的寫入許可權,否則服務將啟動失敗。

xferlog_std_format=YES

設定日誌使用標準的記錄格式。

nopriv_user=vsftpd

設定支撐Vsftpd服務的宿主使用者為手動建立的Vsftpd使用者。注意,一旦做出更改宿主使用者後,必須注意一起與該服務相關的讀寫檔案的讀寫賦權問題。比如記錄檔就必須給與該使用者寫入許可權等。

async_abor_enable=YES

設定支援非同步傳輸功能。

ascii_upload_enable=YES

ascii_download_enable=YES

設定支援ASCII模式的上傳和下載功能。

ftpd_banner=Welcome to Awei FTP servers

設定Vsftpd的登陸標語。

chroot_local_user=YES

禁止本機使用者登出自己的FTP主目錄。

pam_service_name=vsftpd

設定PAM服務下Vsftpd的驗證設定檔名。因此,PAM驗證將參考/etc/pam.d/下的vsftpd檔案配置。

以下這些是關於Vsftpd虛擬使用者支援的重要設定項目。預設Vsftpd.conf中不包含這些設定項目,需要自己手動添加配置。

guest_enable=YES

設定啟用虛擬使用者功能。

guest_username=ftp

指定虛擬使用者的宿主使用者。

virtual_use_local_privs=YES

設定虛擬使用者的許可權符合他們的宿主使用者。

user_config_dir=/etc/vsftpd/vsftpd_user_conf

設定虛擬使用者個人Vsftp的設定檔存放路徑。也就是說,這個被指定的目錄裡,將存放每個Vsftp虛擬使用者個性的設定檔,一個需要注意的

地方就是這些設定檔名必須和虛擬使用者名稱相同。


第四步、建立日誌

因為預設vsftpd的記錄檔不存在,需要手工建立,同時賦予許可權

# touch /var/log/vsftpd.log

 

第五步、建立虛擬使用者設定檔

# mkdir /etc/vsftpd/vsftpd_user_conf

所有許可權

# vim /etc/vsftpd/vsftpd_user_conf/user1

write_enable=YES 

anonymous_enable=NO 

anon_world_readable_only=NO 

anon_upload_enable=YES 

anon_mkdir_write_enable=YES 

anon_other_write_enable=YES 

local_umask=022 

download_enable=Yes 

local_root=/data/user1  

上傳許可權

# vim /etc/vsftpd/vsftpd_user_conf/user2

write_enable=YES 

anon_world_readable_only=NO 

anon_upload_enable=YES 

anon_mkdir_write_enable=YES 

anon_other_write_enable=YES 

local_umask=022 

download_enable=NO 

local_root=/data/user2  

 

只能下載

# vim /etc/vsftpd/vsftpd_user_conf/user3

write_enable=NO 

anon_world_readable_only=NO 

anon_upload_enable=NO 

anon_mkdir_write_enable=NO 

anon_other_write_enable=NO 

local_umask=022 

download_enable=yes 

local_root=/data/user3 

 

第六步、關閉SELinux 

#vi /etc/selinux/config

SELINUX=disabled

#setenforce 0    不重啟關閉selinux生效


第七步、關閉防火牆或開啟21、20連接埠

#setup


啟動服務

#service vsftpd start


看日誌:

#tail -f /var/log/vsftpd.log

#tail -f /var/log/secure


支援SSL

如果需要支援SSL 安全連線

#vi /etc/vsftpd/vsftpd.conf

ssl_enable=yes

rsa_cert_file=/etc/vsftpd/vsftpd.pem

ssl_ciphers=HIGH

require_ssl_reuse=NO


生存密鑰:放入rsa_cert_file=/etc/vsftpd/ 目錄下

#openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem -days 1095


重啟服務:

#service vsftpd restart


本文出自 “陳勝綱的部落格” 部落格,請務必保留此出處http://chenshengang.blog.51cto.com/4399161/1791305

推薦-Vsftpd虛擬使用者的配置 for CentOS

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.