天天看點

Centos7 配置和連結FTP

1:安裝vsftpd組建:  yum -y install vsftpd

   安裝完成以後在目錄/etc/vsftpd/vsftpd.conf檔案是vsftp的配置檔案

2:添加一個專門用來登陸vsftp的賬戶,可以用來登陸ftp用戶端上傳和下載下傳以及删除ftp上面的檔案

  useradd ftpuser   //建立使用者

  passwd  root   //設定密碼為'root'

  這樣建立完一個使用者後就可以用這個使用者登入linux,同時也可以用這個使用者登入和管理vsftp了,有了這個使用者以後就可以配置禁止匿名登入vsftp,

  登入這個使用者後的目錄為 /home/ftpuser.

3: 接下來就要打開防火牆的21号端口(ftp預設端口是21)

  vi /etc/sysconfig/iptables

  重新開機防火牆或者是使防火牆修改立即生效(source指令)

4:   修改selinux

  外網是可以通路上去了,可是發現沒法傳回目錄(使用ftp的主動模式,被動模式還是無法通路),也上傳不了,因為selinux作怪了。

  修改selinux:

  執行以下指令檢視狀态:

  [root@bogon ~]# 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@bogon ~]#

  執行上面指令,再傳回的結果看到兩行都是off,代表,沒有開啟外網的通路

  [root@bogon ~]# setsebool -P allow_ftpd_full_access on

  [root@bogon ~]# setsebool -P ftp_home_dir on

  這樣應該沒問題了(如果,還是不行,看看是不是用了ftp用戶端工具用了passive模式通路了,如提示Entering Passive mode,就代表是passive模式,預設是不行的,

  因為ftp passive模式被iptables擋住了,下面會講怎麼開啟,如果懶得開的話,就看看你用戶端ftp是否有port模式的選項,或者把passive模式的選項去掉。如果用戶端

  還是不行,看看用戶端上的主機的電腦是否開了防火牆,關吧)

5:  然後就可以用FileZilla和xftp等ftp連接配接工具連接配接ftp進行檔案的上傳和下載下傳了。

6:  關閉匿名通路:

  修改vsftp配置檔案 vim /etc/vsftpd/vsftp.conf

  

Centos7 配置和連結FTP

  重新開機ftp服務: service vsftpd restart

7:   設定開機啟動vsftpd ftp服務:

   chkconfig vsftpd on

8:  開啟被動模式:

  預設是開啟的,但是要指定一個端口範圍,打開vsftpd.conf檔案,在後面加上

  pasv_min_port=30000

  pasv_max_port=30999

  表示端口範圍為30000~30999,這個可以随意改。改完重新開機一下vsftpd

  由于指定這段端口範圍,iptables也要相應的開啟這個範圍,是以像上面那樣打開iptables檔案。

  也是在21上下面另起一行,更那行差不多,隻是把21 改為30000:30999,然後:wq儲存,重新開機下iptables。這樣就搞定了。

9:Java操作linux ftp的常用工具jar包為: commons-net-2.0.jar  具體參考代碼 :http://wenkaixuan.iteye.com/blog/1739344