您好,登錄后才能下訂單哦!
Vsftp安裝及配置虛擬用戶
采用yum安裝
[root@VM_64_122_centos vsftpd]# yum installvsftpd
安裝完成以后vsftpd的默認配置文件在/etc/vsftpd
1,創建虛擬用戶文本文件,添加虛擬用戶和密碼
[root@VM_64_122_centos vsftpd]# vivuser.txt
奇數行是用戶名,偶數是密碼。
比如:
admin 123!@# yunying yunying sheji sheji chanpin chanpin
2,生成虛擬數據庫文件
db_load默認沒有安裝,yum installdb4-utils db4-devel db4安裝才能使用。
[root@VM_64_122_centos vsftpd]# yum installdb4-utils db4-devel db4
執行以下命令生成虛擬數據庫文件
[root@VM_64_122_centos vsftpd]# db_load -T-t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db
3,配置PAM文件,目的是對客戶端進行驗證。批注所有內容,后添加:
[root@VM_64_122_centos vsftpd]# vi/etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/vuser account required pam_userdb.so db=/etc/vsftpd/vuser
注意:不能寫成db=/etc/vsftpd/vuser.db
4,修改虛擬數據庫文件vuser.db的權限為 700
[root@VM_64_122_centos vsftpd]# chmod 700vuser.db
5,增加一個系統用戶vuser ,使用它來對應所有虛擬用戶,虛擬用戶使用系統用戶來訪問ftp服務器。
useradd vuser mkdir /var/ftp/vuser chown vuser.vuser /var/ftp/vuser
6,修改vsftpd.conf配置文件,使虛擬用戶可以訪問vsftpd服務器,增加以下參數
pam_service_name=vsftpd ####使用PAM驗證 guest_enable=YES ####啟用虛擬用戶 ####激活虛擬賬戶 guest_username=vuser ####把虛擬賬戶綁定為系統賬戶vuser user_config_dir=/etc/vsftpd/vsftpd_user_conf ####虛擬用戶配置文件目錄
1,建立vsftpd_user_conf配置文件目錄
mkdir /etc/vsftpd/vsftpd_user_conf
2,設置虛擬用戶配置文件,與虛擬賬戶同名。
[root@VM_64_122_centos vsftpd]# vi/etc/vsftpd/vsftpd_user_conf/admin
3,編輯虛擬賬戶admin的配置文件admin,設置相應的權限。添加以下內容
anon_world_readable_only=NO ###瀏覽FTP目錄和下載 anon_upload_enable=YES ###允許上傳 anon_mkdir_write_enable=YES ###允許建立和刪除目錄 anon_other_write_enable=YES ###允許改名和刪除文件 local_root=/var/ftp/vuser ###指定虛擬用戶在系統用戶下面的路徑,限制虛擬用戶的家目錄,虛擬用戶登錄后的主目錄。
4,重新啟動ftp服務
[root@VM_64_122_centos vsftpd]# servicevsftpd restart
SELinux 全稱 SecurityEnhanced Linux (安全強化 Linux),是 MAC (Mandatory Access Control,強制訪問控制系統)的一個實現,目的在于明確的指明某個進程可以訪問哪些資源(文件、網絡端口等)。
SElinux就是指明進程能訪問那些資源,如果其訪問了非指明的資源,SElinux就會阻止他,并告訴這個程序,你沒有權限,不能讓你訪問。
所以需要修改SELinux的權限訪問設置,不然連接ftp會出現一些異常報錯。比如:
500 OOPS: cannot change directory:/home/*******
553 could not create file
查看ftp相關選項
sestatus-b | grep ftpd
下面是常用的布爾變量:
allow_ftpd_anon_write:關閉這個布爾變量會阻止 vsftpd 讀取 public_content_rw_t 類型的文件和目錄。如果允許用戶通過 FTP 上傳文件。必須開放這個布爾變量。
allow_ftpd_full_access:當開放這個布爾變量時只有Linux(DAC)的權限來控制訪問,通過驗證的用戶可以讀取和寫入標記為 public_content_t 或 public_content_rw_t 類型的文件。
allow_ftpd_use_cif:當開放這個布爾變量時vsftpd 允許 cifs_t 類型的文件和目錄,因此這個布爾變量啟用,可以讓你的 FTP 服務器可以使用 Samba 文件系統。
allow_ftpd_use_nfsvsftpd:的當開放這個布爾變量時 vsftpd 允許 nfs_t 類型的文件和目錄,因此這個布爾變量啟用,可以讓你的 FTP 服務器可以使用 NFS 文件系統。
ftp_home_dir:當開放這個布爾變量時認證用戶可以讀寫自己的主目錄中的文件。
ftpd_connect_db:當開放這個布爾變量時允許vsftpd 連接數據庫。
httpd_enable_ftp_server:當開放這個布爾變量時容許的 httpd 作為 FTP 服務器,并且監聽 FTP 端口。
tftp_anon_write:當開放這個布爾變量時允許TFTP 訪問一個公共的目錄
啟用以下選項:
setsebool-P ftp_home_dir 1 setsebool-P allow_ftpd_full_access 1
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。