您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關linux下如何配置ftp服務器并設置虛擬賬號的不同權限,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
1、創(chuàng)建用戶數(shù)據(jù)庫
1 2 3 | db_load:安裝 db4,db4-devel,db4-utils #yum -y install db4* #db_load -T -t hash -f /etc/vsftpd/vsftpd_login.txt /etc/vsftpd/vsftpd_login.db |
3 修改數(shù)據(jù)文件訪問權限:
1 | chmod 600 /etc/vsftpd/vsftp_login.db |
4 修改pam配置:
1 2 3 4 5 | #cat /etc/pam.d/vsftpd.vu 將原來的全部注釋掉,加入: auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 注意:db=/etc/vsftpd/vsftpd_login 后面的.db必須去掉 |
5 創(chuàng)建虛擬賬號對應的系統(tǒng)用戶:
就用ftp默認賬戶
修改主配置文件,guest_enable代表開啟虛擬賬戶功能,
所有的虛擬賬戶都將被映射為guest_username指定的系統(tǒng)賬戶。
如果需要對虛擬賬戶做權限設置,通過與匿名賬戶一樣的設置項進行,
如anon_mkdir_write_enable=NO既是控制虛擬賬戶無法創(chuàng)建目錄。
[root@localhost ~]#vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=NO #在每個虛擬賬戶里單獨設置
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
guest_enable=YES #允許虛擬賬戶
guest_username=ftp #所有虛擬賬戶的真實映射賬戶
listen=YES
listen_port=21
pam_service_name=vsftpd.vu
user_config_dir=/etc/vsftpd/vconf
pasv_promiscuous=YES
max_clients=40 #最多40個客戶端連接
max_per_ip=5 #每個IP最多5個連接
6、配置/etc/vsftpd/vconf里的虛擬用戶配置
[root@localhost vconf]# ls
user1 user2
vi user1
local_root=/data/ftp
write_enable=YES
vi user2
local_root=/data/ftp #user2只有下載的權利,沒有上傳的權利。
7、重新啟動
service vsftpd restart
ps:配置完成后,在用ftp客戶端測試時,發(fā)現(xiàn)問題。
1、提示錯誤代碼:530 Login incorrect.
在vsftpd.vu里把
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
里的/lib/security/pam_userdb.so絕對路徑去掉,只用pam_userdb.so
2、提示錯誤連接失敗 OOPS: 500 OOPS: child died
網(wǎng)上的方法
修改vsftpd服務端配置文件
vi /etc/vsftpd/vsftpd.conf
增加下面行,重啟服務即可
pasv_promiscuous=YES
解決辦法二,如果上面辦法還是解決不了我們可以嘗試如下解決辦法
1、 查看 SELinux 的狀態(tài): sestatus -b | grep ftp
2、 在出現(xiàn)的結果中可以看到
ftp_home_dir off
tftpd_disable_trans off
之類。我們現(xiàn)在只要把其中之一設置為on就可以啦。
3、 setsebool -P ftpd_disable_trans on 或者 setsebool -P ftp_home_dir on
4、 重啟vsftpd: service vsftpd restart
5.如果還是不成功的話,執(zhí)行以下命令,然后重啟FTP
[root@windos-test-01 vsftpd]# setsebool allow_ftpd_full_access 1
[root@windos-test-01 vsftpd]# setsebool allow_ftpd_use_cifs 1
[root@windos-test-01 vsftpd]# setsebool allow_ftpd_use_nfs 1
[root@windos-test-01 vsftpd]# setsebool -P ftp_home_dir 1
[root@windos-test-01 vsftpd]# setsebool httpd_enable_ftp_server 1
[root@windos-test-01 vsftpd]# setsebool tftp_anon_write 1
[root@windos-test-01 vsftpd]# service vsftpd restart
但是我試過,還是不行。
3、連接失敗 OOPS: cannot change directory:/data/ftp
usermod -d /data/ftp ftp #安排主目錄給ftp賬戶
4、可以連上了,但是不能修改文件
chown -R ftp.ftp /data/ftp
發(fā)現(xiàn)上傳的漢字文檔會有亂碼。建議采用winscp使用ftp。
掛載NAS盤后,按照平常的設置會無法修改文件目錄的權限。在EMC存儲上設置的時候注意,
以上就是linux下如何配置ftp服務器并設置虛擬賬號的不同權限,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。