當前位置:首頁 » 文件傳輸 » 配ftp伺服器的基本命令
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

配ftp伺服器的基本命令

發布時間: 2023-05-22 11:13:46

Ⅰ 在linux中怎樣搭配ftp伺服器

一. FTP 說明

linux 系統下常用的FTP 是vsftp, 即Very Security File Transfer Protocol. 還有一個是proftp(Profession ftp)。 我們這里也是簡單的說明下vsftp的配置。

vsftp提供3種遠程的登錄方式:

(1)匿名登錄方式

就是不需要用戶名,密碼。就能登錄到伺服器電腦裡面

(2)本地用戶方式

需要帳戶名和密碼才能登錄。而且,這個帳戶名和密碼,都是在你linux系統裡面,已經有的用戶。

(3)虛擬用戶方式

同樣需要用戶名和密碼才能登錄。但是和上面的區別就是,這個用戶名和密碼,在你linux系統中是沒有的(沒有該用戶帳號)

二. Vsftp的安裝配置

2.1 安裝

vsftp 的安裝包,可以在安裝里找到。 用yum 安裝過程也很簡單。
安裝命令:yum install vsftpd

2.2. 相關命令

2.2.1 啟動與關閉

[root@singledb ~]# service vsftpd start

Starting vsftpd for vsftpd: [ OK ]

[root@singledb ~]# service vsftpd stop

Shutting down vsftpd: [ OK ]

[root@singledb ~]# service vsftpd restart

Shutting down vsftpd: [FAILED]

Starting vsftpd for vsftpd: [ OK ]

[root@singledb ~]# /etc/init.d/vsftpd start

Starting vsftpd for vsftpd: [FAILED]

[root@singledb ~]# /etc/init.d/vsftpd stop

Shutting down vsftpd: [ OK ]

[root@singledb ~]# /etc/init.d/vsftpd restart

Shutting down vsftpd: [FAILED]

Starting vsftpd for vsftpd: [ OK ]

[root@singledb ~]# /etc/init.d/vsftpd status

vsftpd (pid 3931) is running...

[root@singledb ~]#

2.2.2. 其他命令

--查看vsftpd 啟動狀態

[root@singledb ~]# chkconfig --list vsftpd

vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off

[root@singledb ~]# chkconfig vsftpd on

[root@singledb ~]# chkconfig --list vsftpd

vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off

這里看到,默認情況下從2到5設置為on了。2到5是多用戶級別。 這個對應的是linux不同的運行級別。

我們也可以加level 選項來指定:

[root@singledb ~]# chkconfig --level 0 vsftpd on

[root@singledb ~]# chkconfig --list vsftpd

vsftpd 0:on 1:off 2:on 3:on 4:on 5:on 6:off

我們看到0已經設置為on了。

我們可以使用man chkconfig 來查看幫助:

--level levels

Specifies the run levels an operation should pertain to. It is given as a string of numbers from 0 to 7. For example, --level 35 specifies runlevels 3 and 5.

傳統的init 定義了7個運行級(run level),每一個級別都代表系統應該補充運行的某些特定服務:

(1)0級是完全關閉系統的級別

(2)1級或者S級代表單用戶模式

(3)2-5 級 是多用戶級別

(4)6級 是 重新引導的級別

(1)查看防火牆

我一般都是把系統的防火牆關閉了。 因為開了會有很多限制。

[root@singledb ~]# /etc/init.d/iptables status

Table: nat

Chain PREROUTING (policy ACCEPT)

num target prot opt source destination

Chain POSTROUTING (policy ACCEPT)

num target prot opt source destination

1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24

Chain OUTPUT (policy ACCEPT)

num target prot opt source destination

Table: filter

Chain INPUT (policy ACCEPT)

num target prot opt source destination

1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53

2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53

3 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67

4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67

Chain FORWARD (policy ACCEPT)

num target prot opt source destination

1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED

2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0

3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0

4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)

num target prot opt source destination

You have new mail in /var/spool/mail/root

--添加開放21號埠:

[root@singledb ~]# /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT

[root@singledb ~]# /etc/init.d/iptables status

Table: nat

Chain PREROUTING (policy ACCEPT)

num target prot opt source destination

Chain POSTROUTING (policy ACCEPT)

num target prot opt source destination

1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24

Chain OUTPUT (policy ACCEPT)

num target prot opt source destination

Table: filter

Chain INPUT (policy ACCEPT)

num target prot opt source destination

1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21

2 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53

3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53

4 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67

5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67

Chain FORWARD (policy ACCEPT)

num target prot opt source destination

1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED

2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0

3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0

4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)

num target prot opt source destination

--保存配置

[root@singledb ~]# /etc/rc.d/init.d/iptables save

Saving firewall rules to /etc/sysconfig/iptables: [ OK ]

--重啟防火牆:

[root@singledb ~]# service iptables {start|stop|restart}

(2)查看關閉selinux

[root@singledb ~]# sestatus

SELinux status: disabled

