目的:只容許用戶用ftp工具訪問指定目錄shell
查看是否安裝了vsftpd瀏覽器
rpm -qa|grep vsftpd服務器
安裝vsftpdasync
yum -y install vsftpd(若是安裝不成功,下載rpm包,手動安裝)工具
編輯vsftpd的配置文件測試
vi /etc/vsftpd/vsftpd.confspa
改爲以下的內容,也可直接清空,而後複製進去:rest
isten=YES
background=YES
anonymous_enable=NO
local_enable=YES
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
chown_uploads=NO
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to hao32 FTP servers
pam_service_name=vsftpd
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_listorm
終端運行下面命令server
touch /etc/vsftpd/vsftpd.chroot_list
service vsftpd start
把服務加入隨機啓動項:
查看:
chkconfig --list vsftpd
加入隨機啓動並開啓:
chkconfig vsftpd on
【擴展】
關閉隨機啓動:chkconfig vsftpd off
指定某一個級別啓動:chkconfig --level 3 vsftpd on
【若是要添加新的用戶和新的指向目錄,從這裏開始】
ftp默認咱們使用系統用戶, 如今咱們來添加用戶ftptest, 指向目錄/home/ftptest , 權限是nologin, 就是沒給shell權限, 不影響ftp的
# useradd ftptest -d /home/ftptest -s /sbin/nologin
查看用戶和組(若是用戶和組不對,則須要指定用戶和組)
cd /home
ls -al
設置目錄及其文件的屬組, 你也能夠使用別的分組方式
# chown -R ftptest . ftptest /home/ftptest
設置一下用戶ftptest的密碼
# passwd ftptest
把用戶 ftptest 加到/etc/vsftpd/vsftpd.chroot_list裏, 這樣用戶就能夠正常登錄而且不能跳出本身的目錄
# echo ftptest >> /etc/vsftpd/vsftpd.chroot_list
# service vsftpd restart
測試登錄
ftp主機: 服務器IP地址 【ftp 192.168.0.9】
ftp用戶: ftptest
ftp密碼: ftptest
或者在瀏覽器中輸入: ftp://192.168.0.9
若是這個時候遇到 cannot change directory /home/ftptest
查看狀態:
getsebool -a|grep ftp
//使用setsebool命令開啓
# setsebool -P ftpd_disable_trans 1
或者
# setsebool -P ftp_home_dir 1
//查看當前狀態是不是on的狀態
# getsebool -a|grep ftp
ftpd_disable_trans --> on
或者
ftp_home_dir-->on
重啓:service vsftpd restart