㈠ 網路編程案例ftp客戶端怎麼連接伺服器
示例:創建一個http get請求,序列化後的請求應該通過寫入流(write stream)發送。
CFStringRef requestHeader = CFSTR("Connection");
CFStringRef requestHeaderValue = CFSTR("close");
CFStringRef requestBody = CFSTR("");
CFStringRef url = CFSTR("http://www..com/");
CFStringRef requestMethod = CFSTR("GET");
CFURLRef requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, NULL);
CFHTTPMessageRef request = CFHTTPMessageCreateRequest(kCFAllocatorDefault, requestMethod, requestURL, kCFHTTPVersion1_1);
CFHTTPMessageSetBody(request, requestBody);
(request, requestHeader, requestHeaderValue);
CFDataRef serializedRequest = (request);
創建HTTP相應的步驟與創建請求的方法差不多,不同之處是用CFHTTPMessageCreateResponse函數代替CFHTTPMessageCreateRequest。
可以使用一個CFReadStream對象來序列化並發送CFHTTP請求。當使用CFReadStream對象時,打開讀取流的同時消息會被序列化並發送,這樣可以方便地獲取響應。如下:
CFHTTPMessageRef request = CFHTTPMessageCreateRequest(kCFAllocatorDefault, requestMethod, requestURL, kCFHTTPVersion1_1);
CFHTTPMessageSetBody(request, requestBody);
(request, requestHeader, requestHeaderValue);
CFReadStreamRef readStream = (kCFAllocatorDefault, request);
CFReadStreamOpen(readStream);
調用CFReadStreamCopyProperty 可以從讀取流獲取響應消息,代碼如下:
CFHTTPMessageRef response = CFReadStreamCopyProperty(readStream, );
使用函數獲得完整的狀態行,如下:
CFStringRef statusLine = (response);
或者,使用函數獲取狀態碼,如下:
UInt32 errCode = (response);
為了獲取返回的數據,可以使用CFReadStreamSetClient方法設置回調函數,將readStream加到run loop中。在回調函數將每次讀取的數據存起來(比如,有一個NSMutableData類型的變數data),讀完後處理數據,代碼如下:
if( == eventType)
{
UInt8 buff[255];
int length = CFReadStreamRead(stream, buff, 254);
[data appendBytes:buff length:length];
if(kCFStreamEventEndEncountered == eventType)
{
//讀取已完成,處理讀取的數據
}
}
如果接收數據是中文字元串,注意在創建NSString時選擇編碼,比如UTF8或GB2312編碼,如下所示:
NSString *string = [[NSString alloc] initWithData:data encoding:0x80000632];//GB2312編碼
當使用創建讀取流時,流的重定向默認是被禁止的。如果請求連接被重定向,會導致一個錯誤,它的狀態碼為300~307。如果收到一個重定向錯誤,需要關閉這個流,然後重新創建一個流,啟用重定向並打開流。如下:
CFReadStreamRef readStream = (kCFAllocatorDefault, request);
if(CFReadStreamSetProperty(readStream, , kCFBooleanTrue) == false)
{
//出錯處理
}
CFReadStreamOpen(myReadStream);
2.CFFTP
CFFTP也使用CFReadStream來傳送FTP數據。使用CFReadStreamCreateWithFTPURL方法來創建FTP請求,這樣會同時創建一個CFReadStreamRef對象來讀取FTP伺服器發送的數據,代碼如下:
CFStringRef url = CFSTR("ftp://ftp.example.com/file.txt");
CFURLRef requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, NULL);
CFReadStreamRef readStream = CFReadStreamCreateWithFTPURL(kCFAllocatorDefault, requestURL);
下一步,使用CFReadStreamSetClient方法設置回調函數來讀取數據,然後把readStream加到程序的run loop中。
如果FTP需要使用用戶名和密碼認證,通過CFReadStreamSetProperty方法設置kCFStreamPropertyFTPUserName和kCFStreamPropertyFTPPassword屬性。
要將文件下載到本地,可以使用CFWriteStreamCreateWithFile方法創建一個指向本地文件的寫入流,將接收到的數據寫入。
上傳文件和下載文件差不多,只不過把讀取流和寫入流反過來用,使用CFWriteStreamCreateWithFTPURL方法創建寫入流,使用CFReadStreamCreateWithFile創建讀取流。
創建遠程目錄的方法與上傳文件類似,只不過將CFURL對象設置一個路徑而不是文件。
獲取目錄列表的方法與下載文件類似,數據讀取到緩存後使用,方法對讀取進行解析。
3.NSURLConnection
CFNetwork是比較底層的介面,雖然用起來比較靈活,但並不好用。多數程序僅僅需要創建簡單的請求來獲取互聯網上的一個文件,那麼使用NSURLConnection要更加方便,因為不用跟套接字、流還有回調函數打交道,取而代之的是更熟悉的委託機制。
創建一個NSURL對象:
NSNRL *url = [NSURL URLWithString:@"http://www..com/"];
NSURL對象是用來創建NSURLRequest對象的,如下:
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url cachePolicy::60.0];
可選的緩存策略有以下幾種。
(1):使用相關協議默認緩存策略。
(2): 無論本地緩存是什麼,請求都要重新載入數據。
(3):不僅要忽略本地緩存,在協議允許的情況下也要忽略遠程代理或中間件的緩存。
(4):優先使用緩存數據,緩存不存在時再去載入請求。
(5):只載入緩存數據,緩存中不存在時也不請求,可理解為離線模式。
(6): 緩存中的數據沒有過期時才載入緩存中的數據,否則請求數據並刷新緩存。
創建完NSURLRequest對象後就可以創建NSURLConnection對象了,如下:
NSURLConnection *connection = [[NSRULConnection alloc] initWithRequest:request delegate:self];
這個是非同步調用,NSURLConnection會在後台發送請求,通過設置委託參數,有數據時會收到通知。由一些委託方法來處理連接是過程中的不同事件。
當服務主機有響應將要開始發送數據時,didReceiveResponse:方法會被調用。這里可以做一些初始化的工作,比如有一個NSMutableData類型的data對象來存儲數據,在這里可以把對象長度設為0,如下所示
-(void) connection:(NSURLConnection *)connection didReceiveRespose:(NSURLResonse *)response
{
[data setLength:0];
}
當接收到數據時,didReceiveData:方法會被調用。這里可以把數據加到NSMutableData對象的後面,如下:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)incomingData
{
[data appendData:incomingData];
}
當數據載入完成時會調用connecitionDidFinshLoading:方法,處理傳入的數據。這里以字元串處理為例,示例應用中傳入的可能是圖片或其他任何類型的對象。
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(string);
[data release];
}
連接或傳送數據失敗時,didFailWithError方法會被調用,如下:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
NSLog(@"query failed with error:%@", [error localizedDescription]);
[data release];
}
㈡ 求助區域網ftp搭建,本人XP系統
Server-U速成教程
Serv-U:快速構建功能強大的FTP伺服器
Internet的迅速發展為人們提供的前所未有的信息資源,越來越多的人希望在享受
Internet
帶來的全新的體驗的時候,能夠擁有自己的網上家園。在當今流行的Internet應用
中,要數WWW和FTP文件傳輸最為普及了。本文將結合Serv-U
這一功能強大,界面友好,易學易用的FTP伺服器端軟體,詳細的介紹如何在最短的
時間內建立起一個完備的FTP伺服器。除了具體的安裝和配置說明外,文中還將涉及一些
使用FTP
所必須了解的相關知識,希望能夠對廣大網友有所幫助。
簡介
Serv-U是目前眾多的FTP伺服器軟體之一。通過使用Serv-U,用戶能夠將任何一
台PC設置成一個FTP伺服器,這樣,用戶或其他使用者就能夠使用FTP
協議,通過在同一網路上的任何一台PC與FTP伺服器連接,進行文件或目錄的復制,
移動,創建,和刪除等。這里提到的FTP協議是專門被用來規定計算機之間進行文件傳輸
的標准和規則,正是因為有了象FTP
這樣的專門協議,才使得人們能夠通過不同類型的計算機,使用不同類型的操作系
統,對不同類型的文件進行相互傳遞。
雖然目前FTP伺服器端的軟體種類繁多,相互之間各有優勢,但是Serv-U憑借其
獨特的功能得以展露頭腳。具體來說,Serv-U
能夠提供以下功能:
符合windows標準的用戶界面友好親切,易於掌握。
支持實時的多用戶連接,支持匿名用戶的訪問;通過限制同一時間最大的用戶訪問人數
確保PC
的正常運轉。
安全性能出眾。在目錄和文件層次都可以設置安全防範措施。能夠為不同用戶提供不同
設置,支持分組管理數量眾多的用戶。可以基於IP
對用戶授予或拒絕訪問許可權。
支持文件上傳和下載過程中的斷點續傳。
支持擁有多個IP地址的多宿主站點。
能夠設置上傳和下載的比率,硬碟空間配額,網路使用帶寬等,從而能夠保證用戶有限
的資源不被大量的FTP
訪問用戶所消耗。
可作為系統服務後台運行。
可自用設置在用戶登錄或退出時的顯示信息,支持具有UNIX風格的外部鏈接。
上面列出的只是Serv-U眾多功能中的一部分,具體的使用將在下文中進行詳細
的介紹,這里要說明的一點時,Serv-U在保持功能全面,強大的基礎上,提供的完全易
於使用的操作界面,可以說一切盡在掌握。
使用說明
用戶在使用Serv-U的過程中可能會碰到的所有設置問題都可以通過Serv-U窗口
中的菜單選項實現。如果用戶在安裝Serv-U
之後,啟動Serv-U時,屏幕上沒有顯示出Serv-U的控制窗口的話,可以用滑鼠右鍵
點擊位於任務條系統托盤中的Serv-U
圖標(一個大寫的字母「U」),然後選擇彈出菜單中的第一項「ShowWindow」,這
樣屏幕上就會顯示出Serv-U的控制窗口。
設置FTP伺服器
位於Serv-U控制窗口中的「SETUP」菜單中的第一項「FTP-SERVER」用來對FTP
伺服器進行總體上的設置。在選擇之後出現的窗口中的第一項「FTP
PORTNUMBER」用來設置FTP伺服器使用的埠號,FTP伺服器將會通過該埠收聽所
有來訪用戶的信息。一般情況下,FTP
伺服器的默認埠號為21,但是用戶可以根據自己的情況自由的進行更改,只要能
夠保證所採用的埠號與其它網路應用不沖突即可。這里需要說明的一點是,使用用戶
自己選擇的伺服器埠可以起到很好的安全防範作用,這時,只有用戶自己和其他知道
該埠號的用戶才能夠成功的實現與伺服器的連接。因此,建議用戶在設置FTP
伺服器的時候使用自己選定的埠,而不要只是簡單的使用默認值。
隨後用戶需要設置伺服器所能提供的最大速度。一般情況下,用戶可以將這項
空出,那麼伺服器將會利用所有可能的帶寬為客戶提供服務。能夠為用戶提供最大的訪
問速度當然很好,但是過多的FTP
用戶可能會蠶食掉一切可能的帶寬,從而使其它的網路應用幾乎不可能實現。因此
,合理的控制FTP伺服器所能夠佔用的最大帶寬還是很重要的。
下一項是設置伺服器允許的最大用戶訪問量。在此,用戶可以限制同一時間內
訪問FTP伺服器的最大人數。如果把該項設為0,那麼FTP
伺服器將會拒絕任何用戶訪問要求;如果將該項空出,那麼Serv-U將不會對訪問人
數進行控制,直到耗盡所有的系統資源。如果用戶希望自己的FTP
伺服器能夠保持正常運轉的話,那麼最好對來訪的用戶數量進行合理的限制。一般
情況下,即使老式的486機器,在使用Serv-U之後,也能夠在同一時間內為20多名用戶提
供訪問支持。
在此之後的一系列復選項中的第一項為「啟動安全功能」。如果用戶沒有選擇
該項,那麼任何人通過網路都可以直接進入FTP伺服器,對伺服器中的任何文件進行隨意
地復制,改動,甚至刪除。除了那些擁有小范圍內的個人網路,不希望每次登錄都重復
輸入用戶名、密碼等煩雜手續的人之外,用戶一定要確保已經選中了該選項,即啟動了
伺服器的安全防範功能。
下一項「ENCRYPT PASSWORDS」在默認情況下也被自動選中。這樣,Serv-U將會
使用與UNIX操作系統相同的加密機制加密並保存用戶的密碼。如果用戶不選擇對密碼進
行加密,那麼所有用戶輸入的口令將會以明文的方式保存在位於Serv-U
安裝目錄下的Serv-U.ini文件中。
隨後一項用來設定是否需要匿名訪問用戶輸入密碼。默認情況下,該項為空白
,這樣那些使用匿名帳號訪問FTP伺服器的用戶將不被要求輸入口令。需要注意的是這里
對匿名用戶密碼的檢測非常簡單,只要匿名用戶輸入符合郵件地址格式的任意字元串即
可,Serv-U
不會進一步的判斷用戶輸入的郵件地址是否真正存在。
下一項為預防反超時措施。如果用戶選擇了該選項,Serv-U將會採用新的記時
方式,那些希望通過定期向伺服器發送命令來防止出現超時操作的用戶將不再得逞。
隨後的選項被用來設定是否刪除沒有完整上傳的文件,如果用戶不使用該刪除
功能,那麼當有用戶在向FTP伺服器上傳文件的過程中出現錯誤而沒有實現文件的完整上
傳時,Serv-U
將會在硬碟上保留已上傳的內容,從而實現上傳文件的斷點續傳。
下面我們要討論的是跨FTP攻擊。通常狀況下,當使用FTP協議進行文件的傳輸
時,客戶端首先向FTP伺服器發出一個「PORT」命令,該命令中包含該用戶的IP地址和將
被用來進行數據傳輸的埠號。伺服器在收到該命令後,利用命令所提供的用戶地址信
息建立與用戶的連接。大多數情況下,上述過程不會出現任何問題,但是,當客戶端是
一名惡意用戶時,可能會通過在PORT
命令中加入特定的地址信息,使FTP伺服器與其它非客戶端的機器建立連接。雖然這
名惡意用戶可能本身無權直接訪問某一特定機器,但是如果FTP
伺服器有權訪問該機器的話,那麼惡意用戶通過FTP伺服器作為中介,仍然能夠最終
實現與目標伺服器的連接。這就是我們所提到的跨伺服器攻擊。為了防止上述情況的發
生,用戶可以選擇「防止跨FTP
伺服器攻擊」的選項,這樣Serv-U在與任何來訪用戶建立連接之前,首先要核實該
用戶提供的地址信息是否為其真實地址。任何事情都是兩方面的。我們已經知道通過使
用Serv-U
可以防止發生跨FTP伺服器的攻擊,但是,同時我們也放棄了在FTP伺服器和FTP服務
器之間實現數據傳輸的功能。這是因為Serv-U
只會與那些所提供的地址與地址提供者的實際地址相符的用戶建立連接,用戶將不
能遠程式控制制在兩台不同的FTP伺服器之間進行文件傳輸。
最後的兩個選項用來限制用戶在FTP伺服器上的最大停留時間,以及規定伺服器中文
件和目錄名的大小寫。
該窗口中的其它相關選項我們將會在稍後進行詳細介紹。
用戶帳號管理
用戶使用FTP伺服器的一個最基本的任務就是添加和管理用戶信息。通過選擇「
SETUP」菜單中的「USERS」打開Serv-U
的用戶管理窗口。該窗口可以分為左右兩大部分。其中左邊的窗口用來顯示目前所
有已經注冊的FTP伺服器的用戶。任意選中其中一個用戶,其詳細的配置信息將會相應的
顯示在窗口的右邊。如果是首次啟動Serv-U,那麼僅會顯示一個名為「DEFAULT」的系統
默認帳號。
下面詳細介紹一下建立新用戶帳號的全過程.
首先單擊窗口最右邊的「NEW」按鈕,在隨後的彈出窗口中輸入需要建立的用戶
名。這時,輸入的用戶名就會出現在窗口右邊的用戶名一欄中。用戶還可以在該欄中對
所建立的帳號名稱進行修改。
隨後用戶可以輸入該帳號將要歸屬的用戶組的組名或建立一個新的組。所謂組
是人們為了便於管理數量龐大的用戶群而推出的概念。我們可以把眾多的單個用戶劃分
到不同的組里進行統一的管理。因為屬於同一個組的用戶都具有一些共同的屬性,例如
用戶密碼,根目錄等,所以用戶只需要對個別具有特殊屬性的帳號進行個別設置即可,
這樣就極大的簡化了對用戶帳號的管理和維護工作。需要注意的一點是,「Anonymous」
這個特殊的用戶帳號不屬於任何一個用戶組。
在隨後的密碼欄中需要輸入帳號的口令,如果用戶在伺服器的設置中選擇了加
密密碼的選項(見前文),那麼所輸入的密碼將自動以加密方式儲存。關於密碼很重要
的一點是只有輸入的前8位字元有效,希望能夠引起廣大Serv-U
使用者的注意。另外,如果用戶在建立新的帳號時沒有輸入相應的密碼,那麼並不
意味著該用戶帳號沒有密碼,Serv-U將會嘗試著尋找是否該用戶帳號屬於某一個用戶組
並且該用戶組具有統一的密碼。如果Serv-U
沒有找到相應的用戶組密碼的話,將會拒絕該用戶帳號的訪問。如果用戶確實希望
不規定某個帳號的密碼,只要在相應帳號的密碼一欄中輸入「<
>」即可。上述情況的一個例外是Anonymous
用戶帳號,該帳號沒有密碼,Serv-U只要求用戶輸入符合郵件地址格式的任意字元
串即可。
在「HOME」一欄中,設置FTP用戶的根目錄,即用戶在成功登錄之後所自動位於
的起始目錄。每一個用戶帳號都要有自己的根目錄,否則Serv-U
將拒絕該用戶帳號的訪問。當然,如果該帳號屬於某個組,而該用戶組已經設定了
共同的根目錄,那麼用戶就不必對該用戶組內的每個帳號進行重復設置。用戶在輸入根
目錄的地址時應當注意必須使用完全路徑,包括盤符。
在「NOTE」一欄中,用戶可以選擇輸入一些對帳號起輔助說明的文字以備將來參考
之用。
在用戶窗口右邊最大的一欄用來設定帳號的訪問許可權,從而決定用戶可以訪問哪些
文件,並以何種方式訪問這些。Serv-U
按照文件和目錄兩大類別對用戶的訪問許可權進行了劃分。具體來說包括:
對文件的訪問許可權:
READ:允許用戶下載文件;
WRITE:允許用戶上傳文件,但無權對文件進行更改,刪除,或重命名;
APPEND:允許用戶對已有的文件進行附加,擁有APPEND許可權的用戶自動擁有WRITE
許可權;
DELETE:允許用戶對文件進行改動,重命名,或刪除。擁有DELETE許可權的用戶自動擁
有WRITE和APPEND許可權;
EXECUTE:允許用戶通過FTP運行可執行文件。例如,用戶可以遠程運行DOS或Windows
程序。
對目錄的訪問許可權:
LIST:允許用戶取得目錄列表;
MAKE:允許用戶在根目錄下建立新的子目錄;
REMOVE:允許用戶刪除根目錄下的子目錄。
INHERIT:選中該選項之後,對某一目錄設置的訪問許可權將自動被該目錄下的所有子目錄
繼承。
在完成上述所有設置之後,點擊「STORE」按鈕,新建立的用戶帳號將被保存在FTP服務
器中。
該窗口中的其它選項將會在稍後進行詳細的介紹。
實時監控
用戶在完成FTP伺服器的基本配置之後,就可以向外界提供FTP文件傳輸服務了
。我想很多用戶都希望在提供FTP服務的過程中,能夠實時地對訪問自己伺服器的用戶進
行監控,從而一方面既能夠對整個服務過程做到心中有數,另一方面還可以在可能出現
意外問題之前,採取及時的防範和補救措施。在這一方面,相信Serv-U
能夠充分滿足大家的需求。
首先,讓我們看一下如何利用Serv-U實現實時的用戶監控。
選擇「FILE」菜單中的「USERINFO」選項。在彈出窗口中的上半部分將會顯示
出所有當前正在與伺服器連接的用戶。用滑鼠點擊其中的任一用戶將會在窗口的下半部
分出現該用戶的詳細信息。
在窗口的右下方有一個「SPYONUSER」按鈕,點擊之後出現的窗口將會顯示出特
定用戶向FTP伺服器發出以及FTP伺服器響應的所有命令。該窗口將會跟蹤所選用戶的所
有命令,對了解特定用戶在訪問FTP
伺服器的過程中的所有行為提供了可靠的依據。
在該按鈕下方還有一個名為「KILLUSER」的按鈕,如果用戶發現某個來訪用戶
的行為可疑,可能會對FTP伺服器的正常工作帶來危害的話,可以通過使用該按鈕立即中
斷與該用戶的連接,將該用戶踢出FTP
伺服器。
需要注意的一點是,雖然Serv-U能夠提供實時的用戶監控信息,但是需要耗用
很大一部分的系統資源。如果用戶發現系統性能出現明顯下降的話,可以通過窗口右側
的「FREEZE
LIST」按鈕暫時凍結窗口信息的動態顯示,從而釋放出寶貴的系統資源。
設置伺服器端日誌記錄
除了能夠實時的進行監控之外,Serv-U還提供了強大的日誌記錄功能,從而方便用
戶記錄和總結一段時期內Serv-U的運行情況。
選擇「FILE」菜單下的「LOGGING」,彈出日誌設置窗口,用戶可以選擇對哪些事件
進行記錄,以及將記錄信息保存到何處。
在該窗口的右側,用戶可以選擇對不同的事件進行記錄,其中包括系統信息,
安全信息等,同時用戶還可以設置是將所記錄的信息顯示在Serv-U
的主窗口內,還是保存到某一指定文件內。出於耗用系統資源和備份信息的需要,
建議用戶把日誌信息保存到指定的文件內。
需要說明的一點是Serv-U的日誌記錄文件採用統一的格式,具體如下:
[n]DATETIME-(xxxx)MESSAGE
最前面的數字「n」代表所記錄信息的類別,分別為:
n=1:系統信息(錯誤信息等);
n=2:用戶發出的FTP命令;
n=3:文件下載;
n=4:文件上傳;
n=5:安全信息(用戶登錄信息等)
n=6:伺服器響應的FTP命令;
n=7:WinSock使用記錄;
n=8:DLL文件訪問記錄
另外,括弧中的「XXXX」是Serv-U賦予每一個來訪用戶的一個唯一的數字標識。
5.設置登錄和退出信息
ywy000128018.jpg?width="340">
細心的用戶可能會發現在登錄或退出某個FTP站點時,經常會出現一個窗口,顯
示一些包括系統設置,歡迎訪問等在內的信息。那麼如何在Serv-U
下實現這一功能呢?
首先,用戶需要把要顯示給用戶的信息保存在一個文本文件中,然後選擇「SE
TUP」菜單中的「MESSAGES」,在彈出的窗口中進行設置。
在位於窗口最上方的下來框中,用戶需要選擇將要使用登錄和退出信息的IP地
址。因為Serv-U支持一台機器擁有多個IP,所以用戶需要選擇相應的IP地址。在下面的
兩個選項中分別輸入用戶事先已經建立好的包含登錄和退出信息的文本文件的地址。
使用外部連接
所謂外部連接是指那些顯示在某一目錄下指向位於該目錄之外的某一文件或目
錄的連接。在用戶端看來,外部連接所指向的文件或目錄就位於當前目錄之下,但實際
上他們只是一些起連接作用的虛擬指針。使用外部連接的一個最大好處就是能夠把來訪
用戶可能需要的所有資源都集中到一個目錄之中,這樣用戶就可以通過不同的外部連接
訪問實際上位於不同磁碟或不同目錄的分散信息。
為了充分利用Serv-U提供的外部連接功能,用戶首先需要生成一個文本文件保存所
有可能會用到的外部連接。文件的具體格式如下:
LINKNAME|SOURCENAME
其中的「LINKNAME」是顯示在用戶當前目錄下的外部連接的名稱,而「SOURCENAME
」則是該外部連接實際指向的磁碟或目錄。
例如我們在一個名為「LINK.TXT」的文件中寫入如下一條:
CD-ROM|F:\
這樣在用戶的當前目錄中就會出現「CD-ROM」字樣,點擊之後,就可以直接訪問FT
P
伺服器的光碟機。
在配置好外部連接的文本文件之後,選擇「FTLE」菜單中的「FTPSERVER」,在
彈出的窗口中找到「PRIMARYFIEL
CONTAININGLINK」,然後輸入上述文本文件的完全路徑。在「PRIMARYFIELCONTAIN
INGLINK」下方有一個「SECONDARY
FILECONTAININGLINK」,該項是用來設定起輔助作用的外部連接文件,可以參照上
述方法生成。
設置上傳和下載比例
如果用戶希望自己FTP站點的使用者不僅僅使用自己提供的資源,還能夠上傳一
些有價值的東西供大家共享的話,可以通過使用Serv-U提供的「上傳和下載比例」這一
功能實現。
用戶可以在「FILE」菜單中的「FTP-SERVER」,「USERS」和「GROUPS」的彈出
窗口中找到名為「U/DRATIOS」的功能按鈕,點擊之後出現設置窗口。用戶可以限制每個
FTP
站點的使用者每上傳一個文件後可以下載的文件數。例如,如果將某個用戶的上傳
和下載比例設置為1/3,那麼該用戶每上傳一個文件,就可以從FTP
站點下載3個文件。
Serv-U支持在單個會話過程或全部會話過程的范圍內,按照具體傳輸的文件數目或
文件的大小,限制用戶的上傳和下載比例。
使用磁碟限額
隨著用戶數量的增加,一個非常實際的問題就是如何既能夠確保每個用戶都有
足夠的硬碟空間可用,同時又防止FTP伺服器吞食整個機器的硬碟資源。同樣,在這個問
題上Serv-U提供了有力的解決方案。
用戶可以分別在「FILE」菜單中的「USERS」和「GROUPS」選項的彈出窗口中找
到名為「QUATO」的功能按鈕。點擊之後出現設置窗口,用戶可以首先檢測某個用戶帳號
當前所使用的硬碟空間,然後根據具體的情況分別設置不同的用戶帳號所能支配的最大
硬碟空間,從而有效的解決硬碟空間不足的問題。
基於IP地址授予或拒絕訪問許可權
選擇「FILE」菜單中的「IPACCESS」選項,在彈出的窗口中進行設置。
用戶可以在窗口的左邊設置不同的訪問規則,而當前所有的訪問規則將會顯示在右
邊的列表中。
Serv-U提供了兩種基本的訪問規則,分別為「拒絕訪問」規則和「允許訪問」
規則。在「拒絕訪問」規則下,所有來自用戶輸入的IP地址的訪問者都將被拒絕訪問,
而來自其它IP地址的用戶都將被授予訪問許可權。同理,如果用戶選擇了「允許訪問」規
則,那麼所有來自用戶輸入的IP地址的訪問者都將被授予訪問許可權,而來自其它IP
地址的用戶將無權訪問FTP伺服器。
通過以上功能,用戶可以針對不同的IP地址,設置不同的許可權,從而有效的保障FT
P
伺服器免受非法訪問者的侵害。
三.小節
Serv-U是一款使用簡單,功能強大,易學易用的FTP伺服器端軟體。相信廣大用
戶結合以上的介紹,再加上個人的實踐,一定會在最短的時間內構建起自己的功能強大
的FTP伺服器。
㈢ 什麼是「FTP」什麼是「流媒體」
FTP(File Transfer Protocal),是文件傳輸協議的簡稱。用於Internet上的控制文件的雙向傳輸。同時,它也是一個應用程序(Application)。用戶可以通過它把自己的PC機與世界各地所有運行FTP協議的伺服器相連,訪問伺服器上的大量程序和信息。
上面抄的。。
其實就是一個埠。提供別人進入瀏覽下載文件的
所謂流媒體是指採用流式傳輸的方式在Internet播放的媒體格式。 流媒體又叫流式媒體,它是指商家用一個視頻傳送伺服器把節目當成數據包發出,傳送到網路上。用戶通過解壓設備對這些數據進行解壓後,節目就會像發送前那樣顯示出來。
這個我專業性的。我也答不好
㈣ 外網訪問內網FTP,為什麼會有這樣的錯誤提示
外網訪問內網FTP三種方法
一,動態公網IP環境
1,環境描述:
環境一,路由器分配的是動態公網IP,且有路由器管理許可權,FTP伺服器部署在路由器內網。如何實現外網訪問內網FTP應用?
環境二,FTP伺服器本地是動態公網IP。如何實現外網訪問FTP應用?
2,解決方案:
在FTP伺服器區域網內使用nat123動態域名解析,解決動態公網IP的問題,通過動態解析域名進行訪問FTP應用。
3,實現過程:
動態域名解析,具體實現過程步驟參考《外網訪問內網FTP-動態公網IP動態域名解析》
二,內網環境,無公網IP
1,環境描述:
FTP伺服器部署在內網,無公網IP,在內網可以上外網。如何實現外網訪問內網FTP應用?
2,解決方案:
使用nat123埠映射,將FTP內網地址映射到外網,實現外網訪問內網FTP應用。
3,實現過程:
非網站轉發映射,具體實現過程步驟參考方法一《外網訪問內網FTP-非網站應用映射方法》
全埠映射穿透不限速,推薦參考方法二《外網訪問內網FTP-全埠映射實現》
提示:
本地(動態)公網IP時,使用動態域名解析,動態解析後,域名訪問完全走本地帶寬。
內網環境,非網站應用,優先考慮使用全埠映射,穿透不限速。
快速了解相關:
使用埠映射還是動態域名解析?> 埠映射與動態域名解析的區別?> 選擇什麼映射類型?
80映射與網站加速的區別?> 本地加速與網站加速的區別?> 免費與VIP的區別?> 如何選擇映射VIP?
如何使用映射VIP(80網站)?> 如何使用映射VIP(非網站)?> 如何使用動態域名解析VIP服務?
如何使用自己的域名(根域名和www子域名)?
當前活動:
1. 非網站映射VIP免費體驗。 2. 網站加速VIP免費體驗。 3. 全埠映射VIP免費體驗。
4. 我的世界聯機專屬VIP2全映射穿透不限速-免費體驗。 5. 充值T幣送等額N幣再送10%T幣。
6. 站外分享送T幣活動。
埠映射高級功能:
1. 如何切換使用映射VIP線路。 2. http穿透解決http屏蔽問題。 3. 埠映射應用多機負載均衡。
4. 80映射網站默認使用快照提示取消。 5. 映射網站默認未登錄提示頁面自定義。
6. 如何設置映射網站離線轉跳自定義目標地址。 7. 自主發布映射服務。
動態域名解析高級功能:
1. 動態域名解析應用多機負載均衡。 2. 動態域名解析VIP怎麼用。
域名解析高級功能:
1. 域名解析A記錄宕機檢測和故障轉移。 2. URL顯性轉發和隱性轉發。 3. URL轉發默認提示取消。
遠程開機:
1. 微信/網頁遠程開機。
㈤ FTP伺服器無法登陸
設置一下許可權試試 不知道是不是這個原因 把user 的寫入選上
㈥ 弄站點的時候提示的:發生一個FTP錯誤-無法連接到主機。找不到遠端主機是什麼意思
找不到遠程主機,意思就是說連不上你輸入的FTP伺服器
檢查你輸入的IP對不對,ping一下
如果是域名,也ping一下看看能不能通
FTP默認的埠是21埠,但是是可以修改的,確認一下埠是否正確,確認方法:在cmd下 telnet 【空格】 ip/域名 【空格】 埠
如果提示telnet不是xxxxx的話,去控制面板,程序卸載,開啟活關閉windows功能裡面把telnet客戶端開起來
㈦ 架了ftp站點後,大量警告事件 來源: MSFTPSVC 事件種類: 無 事件 ID: 100
猜就猜吧,把密碼設到15位以上,他可以算到見上帝了。
㈧ 如何區域網架設FTP
6. 設置用戶許可權
這里主要介紹用戶的許可權,這些許可權包括文件許可權、目錄許可權、子目錄許可權。文件許可權包括:讀取
(Read)、寫入(Write)、追加(Append)、刪除(Delete)、執行(Execute)。
目錄許可權包括:列表(List)、創建(Create)、刪除(Delete)。
子目錄許可權有繼承(Inherit)。
文件許可權:
讀取(Read):賦予用戶讀取(下載)文件的許可權。
寫入(Write):賦予用戶寫入(上傳)文件的許可權。
追加(Append):允許用戶追加文件。
刪除(Delete):賦予用戶刪除文件的許可權。
執行(Execute):賦予用戶執行文件的許可權。請注意:這個許可權是很危險的,一旦開放這個許可權,用戶可
以上傳惡意病毒文件並執行該文件,會給計算機造成無可估計的破快。
目錄許可權:
列表(List):賦予用戶瀏覽文件列表的許可權,如果開放了讀取全縣但關閉列表許可權,並不會影響用戶的
下載,只要用戶知道詳細的下載路徑就行了。
創建(Create):允許用戶創建目錄即創建文件夾。
刪除(Delete):允許用戶刪除目錄,但不允許刪除非空目錄。
子目錄許可權:
繼承(Inherit):與 NTFS 繼承一樣,用戶可以按照本級目錄的許可權訪問下一級目錄。
四、高級設置
1. 用戶組的使用
與 Windows 2000/NT 一樣,Serv-U 也有類似的用戶組別管理機制,只需要按照所需的許可權建立組,就
無需再為每個用戶重新定義許可權了。
假設現有 Movie-con 組、Movie-adv 和 Upload 組,Movie-con 組織允許知道詳細下載路徑的用戶下載
文件,則 Movie-con 組就只需要有文件的讀取和子目錄繼承兩個許可權就可以了。
只有 R---I (讀取和繼承) 許可權的 Movie-con 組
Movie-adv 組可供用戶登陸後瀏覽整個 FTP 伺服器以選擇需要下載的文件,則 Movie-adv 組就需要有
文件讀取、目錄列表和子目錄繼承三個許可權了。
擁有文件讀取、目錄列表、子目錄繼承的 Movie-adv 組
Upload 組需要有上傳許可權,則應賦予文件寫入、目錄列表以及子目錄繼承三個許可權了。
只有文件上傳、目錄列表和子目錄繼承許可權的 Upload 組
當相應許可權的組建立後,就可以向組裡面添加用戶名
被列入 Movie-con 組的用戶 movie 有自己的用戶許可權外還有組的許可權
2. 修改伺服器埠
選中域後出現的域屬性中可更改 FTP 伺服器的埠 (叢 0 - 65535 ),默認值是 21。
3. 向訪問者發送消息
您可以向正在訪問您的 FTP 的用戶發送消息,如:您好,歡迎登陸,30 分鍾後我將斷開伺服器,請
使用支持斷點續傳的 FTP 下載軟體訪問。等等的這些提示消息,問候消息都可以被訪問者接收到。
選中域,在菜單欄上選中"窗口",下拉菜單中選擇 "消息",也可以直接按 F2,但必須是在選中域的情
況下。
在出現的消息窗口中點擊 "廣播消息" 或按組合鍵 ctrl+b 會出現消息的撰寫窗口:
也可以獨立向某個訪問者發送消息;選中域然後再選中活動:
4. 封鎖訪問者 IP 和踢人
您喜歡的話可以封鎖一個 IP 段或一個 IP,伺服器會拒絕來自這個 IP 段或這個 IP 的訪問。
選中域,然後選中域的設置,再選擇 IP 訪問。
禁止來自 218.19.*.* - 218.20.255.255 IP 段的訪問
也可以單獨踢人,選中域下的活動,在用戶列表中選中用戶,在右鍵菜單中選擇踢除用戶。
5. 設置伺服器的回復消息
這些回復將被顯示在訪問者的 FTP 下載軟體的事件對話中。
6. 限制訪問者的上傳下載速率
太多的用戶訪問把您的帶寬都搶掉了,連瀏覽網頁都變得像烏龜一樣慢,您就需要限制訪問者的上傳
和下載速率。
選中需要限制的用戶,在常規中的最大上傳/下載速度中就可以指定該用戶的速度了:
7. 設定整個伺服器的高級設置
您可以設定整個伺服器的高級設置,在伺服器名字 (默認是本地伺服器) 下選擇設置:
�6�1常規設置:
o最大速度:指定伺服器的最大訪問速度。
o最大用戶數量:指定服務機在同一時間內允許的訪問者數量。
o文件/目錄只允許使用小寫字母:指定所有文件和目錄是否只使用小寫字母。
o禁用反超時調度:忽略由客戶使用的普通方法饒過任務超時。
o攔截"FTP_bounce"攻擊和 FXP:只允許活動模式傳送到客戶 IP,也禁止直接的伺服器到伺服器的傳送
。
o攔截連接超過 [ ] 次 於 [ ] 秒 [ ] 分鍾:自動攔截企圖登陸的用戶,一般設定為 3 次。
�6�1SSL 證書
o指定使用 SSL 連接,高級用戶適用。
�6�1目錄緩存
o指定目錄緩存大少以及監視緩存的使用情況。
�6�1高級
o伺服器:
加密密碼:把密碼儲存於加密表單中。
啟用安全:強迫安全,禁止允許任何人在伺服器上做任何事。
信息包超時:信息包的超時時間。
目錄列表掩碼:UNIX 風格訪問掩碼用於目錄列表。
PASV 埠使用范圍:限制 PASV 的埠號,默認鎖定為 1023 - 65535 之間。
o文件上傳:
允許無權只讀訪問:先以無權身份訪問上傳文件,如失敗則改用只讀方式來訪問。
不允許訪問:不允許任何人訪問正在上傳的文件。
允許完全訪問:允許其他用戶訪問正在上傳的文件。
適應超時:在上傳期間,伺服器自動適應上傳時的超時。
osockets:
聯機界外數據:解釋 OOB 包到規則 TCP 流中。
發送連接信號:定時發送信號確認連接是否沒有斷開。
禁用 Nagle 運演算法則:發送下一個包之前不等待等候信號。
發送緩沖:指定發送的緩沖區大小。留空則自動調用堆棧。
接收緩沖:指定接收的緩沖大區小。留空則自動調用堆棧。
o文件下載:
允許完全訪問:允許其他客戶或進程完全訪問正在被下載的文件。
允許讀取訪問:只允許其他用戶或進程以只讀方式訪問正在被下載的文件。
8. TIPS (提示)
1. Serv-U 的每個選項,左下角的狀態欄都會顯示該選項的詳細資料,為用戶在設置時提供充足的設
㈨ ftp協議在運行時的三個主要事件依次是什麼
FTP文件傳送協議(File Transfer Protocol,簡稱FTP),是一個用於從一台主機到另送文件的協議。
FTP的主要作用,就是讓用戶連接上一個遠程計算機(這些計算機上運行著FTP伺服器程序)察看遠程計算機有哪些文件,然後把文件從遠程計算機上拷到本地計算機,或把本地計算機的文件送到遠程計算機去。
與大多數Internet服務一樣,FTP也是一個客戶機/伺服器系統。用戶通過一個支持FTP協議的客戶機程序,連接到在遠程主機上的FTP伺服器程序。用戶通過客戶機程序向伺服器程序發出命令,伺服器程序執行用戶所發出的命令,並將執行的結果返回到客戶機。比如說,用戶發出一條命令,要求伺服器向用戶傳送某一個文件的一份拷貝,伺服器會響應這條命令,將指定文件送至用戶的機器上。客戶機程序代表用戶接收到這個文件,將其存放在用戶目錄中。