Linux CentOS7部署FTP

部署條件

linux CentOS7系統的虛擬機,需要root用戶和密碼,可以正常連接。

安裝FTP

1. 查看是否安裝FTP,執行此命令:rpm -qa | grep vsftpd,無返回值則沒有安裝,出現如下圖所示,則已安裝。

2. 如果沒安裝則執行安裝命令:yum -y install vsftpd。出現如下圖信息則表示安裝成功。

 

 

創建FTP用戶

  1. 創建FTP用戶。執行命令:useradd -d /home/ftptest ftptest。
  2. 設置用戶密碼,執行命令:passwd ftptest。輸入密碼:123456。
  3. 限制用戶不能telnet只能FTP,執行命令:usermod -s /sbin/nologin ftptest。
  4. 設置該用戶下面的文件其他用戶都可讀,寫,執行。執行命令:chmod -R 777 /home/ftptest。
  5. 指定允許使用vsftpd 的用戶列表文件,將ftptest增加到白名單。vim /etc/vsftpd/user_list。
  6. 指定允許使用vsftpd 的用戶列表文件。 控制名單下的目錄能不能離開ftp根目錄,將ftptest增加進去。vim /etc/vsftpd/chroot_list

配置FTP環境

1. 檢查selinux的狀態,執行命令:vim /etc/selinux/config,如果不是disabled狀態則需要修改爲此狀態,關閉後要重啓系統,重啓命令:reboot和shutdown -r now都可以。

 

2. 修改FTP的配置文件。執行命令:vim /etc/vsftpd/vsftpd.conf

3. 允許匿名用戶訪問爲了安全選擇關閉。

anonymous_enable=NO(修改)

 

chroot_local_user=YES(修改)

chroot_list_enable=YES(修改)

chroot_list_file=/etc/vsftpd/chroot_list(修改)

4. vsftpd增強了安全檢查,如果用戶被限定在了其主目錄下,則該用戶的主目錄不能再具有寫權限了!如果檢查發現還有寫權限,就會報該錯誤。要修復這個錯誤,可以用命令chmod a-w /home/ ftptest去除用戶主目錄的寫權限,注意把目錄替換成你自己的。或者你可以在vsftpd的配置文件中增加下列項:

allow_writeable_chroot=YES(新增)

在user_list中允許登錄,不在user_list中拒絕登錄

userlist_enable=YES(新增)

userlist_deny=NO(新增)

5.  與ssh一樣,vsftp的配置文件默認開啓了DNS反向解析,這可能會造成用戶在登陸到FTP服務器的時候奇慢無比,只要在配置文件中禁用DNS反向解析即可解決問題。

reverse_lookup_enable=NO

FTP服務器操作

  1. 啓動FTP服務器,執行命令:/bin/systemctl start vsftpd.service
  2. 停止FTP服務器,執行命令:/bin/systemctl stop vsftpd.service
  3. 重啓FTP服務器,執行命令:/bin/systemctl restart vsftpd.service
  4. 查看FTP服務器,執行命令:/bin/systemctl status vsftpd.service
  5. 開機自動重啓FTP服務器,,執行命令:chkconfig vsftpd on

測試FTP服務器

  1. 安裝FTP客戶端,執行命令:yum -y install ftp。
  2. 創建一個測試文件,執行命令:touch /var/ftp/pub/test.txt。
  3. 使用我們前面新創建的用戶連接虛擬機,執行命令:ftp 主機名。

我測試的IP是172.172.1.89,不清楚的可以ifconfig查詢,輸入賬號密碼。出現230 Login successful.則表示登錄成功

4. 進入cd /var/ftp/pub/目錄,執行命令:get test.txt。如下圖則下載成功。

5. 下載的存放路徑就是當前用戶的家目錄,可以進入進行查詢,至此FTP服務搭建完畢。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章