概述:
FTP ( 文件傳輸協議 ) 是 INTERNET 上仍常用的最老的網絡協議之一 , 它為系統提供了通過網絡與遠程服務器進行傳輸的簡單方法FTP
服務器包的名稱為 VSFTPD , 它代表 Very Secure File Transfer Protocol Daemon 服務器名稱也叫做 vsftpd
遠程FTP客戶端能以用戶anyonymous或ftp身份連接到服務器(無需密碼),並在安裝之前要執行的任務:
1.更改selinux為disabled,重啟生效
配置文件為:下面開始搭建vsftpd服務器:
1.yum install vsftpd -y ##安裝ftp服務
2.systemctl start&enable vsftp ##開啟服務
3.firewall-cmd --permanent --add-service=ftp ##將ftp加入防火牆的允許名單
4.firewall-cmd --reload ##重新加載防火牆
5.firewall-cmd --list-all ##查看防火牆的內容
ftp已被允許
服務器搭建完成!
在客戶端鏈接vsftpd服務器:
本次實驗服務端與客戶端為一台主機
1.安裝lftp
2.lftp 服務端ip
配置成功!
ftp的配置文件:/etc/vsftpd/vsftpd.conf
1.匿名用戶
anonymous_enable=YES|NO ##匿名用戶是否可以登錄
2.本地用戶
local_enable=YES|NO ##本地用戶是否可以登錄
write_enable=YES|NO ##ftp是否對登錄用戶可寫
3.匿名用戶上傳
【1】配置文件
write_enable=YES|NO
anon_upload_enable=YES
[2]修改權限
chgrp ftp /var/ftp/pub/
chmod 775 /var/ftp/pub/
實驗:
4.匿名用戶家目錄修改
5.匿名用戶上傳文件默認權限修改
anon_umask=022
6.匿名用戶建立目錄
anon_mkdir_write_enable=YES|NO
實驗:
7.匿名用戶下載
anon_world_readable_only=YES|NO? ##參數NO表示用戶可以下載
實驗:
8.匿名用戶刪除
anon_other_write_enable=YES|NO
實驗:
9.最大上傳速率
anon_max_rate=102400? ##每秒鍾100K的速度
實驗:
10.本地用戶上傳文件權限
local_umask=022
實驗:
11.限制本地用戶瀏覽目錄
所有用戶被鎖定到自己的家目錄中
chroot_local_user=YES
chmod u-w /home/*
實驗:student用戶被鎖定到自己的家目錄中
12.用戶黑名單的建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list qs
vim /etc/vsftpd/chroot_list ##添加列表名單
實驗:
13.用戶白名單的建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/chroot_list ##添加列表名單
實驗:
14.限制本地用戶登陸
vim /etc/vsftpd/ftpusers ##用戶黑名單
實驗:
vim /etc/vsftpd/user_list? ##用戶臨時黑名單,默認為黑名單,也可修改為白名單
用戶白名單的設定
vim /etc/vsftpd/vsftpd.conf
userlist_deny=NO
vim /etc/vsftpd/user_list? ##參數設定,此文件變成白名單,只在名單里的用戶可以登陸ftp? ?
實驗:在/etc/vsftpd/user_list 中加入linux
student在ftpusers和user_list中都有,ftpuser的執行權限高以它為准。
當黑名單和白名單同時存在,以黑名單為准。
yum install pam
創建虛擬帳號身份
1.vim /etc/vsftpd/userdb ##文件名稱任意
?
2.db_load -T -t hash -f userdb userdb.db? ##加密
3.vim /etc/pam.d/ftpuser ##文件名任意
4. vim /etc/vsftpd/vsftpd.conf
?
實驗:
虛擬用戶家目錄獨立設定
建立用戶指定的家目錄
設定用戶的家目錄
vim /etc/vsftpd/vsftpd.conf
##$USER將回顯用戶的名稱
實驗:
虛擬賬號的獨立設置
建立目錄
編輯文件? /etc/vsftpd/vsftpd.conf
添加內容:
把匿名用戶可以上傳的功能進行注釋
重啟服務!
修改權限並建立目錄
編輯文件 /etc/vsftpd/userconf/user1
使user1可以上傳文件
實驗: