基於滴滴雲主機搭建 FTP 檔案共享伺服器(一)
FTP 簡單介紹
什麼是 FTP 伺服器?
FTP 伺服器(File Transfer Protocol Server)是在網際網路上提供檔案共享儲存和訪問服務的計算機,它們依照 FTP 協議提供服務。
FTP(File Transfer Protocol: 檔案傳輸協議)是一種 Internet 上用來傳送檔案的協議,支援這種協議的伺服器就是 FTP 伺服器。
常見 FTP 伺服器如下:
-
Windows:Serv-U FTP Server
-
Linux:oftpd、ftpd、vsftpd、pure-ftpd、proftpd、wu-ftpd、glftpd
功能比較簡單的有 ftpd 和 Oftpd,前者與 FTP 客戶端工具 FTP 類似,只有標準的功能,此外支援 SSL。Oftpd 是一款非常小巧的匿名 FTP 伺服器。
可配製型高階的主要是 vsftpd 和 pure-ftpd。 這兩個側重於安全、速度和輕量級,在大型 FTP 伺服器上用得比較多,尤其是 vsftpd,這類伺服器對使用者認證和許可權控制比較簡單,更注重安全型和速度。Pure-ftpd 相對 vsftpd 要強大一些,支援的使用者認證方式也比較多。
配置性更好的是 proftpd、wu-ftpd 和 glftpd。Proftpd 的配置方式跟 Apache 非常類似,支援虛擬伺服器,可針對目錄、虛擬使用者進行許可權配製,可繼承和覆蓋。
今天主要介紹 VSFTP。
VSFTP 是一個基於 GPL 釋出的類 Unix 系統上使用的 FTP 伺服器軟體,它的全稱是 Very Secure FTP,它的優勢就是安全、高速、穩定的 FTP 伺服器。接下來介紹如何搭建這個檔案共享伺服器。
開始安裝
首先安裝 VSFTP
安裝前檢查一下包是否已經安裝,如下:
如果沒有安裝,使用如下方式安裝:
接著安裝 LFTP,這個可以用來登入瀏覽 FTP 共享文件:
以上兩個都輸入 y 安裝即可, 滴滴雲 已經提供專業的 yum 安裝源,您可以放心的安裝相關服務。當然了,除了 yum 的安裝方式之外,您還可以選擇從官方下載原始碼或者 RPM 包來安裝,RPM 安裝命令:
rpm - ivh / home / demo / vsftpd - 3.0.2 - 22.el7.x86_64.rpm
這根據您的使用方式來選擇,哪個方便使用哪個安裝。
開始配置
配置檔案位置
/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置檔案
/etc/vsftpd/ftpusers:用於指定哪些使用者不能訪問 FTP 伺服器,是個黑名單
/etc/vsftpd/user_list:指定允許使用 vsftpd 的使用者列表檔案,是個白名單
vim /etc/vsftpd/user_list
# 如果
userlist_deny= YES
(預設),不允許在這個檔案中的使用者登入 FTP,甚至不提示輸入密碼
# prompt 提示
/etc/vsftpd/vsftpd_conf_migrate.sh:是 vsftpd 操作的一些變數和設定指令碼
/var/ftp/:預設情況下匿名使用者的根目錄,其目錄如下:
服務啟動
我們先不做配置的情況下,看看預設能做什麼事情,啟動服務:
滴滴雲
主機預設安全組沒有開啟 21 埠,具體如何開啟參考
滴滴雲
官網介紹,開啟後如下:
訪問
以 mac 為例,mac 上自帶客戶端工具,其他作業系統也可以使用瀏覽器、資料夾資源管理器等工具進行訪問。
訪問協議字首都是
ftp://IP 地址
,埠一般都是預設埠,開啟 mac 上的自帶工具 Finder,選擇前往,再選擇連線伺服器,如下:
進入如下介面,輸入 FTP 伺服器資訊:
預設只能使用匿名使用者訪問,如圖:
成功後如下圖:
下面做一些配置:
允許所有員工上傳和下載檔案,並允許建立使用者自己的目錄:
anon_mkdir_write_enable
欄位可以控制是否允許匿名使用者建立目錄。
檢視並備份原配置檔案:
允許匿名使用者訪問:
anonymous_enable = YES
允許匿名使用者上傳檔案並可以建立目錄:
anon_upload_enable = YES
anon_mkdir_write_enable = YES
如圖:
重新啟動服務:
[ root @ 10 - 255 - 1 - 40 vsftpd ] # systemctl restart vsftpd
[ root @ 10 - 255 - 1 - 40 vsftpd ] #
mac 終端:
Windows 資源管理器:
解決辦法:
修改完後,再次訪問:
但是發現,能建立目錄,但不能刪除和重新命名資料夾,如圖所示:
我們建立一個資料夾,如下:
匿名使用者上傳檔案就算可以了,但是不能刪除和重新命名。
注:工作中,匿名使用者只是只讀訪問,寫的許可權也沒有的。
補充:如果想讓匿名使用者可以重新命名或者刪除的許可權,新增如下一條配置引數,即
anon_other_write_enable
,如下:
重新啟動服務就可以對重新命名和刪除資料夾了。
[ root @ 10 - 255 - 1 - 40 ftp ] # systemctl restart vsftpd
匿名使用者就可以刪除和修改,非常不安全,所以要慎重使用這個引數。
注意,預設匿名使用者家目錄的許可權是 755,這個許可權是不能改變的。
實戰演練
假設現有兩個部門負責產品文件,他們分別使用 user1 和 user2 帳號進行管理。要求只允許 user1 和 user2 帳號登入 FTP 伺服器,但不能登入本地系統,並將這兩個帳號的目錄限制為
/home/test
,而且不能進入該目錄以外的任何目錄。
1.建立產品系統內容的 FTP 帳號 user1 和 user2 並禁止本地登入,然後設定其密碼
[ root @ 10 - 255 - 1 - 40 ftp ] # useradd -s /sbin/nologin user1
同樣建立user2使用者。
修改兩個使用者密碼:
將 user2 同樣更改密碼,也可以直接使用命令 passwd user1 回車修改密碼。
2.配置
vsftpd.conf
主配置檔案並作相應修改
[ root @ 10 - 255 - 1 - 40 ftp ] # vim /etc/vsftpd/vsftpd.conf
繼續修改,將:
修改為:
local_root=/home/test:設定本地使用者的根目錄為
/home/test
chroot_list_enable=YES:激 chroot 功能
chroot_list_file=/etc/vsftpd/chroot_list:設定鎖定使用者在根目錄中的列表檔案。此檔案存放要鎖定的使用者名稱
儲存並退出。
3.建立
/etc/vsftpd/chroot_list
檔案,新增 user1 和 user2 帳號
按照上述配置修改好檔案。
建立對應文件目錄:
使用資源管理器建立一個資料夾並驗證:
會出現如下登入介面:
隨便建立一個目錄,如下:
基本的測試完了,歡迎拍磚。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559758/viewspace-2284766/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在基於CentOS的雲主機上用vsftpd搭建FTP伺服器CentOSFTP伺服器
- 基於滴滴雲搭建 Lustre
- 基於滴滴雲伺服器搭建 Consul 叢集伺服器
- 基於滴滴雲搭建微信小程式微信小程式
- 基於滴滴雲搭建安全穩定的 Memcached 伺服器伺服器
- 基於滴滴雲 CentOS 伺服器搭建 Nexus Maven 私庫CentOS伺服器Maven
- 基於滴滴雲虛擬機器的TensorFlow搭建與使用虛擬機
- 基於滴滴雲搭建 Ceph 開發環境開發環境
- 基於滴滴雲搭建 S3FS 及其實現機制剖析S3
- FTP檔案共享服務FTP
- 基於ECS搭建FTP服務(阿里雲)FTP阿里
- Centos7下搭建FTP檔案伺服器CentOSFTP伺服器
- 基於滴滴雲 DC2 搭建 VPP 應用例項
- 基於滴滴雲DC2+Nginx搭建負載均衡方案Nginx負載
- 基於滴滴雲搭建輕量文件網站生成工具 Docsify網站
- vmware虛擬機器與主機檔案共享虛擬機
- Linux檔案共享(FTP+NFS)LinuxFTPNFS
- 共享服務-FTP基礎(一)FTP
- 滴滴雲GPU雲主機使用EBS資料盤GPU
- 雲主機centos7搭建基於docker的hadoop叢集CentOSDockerHadoop
- centos7使用samba搭建檔案共享伺服器CentOSSamba伺服器
- 虛擬機器和windows主機中的檔案共享虛擬機Windows
- 滴滴雲上搭建 Gluster
- 在滴滴雲 DC2 雲伺服器上搭建 ZooKeeper 叢集實戰(一)伺服器
- 基於Linux的虛擬主機搭建Linux
- 基於滴滴雲部署 Elasticsearch + Kibana + FluentdElasticsearch
- 在滴滴雲上搭建 MongoDB 叢集 (一):MongoDB
- 伺服器上下載檔案FTP伺服器FTP
- 基於騰訊雲搭建squid代理伺服器UI伺服器
- VirtualBox中實現與主機檔案的共享
- mysql之 mysql 5.6不停機主從搭建(一主一從基於GTID複製)MySql
- 基於滴滴雲安裝 Docker 並上傳映象到滴滴雲 Docker 倉庫Docker
- 在滴滴雲 DC2 雲伺服器上搭建 RabbitMQ 叢集伺服器MQ
- 在滴滴雲 DC2 雲伺服器上搭建 Codis 實戰伺服器
- 在滴滴雲 DC2 雲伺服器上搭建 MongoDB 實戰伺服器MongoDB
- MySQL5.7在滴滴雲主機上的主從複製MySql
- 關於為什麼要在專案中使用FTP檔案伺服器FTP伺服器
- 在linux下搭建NFS伺服器實現檔案共享LinuxNFS伺服器