我這里在安裝操作系統的時候就關閉了selinux,如果沒有關閉,可以修改如下文件來關閉:

[root@singledb ~]# cat /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=disabled

# SELINUXTYPE= type of policy in use. Possible values are:

# targeted - Only targeted network daemons are protected.

# strict - Full SELinux protection.

SELINUXTYPE=targeted

[root@singledb ~]#

保存退出並重啟系統reboot

三. FTP配置文件

FTP 安裝好之後,在/etc/vsftpd/目錄下會有如下文件:

[root@singledb ~]# cd /etc/vsftpd/

[root@singledb vsftpd]# ls

ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh

[root@singledb vsftpd]#

vsftpd.conf: 主配置文件

ftpusers: 指定哪些用戶不能訪問FTP伺服器

user_list: 指定的用戶是否可以訪問ftp伺服器由vsftpd.conf文件中的userlist_deny的取值來決定。

[root@singledb vsftpd]# cat user_list

# vsftpd userlist

# If userlist_deny=NO, only allow users in this file

# If userlist_deny=YES (default), never allow users in this file, and

# do not even prompt for a password.

# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers

# for users that are denied.

我們過濾掉#的注釋後,查看一下vsftpd.conf 文件:

[root@singledb ftp]# cat /etc/vsftpd/vsftpd.conf |grep -v '^#';

anonymous_enable=YES

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

listen=YES

pam_service_name=vsftpd

userlist_enable=yes

tcp_wrappers=YES

至於這些參數的意思,在注釋里有詳細的說明。

我們可以在vsftpd.conf 文件設置如下參數:

(1)ftpd_banner=welcome to ftp service :設置連接伺服器後的歡迎信息

(2)idle_session_timeout=60 :限制遠程的客戶機連接後,所建立的控制連接,在多長時間沒有做任何的操作就會中斷(秒)

(3)data_connection_timeout=120 :設置客戶機在進行數據傳輸時,設置空閑的數據中斷時間

(4)accept_timeout=60 設置在多長時間後自動建立連接

(5)connect_timeout=60 設置數據連接的最大激活時間,多長時間斷開,為別人所使用;

(6)max_clients=200 指明伺服器總的客戶並發連接數為200

(7)max_per_ip=3 指明每個客戶機的最大連接數為3

(8)local_max_rate=50000(50kbytes/sec) 本地用戶最大傳輸速率限制

(9)anon_max_rate=30000匿名用戶的最大傳輸速率限制

(10)pasv_min_port=埠

(11)pasv-max-prot=埠號 定義最大與最小埠,為0表示任意埠;為客戶端連接指明埠;

(12)listen_address=IP地址 設置ftp服務來監聽的地址,客戶端可以用哪個地址來連接;

(13)listen_port=埠號 設置FTP工作的埠號,默認的為21

(14)chroot_local_user=YES 設置所有的本地用戶可以chroot

(15)chroot_local_user=NO 設置指定用戶能夠chroot

(16)chroot_list_enable=YES

(17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用戶才能執行 )

(18)local_root=path 無論哪個用戶都能登錄的用戶,定義登錄帳號的主目錄, 若沒有指定,則每一個用戶則進入到個人用戶主目錄;

(19)chroot_local_user=yes/no 是否鎖定本地系統帳號用戶主目錄(所有);鎖定後,用戶只能訪問用戶的主目錄/home/user,不能利用cd命令向上轉;只能向下;

(20)chroot_list_enable=yes/no 鎖定指定文件中用戶的主目錄(部分),文件:/chroot_list_file=path 中指定;

(21)userlist_enable=YES/NO 是否載入用戶列表文件;

(22)userlist_deny=YES 表示上面所載入的用戶是否允許拒絕登錄;

(23)userlist_file=/etc/vsftpd/user_list 列表文件

限制IP 訪問FTP:

#vi /etc/hosts.allow

vsftpd:192.168.5.128:DENY 設置該IP地址不可以訪問ftp服務

FTP 訪問時間限制:

#cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd

#vi /etc/xinetd.d/vsftpd/

修改 disable = no

