cent OS7搭建vsftp服務器配置詳解

首先網絡、防火牆方面的基本要求要知足,好比靜態ip、防火牆是否能夠經過ftp的流量。服務器

就能夠開始搭建ftp服務器了,咱們使用vsftpd這款ftp服務軟件。(文中包含匿名訪問及用戶驗證的相關配置,基於虛擬用戶的配置將會在下一篇寫)網絡

-----安裝vsftpd並匿名訪問:併發

一、準備好vsftpd軟件的安裝包(系統盤裏也有),安裝vsftpd服務。app

cent OS7搭建vsftp服務器配置詳解

安裝之後執行systemctl start vsftpd啓動vsftpd就能夠匿名訪問ftp服務器了,雖然說匿名,不過也是有相應的系統帳號 「 ftp 」 。默認匿名用戶的ftp根目錄是/var/ftp/,只有讀取的權限,並且本地/var/ftp/目錄對ftp帳號要有相應的權限)如若匿名用戶須要更大的權限,能夠更改 vsftpd 服務的配置文件tcp

二、打開vsftpd服務的配置文件ide

cent OS7搭建vsftp服務器配置詳解

三、爲了方便預覽,我把大多數註釋的內容都刪除了日誌

cent OS7搭建vsftp服務器配置詳解

四、如下爲匿名用戶權限最大的配置文件信息:code

cent OS7搭建vsftp服務器配置詳解

匿名用戶常見配置項的含義說明:orm

  • anonymous_enable=YES:是否容許匿名訪問;
  • anon_umask=022:設置匿名用戶所上傳文件的默認權限掩碼值(反掩碼);
  • anon_root=/var/ftp:設置匿名用戶的FTP根目錄;
  • anon_upload_enable=YES;是否容許匿名用戶上傳文件;
  • anon_mkdir_write_enable=YES:是否容許匿名用戶由建立目錄的寫入權限;
  • anon_other_write_enable=YES:是否容許匿名用戶有其餘寫入權限,如對文件更名、覆蓋及刪除文件等;

-----基於用戶驗證的FTP服務:blog

如下是須要用戶驗證的 ftp 服務配置文件,配置文件的默認路徑爲/etc/vsftpd/vsftpd.conf

cent OS7搭建vsftp服務器配置詳解

以上配置文件最終的效果是,每一個系統用戶均可登陸ftp服務器,而且權限最大,ftp的默認根目錄爲系統用戶的宿主目錄下。(對於本地系統用戶設置權限,直接更改用戶宿主目錄的權限更方便些)

關於本地用戶常見的配置項及含義說明:

  • local_enable=YES:是否容許本地用戶訪問;
  • local_umask=022:設置本地用戶所上傳文件的默認權限掩碼值(反掩碼);
  • local_root=/var/ftp:設置本地用戶的FTP根目錄(默認爲用戶的宿主目錄);
  • chroot_local_user=YES:是否將FTP本地用戶禁錮在宿主目錄中;
  • allow_writeable_chroot=YES:容許被限制用戶的主目錄具備寫權限;
  • local_max_rate=0:限制本地用戶的最大傳輸速率(0爲無限制),單位爲字節/秒(B/s)

在/etc/vsftpd/目錄下還有兩個配置文件ftpusersuserlist

cent OS7搭建vsftp服務器配置詳解

  • ftpusers文件:此文件中列出的用戶將禁止登陸vsftpd服務器。默認包含root、bin、daemon等用於系統運行的特殊用戶;
  • user_list文件:此文件中包含的用戶可能被禁止,可能被容許,具體取決於主配置文件vsftpd.conf中的設置,當存在「userlist——enable=YES」時,user_list列表文件方可生效,若繼續指定「userlist_deny=YES」,則功能與ftpusers文件同樣,表示禁止此列表中的用戶登陸;若指定「userlist_deny=NO」,則僅容許列表中的用戶登陸。

    -----關於ftp全部配置項的詳細解釋
    
    -----關於匿名用戶:
  • anonymous_enable=YES:是否容許匿名訪問;
  • anon_umask=022:設置匿名用戶所上傳文件的默認權限掩碼值(反掩碼);
  • anon_root=/var/ftp:設置匿名用戶的FTP根目錄;
  • anon_upload_enable=YES;是否容許匿名用戶上傳文件;
  • anon_mkdir_write_enable=YES:是否容許匿名用戶由建立目錄的寫入權限;
  • anon_other_write_enable=YES:是否容許匿名用戶有其餘寫入權限,如對文件更名、覆蓋及刪除文件等;

-----關於本地用戶:

  • local_enable=YES:是否容許本地用戶訪問;
  • local_umask=022:設置本地用戶所上傳文件的默認權限掩碼值(反掩碼);
  • local_root=/var/ftp:設置本地用戶的FTP根目錄(默認爲用戶的宿主目錄);
  • chroot_local_user=YES:是否將FTP本地用戶禁錮在宿主目錄中;
  • allow_writeable_chroot=YES:容許被限制用戶的主目錄具備寫權限;
  • local_max_rate=0:限制本地用戶的最大傳輸速率(0爲無限制),單位爲字節/秒(B/s)

-----關於全局配置:

  • listen=NO: 是否以獨立運行的方式監聽服務;
  • listen_address=0.0.0.0:設置監聽f t p服務的ip地址;
  • listen_port=21:設置監聽ftp服務的端口號;
  • write_enable=YES:啓用任何形式的寫入權限,(如上傳、刪除文件等)都須要開啓此項;
  • download_enable=YES:是否容許下載文件(創建僅限於瀏覽、上傳的FTP服務器時,可將此項設置爲「NO」);
  • dirmessage_enable=YES:用戶切換進入目錄時顯示 「.message」文件(若是已存在)的內容;
  • xferlog_enable=YES:啓用xferlog日誌,默認記錄到 /var/log/xferlog;
  • xferlog_std_format=YES:啓用標準的xferlog日誌格式,若禁用此項,將使用vsftpd本身的日誌格式;
  • connect_from_port_20=YES:容許服務器主動模式(從20端口創建數據鏈接);
  • pasv_enable=NO:禁止被動模式鏈接;默認容許被動模式鏈接;
  • pasv_max_port=24600:設置用於被動模式的服務器最大端口號;
  • pasv_min_port=24500:設置用於被動模式的服務器最大端口號;
  • pam_service_name=vsftpd.vu:設置用於用戶認證的PAM文件位置(/etc/pam.d/目錄中對應的文件名);
  • userlist_enable=YES:是否啓用userl_ist用戶列表文件;
  • userlist_deny=YES:是否禁用user_list列表文件中的用戶帳號;
  • max_clients=0:最多容許多少個客戶端同時鏈接(0爲無限制);
  • max_per_ip=0:對來自同一個ip地址的客戶端,最多容許多少個併發鏈接(0爲無限制);
  • tcp_wrappers=YES:是否啓用tcp_wrappers主機訪問控制;

-----關於虛擬用戶的配置項:

  • guest_username=test:指定映射的系統用戶名稱;
  • guest_enable=YES:是否啓用虛擬用戶;
  • allow_writeable_chroot=容許被限制用戶的主目錄具備寫權限(此項必須寫入,不然可能會報錯)
  • anon_world_readable_only=NO:容許用戶下載目錄內容
  • anon_other_write_enable=YES:容許匿名用戶有其餘寫入權限,如重命名、覆蓋及刪除文件等;
  • user_config_dir=/etc/vsftpd/vusers_dir:指定虛擬用戶獨立的配置文件目錄;
相關文章
相關標籤/搜索