Linux系統部署FTP伺服器
部署FTP伺服器
FTP(檔案傳輸協議)是INTERNET上仍用的最老的網路協議之一,它為系統提供了 通過網路與遠端伺服器進行傳輸的簡單的方法。/var/ftp/這意味著遠端FTP客戶端能以使用者anyonymous或ftp身份連線到伺服器(無需密碼),並從ftp伺服器上的/var/ftp/目錄下載檔案。
搭建ftp伺服器前的三個輔助條件:
(1)更改SELINUX=disabled
[[email protected] ~]# vim /etc/sysconfig/selinux
(2)配置yum源
[[email protected] ~]# vim /etc/yum.repos.d/rhel_dvd.repo
(3)重啟
[[email protected] ~]# reboot
下面開始ftp伺服器的學習
1、ftp的定義
ftp:// 檔案傳輸協議
2、ftp協議提供的軟體
在rehl7中:
vsftpd
3、部署ftp服務
(1)安裝vsftpd
[[email protected] ~]# yum install vsftpd -y
(2)開啟vsftpd
[[email protected] ~]# systemctl start vsftpd
(3)開機自啟vsftpd
[[email protected] ~]# systemctl enable vsftpd
(4)在配置防火牆
(5)重新載入防火牆
小貼士:ftp服務的基本資訊
軟體安裝包:vsftpd
預設釋出目錄:/var/ftp
協議介面:21/tcp
服務配置檔案: /etc/vsftpd/vsftpd.conf
4、vim /etc/vsftpd/vsftpd.conf
注意:更改完後務必要重啟服務
【1】匿名使用者
anonymous_enable=YES|NO 匿名使用者是否可以登陸
【2】本地使用者
local_enable=YES|NO 本地使用者是否可以登陸
write_enable=YES|NO ftp是否對登陸使用者可寫
【3】匿名使用者上傳
(1)配置檔案
[[email protected] ~]# vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
(2)修改許可權及所有組
[[email protected] ~]# chgrp ftp -R /var/ftp/pub/
[[email protected] ~]# chmod 775 -R /var/ftp/pub/
【4】匿名使用者家目錄修改
anon_root=/目錄
舉例:
當不改變配置檔案時,lftp登陸預設的家目錄是
而如下更改時:
(1)開啟vim /etc/vsftpd/vsftpd.conf,並更改家目錄
(2)重啟服務
[[email protected] ~]# systemctl restart vsftpd
(3)效果如下:
【4】匿名使用者上傳檔案預設許可權修改
anon_umask=xxx
【5】匿名使用者建立目錄
anon_mkdir_write_enable=YES|NO
【6】匿名使用者下載
anon_world_readable_only=YES|NO 引數NO表示匿名使用者可以下載
【7】匿名使用者刪除
anon_other_write_enable=YES|NO
【8】匿名使用者使用的使用者身份修改
chown_uploads=YES
chown_username=student
【9】最大上傳速率
anon_max_rate=102400
【10】最大連結數
max_clients=2 表示最多有兩個可以連線
【11】本地使用者家目錄修改
local root=/directory
【12】本地使用者上傳檔案許可權
local umask=xxx
【13】限制本地使用者瀏覽/目錄
所有使用者被鎖定到自己的家目錄中
chroot_local_user=YES
chmod u-w /home/*
【14】使用者黑名單建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
【15】使用者白名單建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
【16】限制本地使用者登陸
vim /etc/vsftpd/ftpusers 使用者永久黑名單
vim /etc/vsftpd/user list 使用者臨時黑名單
【17】使用者白名單設定
userlist deny=NO
/etc/vsfgtpd/user_list 引數設定,此檔案變成使用者白名單,只在名單中出現的使用者可以登陸
ftp虛擬使用者的設定
建立虛擬帳號身份
vim /etc/vsftpd/redhatfile 檔名稱隨意
ftpuser1
123
ftpuser2
123
ftpuser3
123
db_load -T -t hash -f /etc/vsftpd/redhat /etc/vsftpd/redhat.db
vim /etc/pam.d/redhat 檔名稱任意
account required pam_userdb.so db=/etc/vsftpd/redhat
auth required pam_userdb.so db=/etc/vsftpd/redhat
vim /etc/vsftpd/vsftpd.conf
pam_service_name=ftp
guest_enable=YES