久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      Linux安裝vsftpd及配置詳解

      1 安裝vsftpd組件

      安裝完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件。
      [root@linuxidc ~]# yum -y install vsftpd

      2、FTP主動模式與FTP被動模式的端口說明

      FTP是僅基于TCP的服務,不支持UDP。 與眾不同的是FTP使用2個端口,一個數(shù)據(jù)端口和一個命令端口(也可叫做控制端口)。通常來說這兩個端口是21(命令端口)和20(數(shù)據(jù)端口)。但FTP工作方式的不同,數(shù)據(jù)端口并不總是20。這就是主動與被動FTP的最大不同之處。

      FTP協(xié)議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。

      (一) FTP主動模式

      主動方式的FTP是這樣的:客戶端從一個任意的非特權(quán)端口N(N>1024)連接到FTP服務器的命令端口,也就是21端口。然后客戶端開始 監(jiān)聽端口N+1,  并發(fā)送FTP命令“port N+1”到FTP服務器。接著服務器會從它自己的數(shù)據(jù)端口(20)連接到客戶端指定的數(shù)據(jù)端口(N+1)。    針對FTP服務器前面的防火墻來說,必須允許以下通訊才能支持主動方式FTP:  1. 任何大于1024的端口到FTP服務器的21端口。(客戶端初始化的連接)  2. FTP服務器的21端口到大于1024的端口。 (服務器響應客戶端的控制端口)  3. FTP服務器的20端口到大于1024的端口。(服務器端初始化數(shù)據(jù)連接到客戶端的數(shù)據(jù)端口)  4. 大于1024端口到FTP服務器的20端口(客戶端發(fā)送ACK響應到服務器的數(shù)據(jù)端口)    簡明概括:  PORT(主動)方式的連接過程是:客戶端向服務器的FTP端口(默認是21)發(fā)送連接請求,服務器接受連接,建立一條命令鏈路。當需要傳送數(shù)據(jù)時,  客戶端在命令鏈路上用PORT命令告訴服務器:“我打開了XXXX端口,你過來連接我”。于是服務器從20端口向客戶端的XXXX端口發(fā)送連接請求,  建立一條數(shù)據(jù)鏈路來傳送數(shù)據(jù)。    開啟主動模式:  pasv_enable=no  若設(shè)置為YES,則使用PASV工作模式;若設(shè)置為NO,則使用PORT模式。默認值為YES,即使用PASV工作模式。    主動模式下:  SecureFX工具去連接ftp,客戶沒有允許開放端口,服務器沒法與客戶端相連接,關(guān)閉客戶端防火墻

      (二) FTP被動模式

      為了解決服務器發(fā)起到客戶的連接的問題,人們開發(fā)了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知服務器它處于  被動模式時才啟用。  在被動方式FTP中,命令連接和數(shù)據(jù)連接都由客戶端發(fā)起,這樣就可以解決從服務器到客戶端的數(shù)據(jù)端口的入方向連接被防火墻過濾掉的問題。    當開啟一個 FTP連接時,客戶端打開兩個任意的非特權(quán)本地端口(N > 1024和N+1)。第一個端口連接服務器的21端口,但與主動方式的FTP不同,  客戶端不會提交PORT命令并允許服務器來回連它的數(shù)據(jù)端口,而是提交 PASV命令。這樣做的結(jié)果是服務器會開啟一個任意的非特權(quán)端口(P > 1024)  ,并發(fā)送PORT P命令給客戶端。然后客戶端發(fā)起從本地端口N+1到服務器的端口P的連接用來傳送數(shù)據(jù)。    對于服務器端的防火墻來說,必須允許下面的通訊才能支持被動方式的FTP:  1. 從任何大于1024的端口到服務器的21端口 (客戶端初始化的連接)  2. 服務器的21端口到任何大于1024的端口 (服務器響應到客戶端的控制端口的連接)  3. 從任何大于1024端口到服務器的大于1024端口 (客戶端初始化數(shù)據(jù)連接到服務器指定的任意端口)  4. 服務器的大于1024端口到遠程的大于1024的端口(服務器發(fā)送ACK響應和數(shù)據(jù)到客戶端的數(shù)據(jù)端口)    簡明概括:  PASV(被動)方式的連接過程是:客戶端向服務器的FTP端口(默認是21)發(fā)送連接請求,服務器接受連接,建立一條命令鏈路。當需要傳送數(shù)據(jù)時,  服務器在命令鏈路上用PASV命令告訴客戶端:“我打開了XXXX端口,你過來連接我”。于是客戶端向服務器的XXXX端口發(fā)送連接請求,建立一條數(shù)據(jù)  鏈路來傳送數(shù)據(jù)。    開啟被動模式  默認是開啟的,但是要指定一個端口范圍,打開vsftpd.conf文件,在后面加上  pasv_enable=yes  若設(shè)置為YES,則使用PASV工作模式;若設(shè)置為NO,則使用PORT模式。默認值為YES,即使用PASV工作模式。  pasv_min_port=30000  在PASV工作模式下,數(shù)據(jù)連接可以使用的端口范圍的最大端口,0 表示任意端口。默認值為0。  pasv_max_port=30999  在PASV工作模式下,數(shù)據(jù)連接可以使用的端口范圍的最小端口,0 表示任意端口。默認值為0。    表示端口范圍為30000~30999,這個可以隨意改。改完重啟一下vsftpd  由于指定這段端口范圍,iptables也要相應的開啟這個范圍,所以像上面那樣打開iptables文件。  也是在21上下面另起一行,更那行差不多,只是把21 改為30000:30999,然后:wq保存,重啟下iptables。這樣就搞定了。

      (三)主動與被動FTP優(yōu)缺點:

      主動FTP對FTP服務器的管理有利,但對客戶端的管理不利。因為FTP服務器企圖與客戶端的高位隨機端口建立連接,而這個端口很有可能被客戶端的  防火墻阻塞掉。被動FTP對FTP客戶端的管理有利,但對服務器端的管理不利。因為客戶端要與服務器端建立兩個連接,其中一個連到一個高位隨機端  口,而這 個端口很有可能被服務器端的防火墻阻塞掉。  幸運的是,有折衷的辦法。既然FTP服務器的管理員需要他們的服務器有最多的客戶連接,那么必須得支持被動FTP。我們可以通過為FTP服務器指定  一個有 限的端口范圍來減小服務器高位端口的暴露。這樣,不在這個范圍的任何端口會被服務器的防火墻阻塞。雖然這沒有消除所有針對服務器的  危險,但它大大減少了危險。    簡而言之:  主動模式(PORT)和被動模式(PASV)。主動模式是從服務器端向客戶端發(fā)起連接;被動模式是客戶端向服務器端發(fā)起連接。兩者的共同點是都使  用21端口進行用戶驗證及管理,差別在于傳送數(shù)據(jù)的方式不同,PORT模式的FTP服務器數(shù)據(jù)端口固定在20,而PASV模式則在1025-65535之間隨機。    常見的FTP客戶端軟件的PASV方式的關(guān)閉方法  大部分FTP客戶端默認使用PASV方式。IE默認使用PORT方式。 在大部分FTP客戶端的設(shè)置里,常見到的字眼都是“PASV”或“被動模式”,  極少見到“PORT”或“主動模式”等字眼。因為FTP的登錄方式只有兩種:PORT和PASV,取消PASV方式,就意味著使用PORT方式。  (1)IE:工具 -> Internet選項 -> 高級 -> “使用被動FTP”(需要IE6.0以上才支持)。  (2)CuteFTP:Edit -> Setting -> Connection -> Firewall -> “PASV Mode” 或File -> Site Manager,在左邊選中站  點 -> Edit -> “Use PASV mode” 。  (3)FlashGet:工具 -> 選項 -> 代理服務器 -> 直接連接 -> 編輯 -> “PASV模式”。  (4)FlashFXP:選項 -> 參數(shù)選擇 -> 代理/防火墻/標識 -> “使用被動模式” 或 站點管理 -> 對應站點 -> 選項 ->   “使用被動模式”或快速連接 -> 切換 -> “使用被動模式”。

      3、 登錄方式(三種登錄方式)

      3.1 防火墻開啟21端口

      因為ftp默認的端口為21,而CentOS默認是沒有開啟的,所以要修改iptables文件

      [root@linuxidc ~]# vim /etc/sysconfig/iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT    在行上面有22 -j ACCEPT 下面另起一行輸入跟那行差不多的,只是把22換成21,然后:wq保存。    還要運行下,重啟iptables  [root@linuxidc ~]# service iptables restart

      3.2 FTP匿名登錄

      FTP的匿名登錄一般有三種:

      1、 用戶名:anonymous 密碼:Email或者為空

      2、 用戶名:FTP 密碼:FTP或者為空

      3、 用戶名:USER 密碼:pass

      3.2.1 在IE瀏覽器或文件管理器中匿名訪問

      ftp默認開啟的匿名用戶登錄和主動模式,用IE訪問需要把“使用被動FTP”選項去掉前面的勾,這樣ftp都連接上去

      Linux安裝vsftpd及配置詳解

      在文件管理器輸入框中輸入ftp://域名或者ip,如果端口不是21的后面加端口。
      Linux安裝vsftpd及配置詳解

      3.3 匿名用戶權(quán)限

      3.3.1 vsftpd配置文件

      默認配置

      anonymous_enable=YES  #允許匿名用戶和本地用戶登陸。    local_enable=YES  #匿名用戶使用的登陸名為ftp或anonymous,口令為空;匿名用戶不能離開匿名用戶家目錄/var/ftp,且只能下載不能上傳。    write_enable=YES  #本地用戶的登錄名為本地用戶名,口令為此本地用戶的口令;本地用戶可以在自己家目錄中進行讀寫操作;本地用戶可以離開自家目錄切換至有權(quán)限  訪問的其他目錄,并在權(quán)限允許的情況下進行上傳/下載。    #寫在文件/etc/vsftpd.ftpusers中的本地用戶禁止登陸。

      3.3.2 匿名用戶(anonymous)設(shè)置

      anonymous_enable=YES/NO(YES)  #控制是否允許匿名用戶登入,YES 為允許匿名登入,NO 為不允許。默認值為YES。    write_enable=YES/NO(YES)  #是否允許登陸用戶有寫權(quán)限。屬于全局設(shè)置,默認值為YES。    no_anon_password=YES/NO(NO)  #若是啟動這項功能,則使用匿名登入時,不會詢問密碼。默認值為NO。    ftp_username=ftp  #定義匿名登入的使用者名稱。默認值為ftp。    anon_root=/var/ftp  #使用匿名登入時,所登入的目錄。默認值為/var/ftp。注意ftp目錄不能是777的權(quán)限屬性,即匿名用戶的家目錄不能有777的權(quán)限。    anon_upload_enable=YES/NO(NO)  #如果設(shè)為YES,則允許匿名登入者有上傳文件(非目錄)的權(quán)限,只有在write_enable=YES時,此項才有效。當然,匿名用戶必須要有對上層目錄的寫入權(quán)。默認值為NO。    anon_world_readable_only=YES/NO(YES)  #如果設(shè)為YES,則允許匿名登入者下載可閱讀的檔案(可以下載到本機閱讀,不能直接在FTP服務器中打開閱讀)。默認值為YES。    anon_mkdir_write_enable=YES/NO(NO)  #如果設(shè)為YES,則允許匿名登入者有新增目錄的權(quán)限,只有在write_enable=YES時,此項才有效。當然,匿名用戶必須要有對上層目錄的寫入權(quán)。  默認值為NO。    anon_other_write_enable=YES/NO(NO)  #如果設(shè)為YES,則允許匿名登入者更多于上傳或者建立目錄之外的權(quán)限,譬如刪除或者重命名。(如果anon_upload_enable=NO,則匿名用戶不能  上傳文件,但可以刪除或者重命名已經(jīng)存在的文件???如果anon_mkdir_write_enable=NO,則匿名用戶不能上傳或者新建文件夾,但可以刪除或者重  命名已經(jīng)存在的文件夾。)默認值為NO。    chown_uploads=YES/NO(NO)  #設(shè)置是否改變匿名用戶上傳文件(非目錄)的屬主。默認值為NO。    chown_username=username  #設(shè)置匿名用戶上傳文件(非目錄)的屬主名。建議不要設(shè)置為root。    anon_umask=077  #設(shè)置匿名登入者新增或上傳檔案時的umask 值。默認值為077,則新建檔案的對應權(quán)限為700。    deny_email_enable=YES/NO(NO)  #若是啟動這項功能,則必須提供一個檔案/etc/vsftpd/banner_emails,內(nèi)容為email address。若是使用匿名登入,則會要求輸入email address,  若輸入的email address 在此檔案內(nèi),則不允許進入。默認值為NO。    banned_email_file=/etc/vsftpd/banner_emails  #此文件用來輸入email address,只有在deny_email_enable=YES時,才會使用到此檔案。若是使用匿名登入,則會要求輸入email address,若輸入的email address 在此檔案內(nèi),則不允許進入。

      Linux安裝vsftpd及配置詳解

      local_umask目錄:
      777-022=755
      local_umask文件:
      666-022=644

      事例:
      Linux下允許vsftp匿名用戶上傳和下載的配置

      配置要注意三部分,請一一仔細對照
      1、vsftpd.conf配置文件

      # vi /etc/vsftpd/vsftpd.conf(vsftpd.conf文件的配置)  anonymous_enable=YES  #允許匿名用戶登錄FTP    anon_root=/var/ftp/pub  #設(shè)置匿名用戶的登錄目錄(如需要,需自己添加并修改)    anon_upload_enable=YES  #打開匿名用戶的上傳權(quán)限    anon_mkdir_write_enable=YES  #打開匿名用戶創(chuàng)建目錄的權(quán)限    anon_other_write_enable=YES  #打開匿名用戶刪除和重命名的權(quán)限(如需要,需自己添加)    anon_umask=022  #匿名用戶的掩碼(如需要,需自己添加,含義:如umask是022,這時創(chuàng)建一個權(quán)限為666的文件,文件的實際權(quán)限為666-022=644)

      2、ftp目錄的權(quán)限設(shè)置(匿名用戶)
      默認情況下,ftp的根目錄為/var/ftp,為了安全,這個目錄默認不允許設(shè)置為777權(quán)限,否則ftp將無法訪問。但是我們要匿名上傳文件,需要“other”用戶的寫權(quán)限,正確的做法:
      chmod o+w /var/ftp/pub/
      Linux安裝vsftpd及配置詳解
      上傳的文件權(quán)限是600,屬主和屬組默認都是ftp

      3、為了安全修改屬主權(quán)限為匿名的ftp權(quán)限,不用默認的root權(quán)限

      chown ftp /var/ftp/pub/ -R
      Linux安裝vsftpd及配置詳解

      *net use /d 清除ftp連接緩存**

      3.4 本地用戶登錄

      anonymous_enable=no  #不允許匿名用戶登入    local_enable=YES/NO(YES)  #控制是否允許本地用戶登入,YES 為允許本地用戶登入,NO為不允許。默認值為YES。    local_root=/home/username  #當本地用戶登入時,將被更換到定義的目錄下。默認值為各用戶的家目錄。    write_enable=YES/NO(YES)  #是否允許登陸用戶有寫權(quán)限。屬于全局設(shè)置,默認值為YES。    local_umask=022  #本地用戶新增檔案時的umask 值。默認值為077。    file_open_mode=0755  #本地用戶上傳檔案后的檔案權(quán)限,與chmod所使用的數(shù)值相同。默認值為0666。    chroot_local_user=YES  #用于指定用戶列表文件中的用戶不允許切換到上級目錄。默認值為NO。

      3.4.1 添加一個ftp用戶

      此用戶就是用來登錄ftp服務器用的。
      [root@linuxidc ~]# useradd ftpuser -s /sbin/nologin
      這樣一個用戶建完,不可以用這個登錄,記得用普通登錄不要用匿名了。登錄后默認的路徑為 /home/ftpuser.

      3.4.2 給ftp用戶添加密碼

      [root@linuxidc ~]# passwd ftpuser
      輸入兩次密碼后修改密碼。

      3.4.3 關(guān)閉匿名訪問,設(shè)置相應權(quán)限

      修改/etc/vsftpd/vsftpd.conf文件:

      anonymous_enable=no  local_enable=YES  local_root=/home/ftpuser  write_enable=YES  local_umask=022  file_open_mode=0755  chroot_local_user=YES

      3.4.4 重啟ftp服務:

      [root@linuxidc ~]# service vsftpd restart

      3.4.5 訪問

      在windows資源管理器中連接ftp://ip
      本地用戶登錄(家目錄/home/ftpuser),可以創(chuàng)建或刪除目錄、文件,目錄權(quán)限是755,文件權(quán)限是644
      Linux安裝vsftpd及配置詳解

      修改路徑為/opt/test下(local_root=/opt/test),為了安全,在/opt/test目錄下建tt目錄,并給tt目錄屬主和屬組修改為ftpuser,這樣才可以創(chuàng)建或刪除目錄,上傳、刪除文件
      Linux安裝vsftpd及配置詳解

      3.5虛擬用戶登錄

      pam_service_name=vsftpd  #虛擬用戶使用PAM認證方式。    guest_enable= YES/NO(NO)  #設(shè)置PAM使用的名稱,默認值為/etc/pam.d/vsftpd。    guest_username=ftp  #啟用虛擬用戶。默認值為NO。    virtual_use_local_privs=YES/NO(NO)  #這里用來映射虛擬用戶。默認值為ftp。  #當該參數(shù)激活(YES)時,虛擬用戶使用與本地用戶相同的權(quán)限。當此參數(shù)關(guān)閉(NO)時,虛擬用戶使用與匿名用戶相同的權(quán)限。默認情況下此參數(shù)  是關(guān)閉的(NO)。

      3.5.1 創(chuàng)建文本格式的用戶名、密碼列表

      首先需要建立一個文本格式的用戶名/密碼列表文件,奇數(shù)行為用戶名,偶數(shù)行為上一行中用戶名所對應的密碼。

      例如:添加兩個用戶jene、john,密碼分別為abc123、abc456執(zhí)行以下的操作:

      [root@ling ~]# vi /etc/vsftpd/juser.txt  jene  abc123  john  abc456

      3.5.2 生成數(shù)據(jù)庫:

      db_load:安裝 db4,db4-devel,db4-utils

      # cd //etc/vsftpd      #切換到/etc/vsftpd的目錄下  # yum -y install db4*  # db_load -T -t hash -f juser.txt juser.db     #將剛創(chuàng)建的juser.list列表轉(zhuǎn)換為juser.list.db    file juser.db  #查看轉(zhuǎn)換后的文件類型

      3.5.3 修改數(shù)據(jù)文件訪問權(quán)限:

      chmod 600 /etc/vsftpd/juser.db

      3.5.4修改pam配置:

      # vi /etc/pam.d/juser.pam  //為虛擬用戶創(chuàng)建PAM認證文件,文件名為juser.pam(見名之義)  auth    required        pam_userdb.so   db=/etc/vsftpd/juser  account    required        pam_userdb.so   db=/etc/vsftpd/juser  注意:db=/etc/vsftpd/vsftpd_login 后面的.db必須去掉  或    # vi /etc/pam.d/vsftpd  將里面其他的都注釋掉,添加下面這兩行:  auth    required        pam_userdb.so   db=/etc/vsftpd/vuser  account    required        pam_userdb.so   db=/etc/vsftpd/vuser

      3.5.5 創(chuàng)建虛擬賬號對應的系統(tǒng)用戶:

      # useradd -d /var/ftptom -s /sbin/nologin tom     #添加用戶tom,指定到新建的家目錄,將虛擬用戶對應到這個系統(tǒng)賬號上,這個  賬號無需設(shè)置密碼及登錄Shell    # chmod 755 /var/ftptom/      #調(diào)整權(quán)限以允許瀏覽目錄

      3.5.6 修改主配置文件

      # vi /etc/vsftpd/vsftpd.conf  anonymous_enable=no   //禁用匿名用戶登錄  (anon_upload_enable=YES  anon_mkdir_write_enable=YES  anon_umask=022   //指定上傳權(quán)限掩碼)    local_enable=YES        //需映射本地用戶,所以啟用些項  write_enable=YES        //啟用上傳寫入支持  chroot_local_user=YES     //(自建配置)將所有本地用戶限制在家目錄中  guest_enable=YES       //啟用映射功能  guest_username=tom      //指定映射的系統(tǒng)用戶名稱  pam_service_name=juser.pam  //指定新的PAM認證文件  user_config_dir=/opt/vsftpd/juser_dir   //(自建配置)設(shè)置虛擬帳號的主目錄為/juser_dir  max_clients=300     //(自建配置)設(shè)置FTP服務器最大接入客戶端數(shù)為300個   max_per_ip=10     //(自建配置)設(shè)置每個IP地址最大連接數(shù)為10個   listen=YES  port_enable=NO    //(自建配置)取消PORT模式進行數(shù)據(jù)傳輸   connect_from_port_20=NO     //(修改配置)PORT模式進行數(shù)據(jù)傳輸部使用20端口   ftp_data_port=20  pasv_enable=YES          //(自建配置)允許PASV模式進行數(shù)據(jù)傳輸   pasv_min_port=65341     //(自建配置)PASV模式下數(shù)據(jù)傳輸所使用port范圍下界   pasv_max_port=65351     //(自建配置)PASV模式下數(shù)據(jù)傳輸所使用port范圍上界

      3.5.7 建立虛擬賬戶的配置文件:

      如上面的在沒有給予虛擬用戶上傳、建目錄等權(quán)限的設(shè)置,可以用下面的方法給虛擬用戶建立獨立的配置文件。

      在user_config_dir指定路徑下,建立與虛擬帳號同名的配置文件并添加相應的配置字段

      # mkdir /opt/vsftpd/juser_dir    cd /opt/vsftpd/juser_dir         //切換到這個新建的配置文件夾下    touch jene      創(chuàng)建jene配置文件    touch john      創(chuàng)建john配置文件    #vi jene   //為用戶jene建立獨立的配置文件,允許他可以上傳和創(chuàng)建目錄    anon_upload_enable=YES    anon_mkdir_write_enable=YES    #touch john    //為其它用戶(john)創(chuàng)建空的配置文件,也就是他們沒有上傳和創(chuàng)建目錄的權(quán)限    [root@ling juser_dir]# service vsftpd reload //重載vsftpd服務器

      登錄ftp服務器
      Linux安裝vsftpd及配置詳解
      已經(jīng)登錄tom的家目錄下了
      Linux安裝vsftpd及配置詳解
      以上的虛擬用戶jene和john共用映射的tom家目錄的

      3.5.8 若用自己各自的目錄

      vi vsftpd.conf    anonymous_enable=NO(修改配置)禁用匿名用戶登錄    write_enable=YES (默認開啟)允許使用任何可以修改文件系統(tǒng)的FTP的指令    local_enable=YES(默認開啟)啟用本地用戶登錄設(shè)置    chroot_local_user=YES (自建配置)將所有本地用戶限制在家目錄中    pam_service_name=juser.pam(默認開啟)配置vsftpd使用的PAM模塊為vsftpd    user_config_dir=/opt/vsftpd/juser_dir (自建配置)設(shè)置虛擬帳號的主目錄為/vsftpd_login
      # mkdir /opt/vsftpd/juser_dir       //建虛擬賬號主目錄    # cd /opt/vsftpd/juser_dir         //切換到這個新建的配置文件夾下    # touch jene      創(chuàng)建jene配置文件    # touch john      創(chuàng)建john配置文件

      為各虛擬用戶建立獨立的配置文件

      # vi jene    anon_world_readable_only=YES    只讀,不能下載    anon_world_readable_only=no       表示用戶可以瀏覽FTP目錄和下載文件    guest_enable=yes  開啟虛擬帳號登錄    guest_username=ftp_jene    設(shè)置虛擬用戶jene對應的系統(tǒng)帳號為ftp_jene    local_root=/opt/jene               用戶登入時,所在目錄    anon_world_readable_only=no  不允許匿名用戶瀏覽器整個服務器的文件系統(tǒng)    anon_max_rate=50000    限定傳輸速率為50KB/s
      # vi john    guest_enable=yes 開啟虛擬帳號登錄     guest_username=ftp_ john    設(shè)置虛擬用戶john對應的系統(tǒng)帳號為ftp_john    local_root=/opt/john               用戶登入時,所在目錄    anon_other_write_enable=YES  允許匿名賬號具有刪除、改名權(quán)限    anon_mkdir_write_enable=yes  允許創(chuàng)建文件夾,不能刪除目錄    anon_upload_enable=yes        開啟匿名帳號的上傳功能    anon_world_readable_only=no  不允許匿名用戶瀏覽整個服務器的文件系統(tǒng)    anon_max_rate=100000          限定傳輸速度為100KB/s

      重啟vsftpd服務
      #service vsftpd restart

      linux文件權(quán)限分成“屬主”、“屬組”和“其他人”這三種,如果“其他人”沒有可讀權(quán)限,那anon_world_readable_only這個參數(shù)就起效了,對于目錄來說,如果“其他人”沒有可讀權(quán)限,且anon_world_readable_only=YES,則匿名用戶無法瀏覽該目錄下的所有內(nèi)容(看上去像個空目錄),而對于文件來說,如果“其他人”沒有可讀權(quán)限,且anon_world_readable_only=YES,則匿名用戶無法下載該文件。

      4、修改selinux

      外網(wǎng)是可以訪問上去了,可是發(fā)現(xiàn)沒法返回目錄(使用ftp的主動模式,被動模式還是無法訪問),也上傳不了,因為selinux作怪了。
      修改selinux:
      執(zhí)行以下命令查看狀態(tài):

      [root@linuxidc ~]# getsebool -a | grep ftp    allow_ftpd_anon_write --> off  allow_ftpd_full_access --> off  allow_ftpd_use_cifs --> off  allow_ftpd_use_nfs --> off  ftp_home_dir --> off  ftpd_connect_db --> off  ftpd_use_passive_mode --> off  httpd_enable_ftp_server --> off  tftp_anon_write --> off  [root@linuxidc ~]# 

      執(zhí)行上面命令,再返回的結(jié)果看到兩行都是off,代表,沒有開啟外網(wǎng)的訪問

      [root@linuxidc ~]# setsebool -P allow_ftpd_full_access on  [root@linuxidc ~]# setsebool -P ftp_home_dir on

      這樣應該沒問題了(如果,還是不行,看看是不是用了ftp客戶端工具用了passive模式訪問了,如提示Entering Passive mode,就代表是passive模式,默認是不行的,因為ftp passive模式被iptables擋住了,下面會講怎么開啟,如果懶得開的話,就看看你客戶端ftp是否有port模式的選項,或者把passive模式的選項去掉。如果客戶端還是不行,看看客戶端上的主機的電腦是否開了防火墻,關(guān)吧)

      FileZilla的主動、被動模式修改:
      菜單:編輯→設(shè)置
      Linux安裝vsftpd及配置詳解

      5、設(shè)置開機啟動vsftpd ftp服務

      [root@linuxidc ~]# chkconfig vsftpd on

      6、修改FTP默認端口

      6.1登錄服務器,打開vsftp.conf文件

      # vim /etc/vsftpd/vsftpd.conf    在文件末尾增加listen_port=2121  pasv_enable=yes  pasv_min_port=30000  pasv_max_port=30999  listen_port=2121

      6.2打開/etc/services文件

      [plain] view plain copy    # vim /etc/services    找到ftp選項并將21修改成你設(shè)置的端口,本文為2121  # 21 is registered to ftp, but also used by fsp    ftp             2121/tcp    ftp             2121/udp          fsp fspd  

      6.3 重啟vsftp服務

      # /etc/init.d/vsftpd restart     使用netstat -utlpn | grep vsftp命令查看設(shè)置的端口,確認是否成功  # netstat -utlpn | grep vsftp    tcp        0      0 0.0.0.0:2121                0.0.0.0:*                   LISTEN      33004/vsftpd          tcp        0      0 192.168.11.6:30954          0.0.0.0:*                   LISTEN      33006/vsftpd

      6.4 防火墻加上允許策略:

      # vi /etc/sysconfig/iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 2121 -j ACCEPT  -A INPUT -m state --state NEW -m tcp -p tcp --dport 2120 -j ACCEPT  -A INPUT -m state --state NEW -m tcp -p tcp --dport 30000:30999 -j ACCEPT

      在主動模式中,F(xiàn)TP的兩個端口是相對固定的,如果命令端口是x的話,那數(shù)據(jù)端口就是x-1,也就是說默認情況下,命令端口是21,數(shù)據(jù)端口就是20;你把命令端口改成了2121,那么數(shù)據(jù)端口就是2120。這樣使用防火墻就很方便了,只要開通這兩個端口就可以了,但是如果客戶端是共享上網(wǎng)的話那豈不是不能正常使用FTP了,這樣還是不行,一定需要被動模式。

      被動模式中就麻煩了些,命令端口修改為2121,那么數(shù)據(jù)端口就是2120,但是數(shù)據(jù)端口是??機的,所以需要在設(shè)備里設(shè)置一下被動端口范圍6000到7000(pasv_min_port=6000 pasv_max_port=7000)

      防火墻里允許修改過端口號及隨機端口號范圍

      7、rhel7中修改防火墻:

      1、防火墻添加端口  # firewall-cmd --zone=public --permanent --add-port=80/tcp  # firewall-cmd --reload    # firewall-cmd --zone=public --permanent --add-port=31000-31999/tcp  # firewall-cmd --reload    2、防火墻刪除端口  # firewall-cmd --zone=public --permanent --remove-port=80/tcp   # firewall-cmd --reload    3、查看防火墻配置  # cat /etc/firewalld/zones/public.xml

      更多Vsftpd相關(guān)教程見以下內(nèi)容

      Linux CentOS 6.5 下搭建 vsftpd ftp服務器  http://www.sfodin.cn/Linux/2016-07/133319.htm
      CentOS安裝vsftpd-3.0.2及安全配置  http://www.sfodin.cn/Linux/2016-12/138040.htm
      openSUSE 13.2/13.1 下安裝配置 FTP服務器 vsftpd  http://www.sfodin.cn/Linux/2014-12/110070.htm
      CentOS7基于虛擬用戶的vsftpd  http://www.sfodin.cn/Linux/2016-11/137150.htm
      Ubuntu 14.04 配置vsftpd實現(xiàn)FTP服務器 – 通過FTP連接AWS  http://www.sfodin.cn/Linux/2016-08/133933.htm
      FTP協(xié)議詳解與vsftpd在Linux上的安裝配置 http://www.sfodin.cn/Linux/2016-09/134831.htm
      CentOS 6.7 安裝vsftpd服務器  http://www.sfodin.cn/Linux/2017-04/142612.htm
      CentOS 7.3安裝配置Vsftpd文件服務器  http://www.sfodin.cn/Linux/2017-06/144886.htm
      Vsftpd3.0–FTP服務器搭建之本地用戶篇  http://www.sfodin.cn/Linux/2017-04/142699.htm
      CentOS7基于虛擬用戶的vsftpd  http://www.sfodin.cn/Linux/2016-11/137150.htm
      如何在Ubuntu 18.04 LTS上安裝帶有TLS的VsFTPD服務器  http://www.sfodin.cn/Linux/2018-10/154930.htm
      Ubuntu 16.04下vsftpd 安裝配置實例  http://www.sfodin.cn/Linux/2017-06/144807.htm

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號