vsftpd服務的安裝,啟動及關閉


一、vsftpd服務的安裝,啟動及關閉
1、安裝vsftpd
[root@rusky bdump]# yum install vsftpd --必須配置yum源才能使用yum命令來安裝vsftpd,或者掛載光盤,找到Packages目錄下的vsftpd包,使用rpm命令安裝 
……
Installed:
vsftpd.x86_64 0:2.0.5-24.el5

Complete!

2、vsftpd服務的啟動及關閉
[root@rusky bdump]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off

[root@rusky bdump]# chkconfig --level 35 vsftpd on

[root@rusky bdump]# service vsftpd restart --啟動/關閉命令為:service vsftpd start/stop 
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]

[root@rusky bdump]# service vsftpd status
vsftpd (pid 5087) is running...
[root@rusky bdump]#

二、文件的上傳及下載
1、ftp服務器的連接
G:\testftp>ftp  -或者直接:ftp IP/主機名連接
ftp> open 192.168.1.200
連接到 192.168.1.200。
220 (vsFTPd 2.0.5)
用戶(192.168.1.200:(none)): root    --默認不能使用root用戶
530 Permission denied.
登錄失敗。
ftp> open 192.168.1.200
已經連接到了 192.168.1.200,請首先使用斷開連接。
ftp> disconnect
221 Goodbye.
ftp> open 192.168.1.200
連接到 192.168.1.200。
220 (vsFTPd 2.0.5)
用戶(192.168.1.200:(none)): oracle
331 Please specify the password.
密碼:
230 Login successful.
ftp> loc
無效命令。
ftp> lcd
目前的本地目錄 G:\testftp。
ftp>

2、下載文件
下載文件使用get和mget這兩個命令
a.使用get命令將遠程服務器上/home/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora這個文件下載到本地當前目錄。
ftp> get /home/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora tnsnams.ora
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for /home/oracle/product/10.2.0/db_1/network/admin/tnsnames.
226 File send OK.
ftp: 收到 719 字節,用時 0.00秒 719.00千字節/秒。
ftp> lcd
目前的本地目錄 G:\testftp。
ftp>

b.將遠程服務器上的文件下載到指定目錄
ftp> get /home/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora C:\Users\Administrator\Desktop\tnsnames.ora_bak
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for /home/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora (719 bytes).
226 File send OK.
ftp: 收到 719 字節,用時 0.00秒 719000.00千字節/秒。

c.使用mget命令將遠程服務器上/home/oracle/test目錄下的所有文件下載到本地當前目錄(指定目錄無效)
ftp> mget /home/oracle/test/ G:\testftp\testmget\
mget /home/oracle/test/2.log?
mget /home/oracle/test/3.log?
------------------------
此時每下載一個文件,都會有提示。如果要除掉提示,則在執行mget命令前先執行:prompt off
注意:文件都下載到了linux主機的當前目錄下。
------------------------
ftp> prompt off
交互模式 關 。
ftp> mget /home/oracle/test G:\testftp\
ftp>

3、上傳文件到遠端服務器
a.將本地一個文件傳送到遠程主機
ftp> put test.ora /home/oracle/test/test2.ora --必須指定上傳到遠程目錄后的文件名
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp: 發送 719 字節,用時 0.00秒 719000.00千字節/秒。
ftp>

b.使用mput把本地當前目錄下的所有文件上傳到遠程機器指定目錄下(注意:上傳文件都來自於主機的當前目錄下)
ftp> mput * /home/oracle/test
mput 111.log?
mput 222.log?
mput 333.ora?
mput testmget? n
/home/oracle/test:
ftp>

4、斷開連接
ftp> quit

ftp> bye

5、常用的命令
ls 列出遠程機的當前目錄
cd 在遠程機上改變工作目錄
lcd 在本地機上改變工作目錄
ascii 設置文件傳輸方式為ASCII模式
binary 設置文件傳輸方式為二進制模式
close 終止當前的ftp會話
hash 每次傳輸完數據緩沖區中的數據后就顯示一個#號
get(mget) 從遠程機傳送指定文件到本地機
put(mput) 從本地機傳送指定文件到遠程機
open 連接遠程ftp站點
斷開與遠程機的連接並退出ftp
? 顯示本地幫助信息
! 轉到Shell中

三、FTP服務概要

1、  FTP服務的端口號

21端口:傳輸FTP的控制命令

20端口:傳輸文件數據

2、  FTP的數據傳輸模式

  主動模式

FTP客戶端向服務器的FTP控制端口(21端口)發出連接請求,服務器接受連接,建立一條命令鏈路;當需要傳輸數據時,客戶端在命令鏈路上用PORT命令告訴服務器,自己打開了某個端口,服務器從20端口向客戶端的指定端口發出連接請求,建立一條數據鏈路來傳送數據。(ftp>sendport)

  被動模式

