centOS7 安裝vsftp服務器

一.目的:有許多時候咱們須要從本身機器上,上傳文件到Linux服務器上,想要上傳文件就必需要經過FTP 協議(File Transfer Protocol(文件傳輸協議))。因此要在服務器上配置FTP功能。vim

二.步驟:服務器

  1. 查看服務器是否安裝vsftp:  rpm -p -vsftpd。 若是安裝則會顯示vsftpd版本,沒有安裝就會提示未安裝軟件包。
  2. 安裝vsftp命令(須要有root權限):yum install -y vsftpd。
  3. 安裝成功以後,檢查vsftp狀態(是否激活active):systemctl status vsftpd.service。

        此時,你已經成功安裝好了vsftp服務器。可是,最關鍵的不是安裝,而是如何配置服務器,也是難點。網絡

三.配置:ui

         聲明:如下全部文件路徑皆以 「全路徑」 演示。spa

  • 建立vsftp的用戶數據
    • 建立二進制文件(此文件是做爲生成用戶數據的一個臨時數據文件,包含用戶名、密碼):
    • touch '/etc/vsftpd/用戶名'。用戶名 本身隨便取,我命名爲「vsftpuser.txt」,即 touch '/etc/vsftpd/vsftpuser.txt'。
    • 向二進制文件中添加內容:
      • vim '/etc/vsftpd/vsftpuser.txt'。進入以下頁面:

        1爲用戶名,2爲密碼。

        PS:一條信息須要佔據一行,用戶名、密碼不能夠寫在一行。不能使用root作用戶名,由於系統須要,因此你不能用,嘻嘻。blog

      • 使用  :wq 退出vim編輯頁面,保存文件。
    • 使用db4命令使vsftpuser.txt文本文件生成vsftpuser.db(名字本身定義也能夠)數據文件
      • 檢查是否安裝db4 :rpm –q  db。
      • 在網絡搜索匹配你本身系統的安裝包:yum search db4。以下圖所示:

      • 安裝db4: yum install -y compat-db47.x86_64。
      • 生成vsftpuser.db數據文件: db_load -T -t hash -f '/etc/vsftpd/vsftpuser.txt' '/etc/vsftpd/vsftpuser.db'。
      • 查看vsftpuser.db數據文件,以下圖就對啦:

  • 設置ftp 的Guest帳戶
    • 創造ftp文件存儲目錄:mkdir -p '/ftp/private'
    • 將此目錄設置成ftp文件傳輸目錄:useradd  -d   '/ftp/private'  -s  /sbin/nologin  '/etc/vsftpd/vsftpuser'
  • 編輯vsftpd的PAM認證文件
    • 備份/etc/pam.d/vsftpd文件,而後進入打開/etc/pam.d/vsftpd:vi /etc/pam.d/vsftpd。
    • auth及account的全部配置行行均在註釋掉。
    • 在文件最上面兩行添加以下內容:
      • auth required pam_userdb.so db=/etc/vsftpd/vsftpuserget

      • account required pam_userdb.sodb=/etc/vsftpd/vsftpusercmd

                

  • 配置vsftpd.conf
    • 打開/etc/vsftpd/vsftpd.conf文件
    • # anonymous_enable=YES 改成 anonymous_enable=NO
    • 在文件裏面添加以下內容:
      • virtual_use_local_privs=YES
      • guest_enable=YES
      • guest_username=vsftpd
      • chroot_local_user=YES
      • allow_writeable_chroot=YES
    • 保存
  • 將ftp設置成開機自啓:systemctl enable  vsftpd

4、防火牆設置hash

  • 添加防火牆設置:firewall-cmd --permanent  --zone=public  --add-service=ftp
  • 從新加載防火牆:firewall-cmd --reload

5、啓動ftpit

  • 查看ftp狀態:systemctl  status  ftpd
  • 啓動ftp:systemctl  start  ftpd
相關文章
相關標籤/搜索