access_time = hour:min-hour:min (添加配置訪問的時間限制(註:與vsftpd.conf中listen=NO相對應)

例: access_time = 8:30-11:30 17:30-21:30 表示只有這兩個時間段可以訪問ftp

ftp的配置基本上只有這些了。

默認情況下,ftp根目錄是/var/ftp。 如果要修改這個目錄位置,可以更改/etc/passwd 文件:

[root@singledb ftp]# cat /etc/passwd | grep ftp

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

創建一個用戶來訪問FTP,並指定該用戶的FTP 目錄:

[root@singledb u02]# useradd -d /u02/qsftp qs

[root@singledb u02]# passwd qs

Changing password for user qs.

New UNIX password:

BAD PASSWORD: it is WAY too short

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

這里指定的是/u02/qsftp 這個目錄,要注意個目錄的許可權。

更改用戶不能telnet,只能ftp:

usermod -s /sbin/nologin username //用戶只能ftp,不能telnet

usermod -s /sbin/bash username //用戶恢復正常

禁止用戶ssh登陸

useradd username -s /bin/false

更改用戶主目錄:

usermod -d /bbb username //把用戶的主目錄定為/bbb

然後用qs這個用戶就可以訪問了。

以上只是一些簡單的設置。 在用戶許可權這塊還有很多內容可以研究。 比如特定用戶的特定許可權。 安全性等。 以後在研究了。

Ⅱ FTP原理與配置

FTP是用來傳送文件的協議。使用FTP實現遠程文件傳輸的同時,還可以保證數據傳輸的可靠性和高效性。

在企業網路中部署一台FTP伺服器,將網路設備配置為FTP客戶端,則可以使用FTP來備份或更新VRP文件和配置文件。 也可以把網路設備配置為FTP伺服器,將設備的日誌文件保存到某台主機上方便查看。

FTP傳輸數據時支持兩種傳輸模式:ASCII模式和二進制模式。

ASCII模式用於傳輸文本。 發送端的字元在發送前被轉換成ASCII碼格式之後進行傳輸,接收端收到之後再將其轉換成字元。 二進制模式常用於發送圖片文件和程序文件。 發送端在發送這些文件時無需轉換格式,即可傳輸。

使用FTP進行文件傳輸時,會使用兩個TCP連接。 第一個連接是FTP客戶端和FTP伺服器間的控制連接。 FTP伺服器開啟21號埠 ,等待FTP客戶端發送連接請求。

第二個連接是FTP客戶端和FTP伺服器間的數據連接。 伺服器使用TCP的20號埠 與客戶端建立數據連接。 通常情況下,伺服器主動建立或中斷數據連接。

執行 ftp server enable 命令使能FTP功能。

執行 set default ftp-directory 命令設置FTP用戶。

在配置FTP伺服器時,可以使用AAA為每個用戶分別配置登錄賬號和訪問許可權。

aaa 命令用來進入AAA視圖。

local-user user-name { access-limit max-number | ftpdirectory directory | idle-timeout minutes [ seconds ] | password cipher password [ opt ]| privilege level level | state {active | block } } *命令用來創建本地用戶,並配置本地用戶的各項參數。

ftp客戶端連接ftp伺服器

ftp命令用來不遠程FTP伺服器建立控制連接,並進入FTP客戶端視圖。

binary命令用來在設備作為FTP客戶端時設置文件傳輸方式為Binary模式,又稱二進制模式。預設情況下,文件傳輸方式為ASCII模式。get命令用來從遠程FTP伺服器下載文件並保存在本地。

如何配置ftp伺服器

1、從iis7站長工具包下載ftp服務端。點擊下載微型FTP服務端。

Ⅳ CMD里 FTP的命令都有什麼

在cmd中ftp命令很多,常用的主要有:

1、 ftp 192.168.1.3 登陸ftp。

2、dir 顯示遠程主機目錄。

3、cd remote-dir:進入遠程主機目錄。

4、help[cmd]:顯示ftp內部命令cmd的幫助信息,如:help get。

5、get remote-file[local-file]: 將遠程主機的文件remote-file傳至本地硬碟的local-file(本地文件夾)。

6、put local-file[remote-file]:將本地文件local-file傳送至遠程主機。

(4)配ftp伺服器的基本命令擴展閱讀:

FTP命令是Internet用戶使用最頻繁的命令之一,不論是在DOS還是UNIX操作系統下使用FTP,都會遇到大量的FTP內部命令。熟悉並靈活應用FTP的內部命令,可以大大方便使用者,並收到事半功倍之效。

FTP是用來在兩台計算機之間傳輸文件,是Internet中應用非常廣泛的服務之一。它可根據實際需要設置各用戶的使用許可權,同時還具有跨平台的特性,即在UNIX、Linux和Windows等操作系統中都可實現FTP客戶端和伺服器,相互之間可跨平台進行文件的傳輸。

因此,FTP服務是網路中經常採用的資源共享方式之一。FTP協議有PORT和PASV兩種工作模式,即主動模式和被動模式。

Ⅳ FTP的主要命令有那些

FTP命令是Internet用戶使用最頻繁的命令之一,不論是在DOS還是UNIX操作系統下使用FTP,都會遇到大量的FTP內部命令。熟悉並靈活應用FTP的內部命令,可以大大方便使用者,並收到事半功倍之效。

FTP的命令行格式為:ftp -v -d -i -n -g [主機名],其中

-v顯示遠程伺服器的所有響應信息;

-n限制ftp的自動登錄,即不使用;

.n etrc文件;

-d使用調試方式;

-g取消全局文件名。

ftp使用的內部命令如下(中括弧表示可選項):

1.![cmd[args]]:在本地機中執行交互shell,exit回到ftp環境,如:!ls*.zip.

2.$ macro-ame[args]:執行宏定義macro-name.

3.account[password]:提供登錄遠程系統成功後訪問系統資源所需的補充口令。

4.append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。

5.ascii:使用ascii類型傳輸方式。

6.bell:每個命令執行完畢後計算機響鈴一次。

7.bin:使用二進制文件傳輸方式。

8.bye:退出ftp會話過程。

9.case:在使用mget時,將遠程主機文件名中的大寫轉為小寫字母。

10.cd remote-dir:進入遠程主機目錄。

11.cp:進入遠程主機目錄的父目錄。

12.chmod mode file-name:將遠程主機文件file-name的存取方式設置為mode,如:chmod 777 a.out。

13.close:中斷與遠程伺服器的ftp會話(與open對應)。

14.cr:使用asscii方式傳輸文件時,將回車換行轉換為回行。

15.delete remote-file:刪除遠程主機文件。

16.debug[debug-value]:設置調試方式,顯示發送至遠程主機的每條命令,如:deb up 3,若設為0,表示取消debug。

17.dir[remote-dir][local-file]:顯示遠程主機目錄,並將結果存入本地文件local-file。

18.disconnection:同close。

19.form format:將文件傳輸方式設置為format,預設為file方式。

20.get remote-file[local-file]:將遠程主機的文件remote-file傳至本地硬碟的local-file。

21.glob:設置mdelete,mget,mput的文件名擴展,預設時不擴展文件名,同命令行的-g參數。

22.hash:每傳輸1024位元組,顯示一個hash符號(#)。

23.help[cmd]:顯示ftp內部命令cmd的幫助信息,如:help get。

24.idle[seconds]:將遠程伺服器的休眠計時器設為[seconds]秒。

25.image:設置二進制傳輸方式(同binary)。

26.lcd[dir]:將本地工作目錄切換至dir。

27.ls[remote-dir][local-file]:顯示遠程目錄remote-dir,並存入本地文件local-file。

28.macdef macro-name:定義一個宏,遇到macdef下的空行時,宏定義結束。

29.mdelete[remote-file]:刪除遠程主機文件。

30.mdir remote-files local-file:與dir類似,但可指定多個遠程文件,如:mdir *.o.*.zipoutfile

31.mget remote-files:傳輸多個遠程文件。

32.mkdir dir-name:在遠程主機中建一目錄。

33.mls remote-file local-file:同nlist,但可指定多個文件名。

34.mode[modename]:將文件傳輸方式設置為modename,預設為stream方式。

35.modtime file-name:顯示遠程主機文件的最後修改時間。

36.mput local-file:將多個文件傳輸至遠程主機。

37.newer file-name:如果遠程機中file-name的修改時間比本地硬碟同名文件的時間更近,則重傳該文件。

38.nlist[remote-dir][local-file]:顯示遠程主機目錄的文件清單,並存入本地硬碟的local-file。

39.nmap[inpattern outpattern]:設置文件名映射機制,使得文件傳輸時,文件中的某些字元相互轉換,如:nmap $1.$2.$3[$1,$2].[$2,$3],則傳輸文件a1.a2.a3時,文件名變為a1,a2。該命令特別適用於遠程主機為非UNIX機的情況。

40.ntrans[inchars[outchars]]:設置文件名字元的翻譯機制,如ntrans 1R,則文件名LLL將變為RRR。

41.open host[port]:建立指定ftp伺服器連接,可指定連接埠。

42.passive:進入被動傳輸方式。

43.prompt:設置多個文件傳輸時的交互提示。

44.proxy ftp-cmd:在次要控制連接中,執行一條ftp命令,該命令允許連接兩個ftp伺服器,以在兩個伺服器間傳輸文件。第一條ftp命令必須為open,以首先建立兩個伺服器間的連接。

45.put local-file[remote-file]:將本地文件local-file傳送至遠程主機。

46.pwd:顯示遠程主機的當前工作目錄。

47.quit:同bye,退出ftp會話。

48.quote arg1,arg2...:將參數逐字發至遠程ftp伺服器,如:quote syst.

49.recv remote-file[local-file]:同get。

50.reget remote-file[local-file]:類似於get,但若local-file存在,則從上次傳輸中斷處續傳。

51.rhelp[cmd-name]:請求獲得遠程主機的幫助。

52.rstatus[file-name]:若未指定文件名,則顯示遠程主機的狀態,否則顯示文件狀態。

53.rename[from][to]:更改遠程主機文件名。

54.reset:清除回答隊列。

55.restart marker:從指定的標志marker處,重新開始get或put,如:restart 130。

56.rmdir dir-name:刪除遠程主機目錄。

57.runique:設置文件名唯一性存儲,若文件存在,則在原文件後加後綴..1,.2等。

58.send local-file[remote-file]:同put。

59.sendport:設置PORT命令的使用。

60.site arg1,arg2...:將參數作為SITE命令逐字發送至遠程ftp主機。

61.size file-name:顯示遠程主機文件大小,如:site idle 7200。

62.status:顯示當前ftp狀態。

63.struct[struct-name]:將文件傳輸結構設置為struct-name,預設時使用stream結構。

64.sunique:將遠程主機文件名存儲設置為唯一(與runique對應)。

65.system:顯示遠程主機的操作系統類型。

66.tenex:將文件傳輸類型設置為TENEX機的所需的類型。

67.tick:設置傳輸時的位元組計數器。

68.trace:設置包跟蹤。

69.type[type-name]:設置文件傳輸類型為type-name,預設為ascii,如:type binary,設置二進制傳輸方式。

70.umask[newmask]:將遠程伺服器的預設umask設置為newmask,如:umask 3。

71.user user-name[password][account]:向遠程主機表明自己的身份,需要口令時,必須輸入口令,如:user anonymous my@email。

72.verbose:同命令行的-v參數,即設置詳盡報告方式,ftp伺服器的所有響應都將顯示給用戶,預設為on.

73.?[cmd]:同help。

Ⅵ 請教FTP命令

append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。

mget remote-files:傳輸多個遠程文件。

mkdir dir-name:在遠程主機中建一目錄。

Ⅶ linux創建ftp伺服器的基本命令

快速構建FTP伺服器,FTP伺服器實現的基本功能是,下面就分幾個步驟來搭建一個可以實現功能的簡易FTP伺服器。
1.安裝FTP伺服器
如果在安裝系統時沒有選擇安裝FTP伺服器,可以通過Red Hat中的「添加/刪除應用程序」進行安裝。具體方法是,選擇「主選單」→「」→「添加/刪除應用程序」,在彈出的界面中選中FTP伺服器,單擊「更新」即可。
如果無法確認是否安裝了該軟體,可以使用以下命令查看:
2.啟動FTP伺服器
套用Red Hat 9.0的預設範例直接啟動VSFTP。
為vsftpd啟動vsftpd: [確定]
3.在/var/ftp/pub目錄下創建一個名為test.txt的文件
文件內容為「This is a test file」。
4.測試
使用FTP客戶端登錄到本地伺服器,然後以匿名身份(anonymous)登錄:
# ftp 127.0.0.1Connected to 127.0.0.1 (127.0.0.1).220 (vsFTPd 1.1.3)Name (127.0.0.1:root): anonymous331 Please specify the pass.Password:230 Login successful. Have fun.Remote system type is UNIX.Using binary mode to transfer files.
這樣就成功地登錄到FTP伺服器。可以顯示伺服器目錄列表如下:
ftp ls227 Entering Passive Mode (127,0,0,1,63,15)drwxr-xr-x 2 0 0 4096 Dec 04 01:35 pub226 y send OK.
切換到pub目錄下,並顯示目錄內容,可以找到剛才創建的文件test.txt:
ftp cd pub250 Directory successfully changed.ftp ls227 Entering Passive Mode (127,0,0,1,232,34)150 Here comes the directory listing.-rw-r--r-- 1 0 0 21 Dec 04 01:35 test.txt226 Directory send OK.
下載test.txt文件:
ftp mget test.txtmget test.txt? y227 Entering Passive Mode (127,0,0,1,186,210)150 Opening BINARY mode data connection for test.txt (21 bytes).226 File send OK.21 bytes received in 0.0108 secs (1.9 Kbytes/sec)
查看本機目錄內容,可以看到test.txt已成功下載到本機。
ftp !lsa EIO_Binders initrd mnt proc tftpboot ylg.txtbin etc lib mymnt root tmpboot home lost+found myshare sbin usrdev id_dsas.pub misc opt test.txt var
嘗試上傳名為ylg.txt的文件,可以看到請求被拒絕了。
ftp put ylg.txtlocal: ylg.txt remote: ylg.txt227 Entering Passive Mode (127,0,0,1,243,10)550 Permission dend.
退出登錄:
由測試可以看出,已經可以下載文件,但不能上傳文件(也不能在伺服器上創建目錄和文件)。實際上這是一個專門提供下載服務的匿名FTP伺服器。
從上面的步驟可以看出,並不需要做什麼配置就可以完成一個簡易FTP伺服器的架設。這是因為Red Hat已經配置好一個預設的FTP伺服器。不過在實際應用中,大部分情況下這個簡易的伺服器並不能滿足需求。
進一步配置FTP
下面將創建一個能夠滿足常用需求的FTP伺服器。實際應用中,FTP伺服器一般要同時提供和功能。此外,出於安全考慮,還需要有用戶身份驗證、用戶許可權設置及空間管理等。下面就來搭建這樣一個FTP伺服器。
1.創建歡迎語
如果希望使用者在進入目錄時,能夠看到歡迎語或對本目錄的介紹,可以通過以下方法來實現。
確定/etc/vsftpd/vsftpd.conf文件中dirmessage_enable=YES,默認情況下,Red Hat 9.0有此設置。接著,在目錄中新增名為.message的文件。本例在/home/ylg目錄下創建一個.message文件,其內容為「歡迎來到我的 FTP站點」。
2.更換FTP伺服器的默認埠
將預設的21埠改為2121,這樣做是基於安全的考慮。更改方法為,使用vi打開/etc/vsftpd/vsftpd.conf:#vi /etc/vsftpd/vsftpd.conf
在文件最後增加如下一行內容:
3.取消anonymous登錄的功能
在vsftpd.conf文件中找到如下一行,並將其值改為「NO」:anonymous_enable=YES
4.設定使用者不得更改目錄
這樣做的目的也是基於安全性的考慮。一般情況下,使用者的預設目錄為/home/username。若是不希望使用者在登錄後能夠切換至上一層目錄/home,則可通過以下設置來實現。在/etc/vsftpd/vsftpd.conf文件中找到以下三行內容:
#chroot_list_enable=YES# (default follows)#chroot_list_file=/etc/vsftpd.chroot_list
將其改為:
chroot_list_enable=YES# (default follows)chroot_list_file=/etc/vsftpd/chroot_list
新增一個文件/etc/vsftpd/chroot_list,文件內容為兩個用戶名:
5.針對不同的使用者限制不同的速度
假設用戶ylg所能使用的最高速度為500Kb/s,用戶user1所能使用的最高速度為250Kb/s,可以通過以下方法設置。在/etc/vsftpd/vsftpd.conf文件尾部新增以下一行:
增加一個名為/etc/vsftpd/userconf的目錄:
在/etc/vsftpd/userconf下新增一個名為ylg的文件,其內容如下所示:
local_max_rate=500000
在/etc/vsftpd/userconf目錄下新增一個名為user1的文件,其內容如下所示:
local_max_rate=250000
VSFTP對於速度的限制范圍大概在80%到120%之間,也就是限制最高速度為100Kb/s,但實際的速度可能在80Kb/s到120Kb/s之間。如果頻寬不足,數值會低於此限制。6.對於每一個聯機用戶,都以獨立的進程來運行。一般情況下,在啟動VSFTP時,只會看到一個名為vsftpd的進程在運行。但若是讀者希望每一個聯機用戶都能以獨立的進程來呈現,則可通過在/etc/vsftpd/vsftpd.conf文件中增加以下一行來實現:
setproctitle_enable=YES
6.保存/etc/vsftpd/vsftpd.conf文件,然後重新啟動vsftpd:
7.測試剛創建的FTP伺服器
以預設方式登錄會被拒絕,因為此時的默認埠號已經更改為2121,所以登錄時需指定埠。
此時也不能再使用匿名方式登錄:
# ftp 127.0.0.1 2121Connected to 127.0.0.1 (127.0.0.1).220 (vsFTPd 1.1.3)Name (127.0.0.1:root): anonymous331 Please specify the pass.Password:530 Login incorrect.Login failed.
如果以用戶ylg則可以成功登錄(指定埠2121),並顯示歡迎信息:
# ftp 127.0.0.1 2121Connected to 127.0.0.1 (127.0.0.1).220 (vsFTPd 1.1.3)Name (127.0.0.1:root): ylg331 Please specify the password.Password:230-歡迎來到我的FTP站點230 Login successful. Have fun.Remote system type is .Using binary mode to transfer files.
因為在設置中設定了不能切換目錄,所以下列命令無法正確執行:
550 Failed to change y.
再來測試一下上傳和。首先下載伺服器目錄中的test.txt文件:
ftp get test.txtlocal: test.txt remote: test.txt227 Entering Passive Mode (127,0,0,1,243,215)150 Opening BINARY mode data connection for test.txt (21 bytes).226 File send OK.21 bytes received in 0.00308 secs (6.7 Kbytes/sec)
可以通過!ls命令看到本機目錄中已成功下載該文件。然後上傳本機目錄中的ylg.txt文件到伺服器:
ftp put ylg.txtlocal: ylg.txt remote: ylg.txt227 Entering Passive Mode (127,0,0,1,133,248)150 Ok to send data.226 File receive OK.19 bytes sent in 0.0401 secs (0.46 Kbytes/sec)
用ls命令查看伺服器目錄,會發現該文件已成功上傳。
為了測試不同連機用戶使用的是不同進程,可以使用ps -ef指令

Ⅷ 以下正確ftp命令格式是

FTP(File Transfer Protocol)命令是一種用於在客戶端和伺服器之間傳輸文件的標准協議。以下是正確的FTP命令格式:
1. 連接到FTP伺服器
ftp [hostname]
此命令將連接到指定主機名的FTP伺服器。
2. 輸入用戶名和密碼
用戶名:[username]
密碼:[password]
輸入正確的用戶名和密碼以登錄到FTP伺服器頌絕型。
3. 列出伺服器上的文件
ls
此命令將列出該目錄下宏野的所有文件和文件夾。
4. 切換到目錄
cd [directory]
這個命令將切換到指定的目錄。
5. 下載文件
get [filename]
使用此命令將從伺服器下載指定的文件。
6. 上傳文件
put [filename]
使用此命令將向伺服器上傳指定的文件。
7. 斷開連接
bye
使用此命令將斷開與FTP伺服器的連接。
以上是正確的FTP命令格式,可以野猜通過這些命令在客戶端和伺服器之間傳輸文件。

Ⅸ 請列出FTP的常見命令

1、DOS方式下FTP的使用

可在Windows系統cmd命令提示符下,輸入
C: >FTP 域名
USER NAME: 管理員帳號
PASSWORD: 口令
FTP>PUT
LOCAL FILE: filename
REMOTE FILE: filename
即可上傳
下載時使用GET命令
2、FTP常用命令

Ftp命令的功能是在本地機和遠程機之間傳送文件。該命令的一般格式如下:
c:> ftp 主機名/IP
最常用的命令有:
ls 列出遠程機的當前目錄
cd 在遠程機上改變工作目錄
lcd 在本地機上改變工作目錄
ascii 設置文件傳輸方式為ASCII模式
binary 設置文件傳輸方式為二進制模式
close 終止當前的ftp會話
hash 每次傳輸完數據緩沖區中的數據後就顯示一個#號
get(mget) 從遠程機傳送指定文件到本地機
put(mput) 從本地機傳送指定文件到遠程機
open 連接遠程ftp站點
quit 斷開與遠程機的連接並退出ftp
? 顯示本地幫助信息
3.Linux下FTP命令詳解

FTP> ! 從 ftp 子系統退出到外殼。
FTP> ? 顯示 ftp 命令說明。? 與 help 相同。
格式:? [command]
說明:[command]指定需要幫助的命令名稱。如果沒有指定 command,ftp 將顯示全部命令的列表。
FTP> append 使用當前文件類型設置將本地文件附加到遠程計算機上的文件。
格式:append local-file [remote-file]
說明:local-file 指定要添加的本地文件。
remote-file 指定要添加 local-file 的遠程計算機上的文件。如果省略了 remote-file,本地文件名將被用作遠程文件名。
FTP> ascii 將文件傳送類型設置為默認的 ASCII。
說明:FTP 支持兩種文件傳送類型,ASCII 碼和二進制圖像。在傳送文本文件時應該使用ASCII。
FTP> bell 切換響鈴以在每個文件傳送命令完成後響鈴。默認情況下,鈴聲是關閉的。
FTP> binary(或bi) 將文件傳送類型設置為二進制。
FTP> bye(或by) 結束與遠程計算機的 FTP 會話並退出 ftp。
FTP> cd 更改遠程計算機上的工作目錄。
格式:cd remote-directory
說明:remote-directory 指定要更改的遠程計算機上的目錄。
FTP> close 結束與遠程伺服器的 FTP 會話並返回命令解釋程序。
FTP> debug 切換調試。當調試打開時,發送到遠程計算機的每個命令都列印,前面是字元串「>」。默認情況下,調試是關閉的。
FTP> delete 刪除遠程計算機上的文件。
格式:delete remote-file
說明:remote-file 指定要刪除的文件。
FTP> dir 顯示遠程目錄文件和子目錄列表。
格式:dir [remote-directory] [local-file]
說明:remote-directory 指定要查看其列表的目錄。如果沒有指定目錄,將使用遠程計算機中的當前工作目錄。Local-file 指定要存儲列表的本地文件。如果沒有指定,輸出將顯示在屏幕上。
FTP> disconnect 從遠程計算機斷開,保留 ftp 提示。
FTP> get 使用當前文件轉換類型將遠程文件復制到本地計算機。
格式:get remote-file [local-file]
說明:remote-file 指定要復制的遠程文件。
Local-file 指定要在本地計算機上使用的名稱。如果沒有指定,文件將命名為 remote-file。
FTP >glob 切換文件名組合。組合允許在內部文件或路徑名中使用通配符(*和?)。默認情況下,組合是打開的。
FTP >hash 切換已傳輸的每個數據塊的數字簽名 (#) 列印。數據塊的大小是2048 位元組。默認情況下,散列符號列印是關閉的。
FTP >help 顯示 ftp 命令說明。
格式:help [command]
說明:command 指定需要有關說明的命令的名稱。如果沒有指定 command,ftp 將顯示全部命令的列表。
FTP >lcd 更改本地計算機上的工作目錄。默認情況下,工作目錄是啟動 ftp 的目錄。
格式:lcd [directory]
說明:directory 指定要更改的本地計算機上的目錄。如果沒有指定directory,將顯示本地計算機中當前的工作目錄。
FTP >literal 將參數逐字發送到遠程 FTP 伺服器。將返回單個的 FTP 回復代碼。
格式:literal argument [ ...]
說明:argument 指定要發送到 FTP 伺服器的參數。
FTP >ls 顯示遠程目錄文件和子目錄的縮寫列表。
格式:ls [remote-directory] [local-file]
說明:remote-directory 指定要查看其列表的目錄。如果沒有指定目錄,將使用遠程計算機中的當前工作目錄。 local-file 指定要存儲列表的本地文件。如果沒有指定,輸出將顯示在屏幕上。
FTP >mdelete 刪除遠程計算機上的文件。
格式:mdelete remote-files [ ...]
說明:remote-files 指定要刪除的遠程文件。
FTP >mdir 顯示遠程目錄文件和子目錄列表。可以使用 mdir 指定多個文件。
格式:mdir remote-files [ ...] local-file
說明:remote-files 指定要查看列表的目錄。必須指定 remote-files。請鍵入 - 使用遠程計算機上的當前工作目錄。
local-file 指定要還原列表的本地文件。請鍵入- 在屏幕上顯示列表。
FTP >mget 使用當前文件傳送類型將遠程文件復制到本地計算機。
格式:mget remote-files [ ...]
說明:remote-files 指定要復制到本地計算機的遠程文件。
FTP >mkdir 創建遠程目錄。
格式:mkdir directory
說明:directory 指定新的遠程目錄的名稱。
FTP >mls 顯示遠程目錄文件和子目錄的縮寫列表。
格式:mls remote-files [ ...] local-file
說明:remote-files 指定要查看列表的文件。必須指定 remote-files;
請鍵入- 使用遠程計算機上的當前工作目錄。
local-file 指定要存儲列表的本地文件。請鍵入 - 以在屏幕上顯示列表。
FTP >mput 使用當前文件傳送類型將本地文件復制到遠程計算機上。
格式:mput local-files [ ...]
說明:local-files 指定要復制到遠程計算機的本地文件
FTP >open 與指定的 FTP 伺服器連接。
格式:open computer [port]
說明:computer 指定要連接的遠程計算機。可以通過 IP 地址或計算機名稱指定計算機(DNS 或主機文件必須可用)。如果自動登錄打開(默認),ftp 還將嘗試自動將用戶登錄到 FTP 伺服器port 指定用來聯系 FTP 伺服器的埠號。
FTP >prompt 切換提示。如果關閉提示時 mget 及 mput 傳送所有文件,Ftp在多文件傳送過程中將提示允許您有選擇地檢索或存儲文件。默認情況下,提示是
打開的。
FTP >put 使用當前文件傳送類型將本地文件復制到遠程計算機上。
格式:put local-file [remote-file]
說明:local-file 指定要復制的本地文件。
remote-file 指定要在遠程計算機上使用的名稱。如果沒有指定,文件將命名為 local-file。
FTP >pwd 顯示遠程計算機上的當前目錄。
FTP >quit 結束與遠程計算機的 FTP 會話並退出 ftp。
FTP >quote 將參數逐字發送到遠程 FTP 伺服器。將返回單個的 FTP 回復代碼。
Quote 與 literal 相同。
格式:quote argument [ ...]
說明:argument 指定要發送到 FTP 伺服器的參數。
FTP >recv 使用當前文件傳送類型將遠程文件復制到本地計算機。Recv 與 get相同。
格式:recv remote-file [local-file]
說明:remote-file 指定要復制的遠程文件。
local-file 指定要在本地計算機上使用的名稱。如果沒有指定,文件將命名為 remote-file。
FTP >remotehelp 顯示遠程命令幫助。
格式:remotehelp [command]
說明:command 指定需要幫助的命令的名稱。如果沒有指定 command,ftp將顯示全部遠程命令的列表。
FTP >rename 重命名遠程文件。
格式:rename filename newfilename
說明:filename 指定要重命名的文件。 newfilename 指定新的文件名。
FTP >rmdir 刪除遠程目錄。
格式:rmdir directory
說明:directory 指定要刪除的遠程目錄的名稱。
FTP >send 使用當前文件傳送類型將本地文件復制到遠程計算機上。Send 與put 相同。
格式:send local-file [remote-file]
說明:local-file 指定要復制的本地文件。 remote-file 指定要在遠程計算機上使用的名稱。如果沒有指定,文件將命名為 local-file。
FTP >status 顯示 FTP 連接和切換的當前狀態。
FTP >trace 切換數據包跟蹤。Trace 在運行 ftp 命令時顯示每個數據包的路由。
FTP >type 設置或顯示文件傳送類型。
格式:type [type-name]
說明:type-name 指定文件傳送類型。默認設置為 ascii。如果沒有指定type-name,將顯示當前的類型。
FTP >user 指定遠程計算機的用戶。
格式:user username [password] [account]
說明:user-name 指定登錄到遠程計算機所使用的用戶名。password 指定 user-name 的密碼。如果沒有指定,但必須指定,ftp 會提示輸入密碼。
account 指定登錄到遠程計算機所使用的帳戶。如果沒有指定account,但是需要指定,ftp 會提示您輸入帳戶。
FTP >verbose 切換 verbose 模式。如果打開,將顯示所有 ftp 響應。在文件傳送完成後,將同時顯示與傳送效率有關的統計信息。默認情況下,verbose 是打開的。