linux——管理系统设备之vsftpd服务
vsftpd服務
前提:在做ftp實驗前,修改/etc/sysconfig/selinux中的SELINUX為disabled,修改后需要重啟才能生效
1.什么是ftp
- FTP(File Transfer Protocol)即文件傳輸協議,中文簡稱為“文傳協議”。
- FTP用于Internet上的控制文件的雙向傳輸。同時,它也是一個應用程序。
- 在FTP的使用當中,用戶經常遇到兩個概念:
上傳:"上傳"文件就是將文件從自己的計算機中拷貝至遠程主機上
2.安裝ftp
yum install vsftpd? -y
systemctl stop firewalld
systemctl disable firewalld
systemctl start vsftpd
systemctl enable vsftpd
注:防火墻可以不用關閉,但是需要將ftp服務添加到防火墻允許的程序中。
##能登陸并且顯示,表示安裝成功
注意:如果主機沒有lftp,那么也需要下載lftp,yum install lftp -y
3.vsftpd文件信息
軟件安裝包:???? vsftpd
默認發布目錄:? /var/ftp
協議接口:???????? 21/tcp
服務配置文件:? /etc/vsftpd/vsftpd.conf
報錯id的解析:
??????????????????????? 500??? ##文件系統權限過大
??????????????????????? 530??? ##用戶認證失敗
??????????????????????? 550??? ##服務本身功能未開放
??????????????????????? 553? ? ##本地文件系統權限過小
4.vsftpd服務的配置參數
vim /etc/vsftpd/vsftpd.conf匿名用戶設定
anonymous_enable=YES | NO??? ##匿名用戶登陸限制
- 匿名用戶上傳
vim /etc/vsftpd/vsftpd.conf
write_enable=YES????? ##用戶是否可以進行寫操作,匿名和本地用戶同時管理
anon_upload_enable=YES
systemctl restart vsftpd
chgrp ftp /var/ftp/pub/
chmod 775 /var/ftp/pub/
- 匿名用戶家目錄修改
注意:修改的這個家目錄必須存在
vim /etc/vsftpd/vsftpd.conf
anon_root=/ftpdir
systemctl restart vsftpd
- 匿名用戶上傳文件默認權限修改
anon_umask=xxx
未修改權限前,即默認情況下
修改權限后
- 匿名用戶建立目錄
anon_mkdir_write_enable=YES | NO? ##設定參數值為no表示匿名用戶不可以建立目錄
systemctl restart vsftpd未添加權限時
添加權限并允許后
- 匿名用戶下載
anon_world_readable_only=YES|NO ##設定參數值為no表示匿名用戶可以下載
systemctl restart vsftpd
- 匿名用戶刪除
anon_other_write_enable=YES | NO? ##設定參數值為YES表示匿名用戶可以刪除
- 最大上傳速率
vim /etc/vsftpd/vsftpd.conf
anon_max_rate=102400
systemctl restart vsftpd
默認上傳速率
修改速率后
- 最大連接數
max_client=3? ##允許同時有多少臺主機可以遠程連接本主機
本地用戶設定
local_enable=YES | NO??? ##本地用戶登陸限制
write_enable=YES | NO??? ##本地用戶寫權限限制
- 本地用戶家目錄修改
vim /etc/vsftpd/vsftpd.conf
local_root=/tutudir
systemctl restart vsftpd
- 本地用戶上傳文件權限
local_umask=xxx
未修改前,即默認上傳權限022
修改上傳文件權限為077后
- 限制本地用戶瀏覽/目錄
chroot_local_user=YES
chmod u-w /home/*
未修改前
修改內容及修改后
- 用戶黑名單建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/ftpusers???? ##用戶黑名單,永久性
vim /etc/vsftpd/user_list???? ##用戶臨時黑名單
- 用戶白名單建立及設定
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
注意:要想黑白名單生效,最好/etc/vsftpd/user_list文件和/etc/vsftpd/chroot_list文件都要存在
ftp虛擬用戶的設定
- 創建虛擬用戶帳號身份
vim /etc/vsftpd/userdb ?? ##文件名稱任意
db_load -T -t hash -f userdb userdb.db??? ##設置加密方式為哈希加密,生成加密文件userdb.db
vim /etc/pam.d/ftpuser??? ##文件名稱任意
- 虛擬帳號身份指定
guest_username=tutu
useradd -d /home/tutu tutu
實驗是否可以登陸
- 虛擬帳號家目錄獨立設定
vim /etc//vsftpd/vsftpd.conf
local_root=/vftpdir/$USER
user_sub_token=$USER
mkdir /vftpdir
chgrp tutu /vftpdir
chmod g+s /vftpdir
mkdir /vftpdir/user{1..3}
- 虛擬帳號獨立配置
默認情況下,虛擬用戶擁有相同的權限,就是tutu的權限,我們可以根據實際需求對不同的虛擬用戶分配權限
首先在FTP的主配置文件中加一個選項:
user_config_dir=/etc/vsftpd/user_conf???????????? ##//文件名和路徑都可以自己定義
然后創建該目錄.
mkdir /etc/vsftpd/user_conf
下面就可以在該目錄下編輯不同虛擬用戶的權限配置文件了,比如要對user1編輯其權限
touch user1 ???????????????? ##//建立user1的權限文件.文件名要與虛擬用戶名相同
可以根據實際需求為該文件添加下面的選項和值:
anon_world_readable_only=NO?????????????? ##//表示用戶可以瀏覽FTP目錄和下載文件
anon_upload_enable=YES??????????????????? ##//表示用戶可以上傳文件
anon_mkdir_write_enable=YES?????????????? ##//表示用戶有創建和刪除目錄的權限
anon_other_write_enable=YES?????????????? ##//表示用戶具有文件改名和刪除文件的權限
?
注:在此文件中設定配置文件中的所有參數,此文件的優先級高總結
以上是生活随笔為你收集整理的linux——管理系统设备之vsftpd服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux——vim命令详细说明
- 下一篇: linun——SElinux的简单理解