基于 CentOS 搭建 FTP 檔案服務,供大家參考,具體内容如下
系統要求:CentOS 7.2 64 位作業系統
一.安裝VSFTPD
(vsftpd 是在 Linux 上被廣泛使用的 FTP 伺服器,根據其[官網介紹][https://security.appspot.com/vsftpd.html],它可能是 UNIX-like 系統下最安全和快速的 FTP 伺服器軟體。)
?
1 | |
啟動 VSFTPD(安裝完成後,啟動 FTP 服務)
?
1 | |
啟動後,可以看到系統已經[監聽了 21 端口]:FTP 協定預設使用 21 端口作為服務端口
?
1 | |
此時,通路 ftp://<您的 CVM IP 位址> 可浏覽機器上的 /var/ftp 目錄了。
二.配置FTP 權限
目前 FTP 服務登陸允許匿名登陸,也無法區分使用者通路,我們需要配置 FTP 通路權限
vsftpd 的配置目錄為 /etc/vsftpd,包含下列的配置檔案:
?
1 2 3 | |
閱讀上述配置以了解更多資訊。如果您準備好了,點選下一步開始修改配置來設定權限。
阻止匿名通路和切換根目錄(匿名通路和切換根目錄都會給伺服器帶來[安全風險],我們把這兩個功能關閉)編輯/etc/vsftpd/vsftpd.conf
?
1 2 3 4 5 | |
重新啟動 FTP 服務:
?
1 | |
三.建立 FTP 使用者
?
1 2 3 4 | |
限制該使用者僅能通過 FTP 通路:限制使用者 ftpuser 隻能通過 FTP 通路伺服器,而不能直接登入伺服器
?
1 | |
為使用者配置設定主目錄
為使用者 ftpuser 建立[主目錄]并約定:
/data/ftp 為主目錄, 該目錄不可上傳檔案
/data/ftp/pub 檔案隻能上傳到該目錄下
?
1 | |
建立登入歡迎檔案:
?
1 | |
設定通路權限:
?
1 | |
設定為使用者的主目錄:
?
1 | |
四.準備域名和證書(雲主機)
,将域名解析到實驗雲主機上,域名設定解析後需要過一段時間才會生效,通過 ping 指令檢查域名是否生效 :如果 ping 指令傳回的資訊中含有你設定的解析的 IP 位址,說明解析成功。
?
1 | |
五.通路 FTP 服務
通過 Windows 資料總管通路:Windows 使用者可以複制下面的[連結]到資料總管的位址欄通路:
?
1 | |
通過 FTP 用戶端工具通路:
FTP 用戶端工具衆多,下面推薦兩個常用的:
WinSCP - Windows 下的 FTP 和 SFTP 連接配接用戶端
FileZilla - 跨平台的 FTP 用戶端,支援 Windows 和 Mac
下載下傳和安裝 FTP 用戶端後,使用下面的憑據進行連接配接即可:
主機ip:您的主機ip
使用者:ftpuser
密碼:xoAEUG5c
五、檢視檔案權限的語句:
在終端輸入:
ls -l xxx.xxx (xxx.xxx是檔案名)
那麼就會出現相類似的資訊,主要都是這些:
-rw-rw-r--
一共有10位數
其中: 最前面那個 - 代表的是類型
中間那三個 rw- 代表的是所有者(user)
然後那三個 rw- 代表的是組群(group)
最後那三個 r-- 代表的是其他人(other)
然後我再解釋一下後面那9位數:
r 表示檔案可以被讀(read)
w 表示檔案可以被寫(write)
x 表示檔案可以被執行(如果它是程式的話)
- 表示相應的權限還沒有被授予
現在該說說修改檔案權限了
在終端輸入:
chmod o w xxx.xxx
表示給其他人授予寫xxx.xxx這個檔案的權限
chmod go-rw xxx.xxx
表示删除xxx.xxx中組群和其他人的讀和寫的權限
其中:
u 代表所有者(user)
g 代表所有者所在的組群(group)
o 代表其他人,但不是u和g (other)
a 代表全部的人,也就是包括u,g和o
r 表示檔案可以被讀(read)
w 表示檔案可以被寫(write)
x 表示檔案可以被執行(如果它是程式的話)
其中:rwx也可以用數字來代替
r ------------4
w -----------2
x ------------1
- ------------0
行動:
表示添權重限
- 表示删除權限
= 表示使之成為唯一的權限
當大家都明白了上面的東西之後,那麼我們常見的以下的一些權限就很容易都明白了:
-rw------- (600) 隻有所有者才有讀和寫的權限
-rw-r--r-- (644) 隻有所有者才有讀和寫的權限,組群和其他人隻有讀的權限
-rwx------ (700) 隻有所有者才有讀,寫,執行的權限
-rwxr-xr-x (755) 隻有所有者才有讀,寫,執行的權限,組群和其他人隻有讀和執行的權限
-rwx--x--x (711) 隻有所有者才有讀,寫,執行的權限,組群和其他人隻有執行的權限
-rw-rw-rw- (666) 每個人都有讀寫的權限
-rwxrwxrwx (777) 每個人都有讀寫和執行的權限
作為選擇,我們多數用三位八進制數字的形式來表示權限,第一位指定屬主的權限,第二位指定組權限,第三位指定其他使用者的權限,每位通過4(讀)、2(寫)、1(執行)三種數值的和來确定權限。如6(4+2)代表有讀寫權,7(4+2+1)有讀、寫和執行的權限
linux 中更改使用者權限和使用者組的指令執行個體;
增權重限給目前使用者 chmod +wx filename
chmod -R 777 /upload
使用者組 chgrp -R foldname zdz
chown -R 所有者使用者名.組名 檔案夾名稱
例如:chown -R zdz.nginx KooBox
六、ftpusers和user_list兩個檔案各自的用途是什麼?有何關系?
首先請明确一點:ftpusers不受任何配制項的影響,它總是有效,它是一個黑名單!
該檔案存放的是一個禁止通路FTP的使用者清單,通常為了安全考慮,管理者不希望一些擁有過大權限的帳号(比如root)登入FTP,以免通過該帳号從FTP上傳或下載下傳一些危險位置上的檔案進而對系統造成損壞。
而user_list則是和vsftpd.conf中的userlist_enable和userlist_deny兩個配置項緊密相關的,它可以有效,也可以無效,有效時它可以是一個黑名單,也可以是一個白名單!那麼是什麼的設定決定了它的作用呢?這就是問題二要解釋的。
是以簡單總結就是:ftpusers和user_list沒有任何關系,ftpusers檔案總是生效,user_list則取決于userlist_enable和userlist_deny兩項配置。
在xftp中可以右鍵,進行檔案的權限更改。
轉自:https://www.jb51.net/article/134478.htm 等多篇及部分自己添加