部署ftp文件共享服務
一.部署ftp服務
常用的部署網絡服務的步驟:
部署 FTP 服務器
? FTP ( 文件傳輸協議 ) 是 INTERNET 上仍常用的最老的網絡協議之一 , 它爲系統提供了通過網絡與遠程服務器進行傳輸的簡單方法
? 在 RED HAT ENTREPRISE LINUX 6 中。 FTP 服務器包的名稱爲 VSFTPD , 它代表 Very Secure File Transfer Protocol Damon 服務器名稱也叫做 vsftpd
? 默認配置文件讓 ANONYMOUS 用戶只能下載位於CHROOT 目錄中的內容。 /var/ftp/ 這意味着遠程 FTP客戶端能以用戶 anonymous 或 ftp 身份連接到服務器( 無需密碼 ), 並從 ftp 服務器上的 /var/ftp/ 目錄下載文件( 其本地 ftp 用戶可以讀取這些文件 )
在安裝之前要看一下這個是不是disable的,不是則修改一下
1.安裝服務軟件
安裝vsftpd服務和lftp命令
2.啓動服務和啓用服務開機自啓
3.測試服務
本機:
Lftp 172.25.7.11
可以上去
其他主機未配置防火牆時還暫時登不上
二.Vsftpd服務關於匿名用戶的配置
1.匿名用戶設定登陸的限制
anonymous_enable=YES|NO ##匿名用戶登陸限制
2.匿名用戶實現上傳文件的步驟
在沒有配置文件之前,上傳東西給被拒絕,錯誤的信息是550,代表不可以上傳,不提供這個服務功能。553錯誤代碼是因爲服務器你要上傳的那個目標目錄沒有給上傳文件的權限,如下進行修改。
##<匿名用戶上傳步驟>
vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
修改完之後可以實現上傳
3.<匿名用戶家目錄修改>
anon_root=/direcotry
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 ###與上邊anon_umask不能同時生效
注意:只有上傳文件的時候才能體現出
9.<最大上傳速率>
anon_max_rate=102400
10.<最大鏈接數>
max_clients=2
測試:
三.關於本地用戶的設定
local_enable=YES|NO ##本地用戶登陸限制
write_enable=YES|NO ##本地用戶寫權限限制
#<本地用戶家目錄修改>
local_root=/directory
#<本地用戶上傳文件權限>
local_umask=xxx
#<限制本地用戶瀏覽/目錄>
所有用戶被鎖定到自己的家目錄中
chroot_local_user=YES
chmod u-w /home/*
用戶黑名單建立,不接受黑名單中的
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
用戶白名單建立,只接受能登陸白名單的
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#<限制本地用戶登陸>
vim /etc/vsftpd/ftpusers ##用戶永久黑名單
vim /etc/vsftpd/user_list ##用戶臨時黑名單
用戶白名單設定
userlist_deny=NO
/etc/vsftpd/user_list ##參數設定,此文件變成用戶白名單,只在名單中出現的用戶可以登陸ftp
五.ftp虛擬用戶的設定
1.創建虛擬帳號身份,並對帳號密碼進行hash加密
db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db
加密命令
2.在pam.d目錄下建立文件,功能就是認證剛纔寫的用戶和密碼,把它們加進去
先看一下原來的
在原來的這個文件中認證的,現在加虛擬的。可以在這底下自己建立個文件把虛擬用戶的加進去
3.在vsftpd.conf裏邊修改配置
把pam_service_namw改成剛纔在pan.d目錄下加的那個名字,意思就是讓你認證那個文件
Guest_enable=yes 讓其可用
Guest_username=ftp 就是這些以虛擬用戶身份登陸的到服務器是都是屬於ftp用戶
4.測試
Lftp -u zmm localhost
輸入密碼後,就可以進入到默認的加目錄中去
六.讓登陸虛擬用戶都進入到自己的加目錄中
1.建立各個用戶不同的加目錄
2.修改配置文件,重啓服務
其中$USER代表的是變量,由於其是在腳本文件中才能識別,所以在底下行寫入,使其指定是shell的環境變量
3.測試 是否都進入到各自的加目錄中
都是進入到自己的加目錄中
七.分開控制用戶的權利,實現單獨給某些用戶特殊權限
1.給各用戶下加個public目錄,方便之後測試
首先給這幾個用戶底下都加了public目錄,然後把這個目錄的組歸屬到ftp中,把權限修改爲775
2.修改配置文件
首先把上邊配置的都先註銷掉,最下加的,就是告訴系統找這個目錄
3.建立這個目錄,並將特殊的那個用戶權限寫到裏邊
4.測試
User1可以上傳
User2不可以
八.Selinux狀態對登陸上服務器能不能查看文件的影響
1.首先在selinux處在disabled下登陸到默認的目錄那裏是可以看到從別處移過來的文件,如下圖:
方便測試,把底下所有的文件都刪除掉