FTP客戶端向服務器的FTP控制端口(21端口)發出連接請求,服務器接受連接,建立一條命令鏈路;當需要傳輸數據時,服務器在命令鏈路上用PASV命令告訴客戶端,自己打開了某個端口,客戶端向服務器的指定端口發出連接請求,建立一條數據鏈路來傳送數據。(ftp>passive)

3、  FTP服務器軟件

 Wu-ftpd —— www.wu-ftpd.org

 Proftpd —— www.proftpd.org

 vsftpd —— vsftpd.beasts.org

4、  FTP客戶端軟件

  ftp命令

  gftp —— gftp.seul.org

  Filezilla —— filezilla.sourceforge.net(windows下的開放源代碼的FTP客戶端)

5、  服務器和客戶端之間的防火牆設置策略

對於工作在主動模式下的服務器:

  • 允許FTP客戶端從大於1024的端口連接FTP服務器的21端口
  • 允許FTP服務器從21端口回應FTP客戶端大於1024端口的網絡連接
  • 允許FTP服務器從20端口主動連接FTP客戶端中大於1024的端口
  • 允許FTP客戶端從大於1024的端口回應來自FTP服務器的20端口的網絡連接

對於工作在被動模式下的服務器:

  • 允許FTP客戶端從大於1024的端口連接FTP服務器的21端口
  • 允許FTP服務器從21端口回應FTP客戶端大於1024端口的網絡連接
  • 允許FTP客戶端從大於1024的端口主動連接FTP服務器中大於1024的端口
  • 允許FTP服務器從大於1024的端口回應來自FTP客戶機大於1024端口的網絡連接

2)vsftpd服務器的配置文件

  • 主配置文件——/etc/vsftpd/vsftpd.conf

    vsftpd.conf文件中常用的配置:

  anonymous_enable :設置為YES時,FTP服務器允許匿名登錄。

  local_enable :設置為YES時,FTP服務器允許本地用戶登錄。

  write_enable :設置為YES時,FTP服務器開放對本地用戶的寫權限。

  local_umask :設置本地用戶的文件生成掩碼,配置文件中設置為022。

  dirmessage_enable :設置為YES時,將顯示目錄下的“.message”隱含文件內容。

  xferlog_enable :設置為YES時,FTP服務器將啟用上傳和下載日志。

  xferlog_std_format :設置為YES時,FTP服務器將使用標准的ftpd xferlog日志格式。

  connect_from_port_20 :設置為YES時,FTP服務器將啟用數據端口(20)的連接請求。

  pam_service_name :設置PAM認證服務的配置文件名稱,該文件保存在“/etc/pam.d”目錄下。

  userlist_enable :設置為YES時,FTP服務器將檢查userlist_file設置文件中指定的用

戶是否可以訪問vsftpd服務器;userlist_file配置項的默認值是“/etc/vsftpd.user_list”文件。

  userlist_deny :設置為YES時,vsftpd.user_list文件用於設置禁止登錄的用戶賬號;

                         設置為NO時,vsftpd.user_list文件用於設置允許登錄的用戶賬號。

  listen :設置為YES時,FTP服務器處於獨立啟動模式(相對於受xinetd管理的啟動模式)。

 tcp_wrappers :設置為YES時,FTP服務器將使用tcp_wrappers作為主機訪問控制方式。

 tcp_wrappers可以實現Linux系統中網絡服務的基於主機地址的訪問控制,在“/etc”目錄中的hosts.allow(允許訪問記錄)和hosts.deny(拒絕訪問記錄)兩個文件用於設置tcp_wrappers的訪問控制。

  chroot_local_user :設置為YES時,vsftpd服務器將會把本地用戶禁錮在用戶宿主目錄中。

  max_clients :用於設置FTP服務器所允許的最大客戶端連接數,0表示無限制。

  max_per_ip :用於設置對於同一IP地址允許的最大客戶端連接數,0表示無限制。

  local_max_rate :設置本地用戶的最大傳輸速率,單位為B/s,0表示不限制。

  anon_max_rate :設置匿名用戶的最大傳輸速率,單位為B/s,0表示不限制。

  • /etc/vsftpd.ftpusers文件

保存不允許進行FTP登錄的本地用戶帳號,通常是在系統中具有較高權限的帳戶。

  • /etc/vsftpd.user_list文件

需要與vsftpd.conf文件中的配置結合來實現對/etc/vsftpd.user_list文件中指定的用戶帳號的訪問控制。

userlist_enable=YES     //  FTP服務器將檢查userlist_file設置文件中指定的用

戶是否可以訪問vsftpd服務器。

userlist_deny=YES      //  vsftpd.user_list文件用於設置禁止登錄的用戶賬號;

userlist_deny= NO      //  vsftpd.user_list文件用於設置允許登錄的用戶賬號。

 

linux-FTP服務常用命令及測試

標簽:

( 0)
( 0)
 
   

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM