2014-06-23 91 views
0

我正在使用這個python 2.7腳本來偵聽端口21.現在我需要在用戶嘗試通過ftp客戶端連接時回顯用戶名和密碼。 我應該在腳本中更改哪些內容?打印ftp名稱和密碼數據

import socket 
import sys 

HOST = '' # Symbolic name, meaning all available interfaces 
PORT = 21 # Arbitrary non-privileged port 

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
print 'Socket created' 

#Bind socket to local host and port 
try: 
    s.bind((HOST, PORT)) 
except socket.error as msg: 
    print 'Bind failed. Error Code : ' + str(msg[0]) + ' Message ' + msg[1] 
    sys.exit() 

print 'Socket bind complete' 

#Start listening on socket 
s.listen(10) 
print 'Socket now listening' 

#now keep talking with the client 
while 1: 
    #wait to accept a connection - blocking call 
    conn, addr = s.accept() 
    print 'Connected with ' + addr[0] + ':' + str(addr[1]) 

s.close() 
+0

現在你必須接收你的數據並解釋它。你可以使用'recv()'([see](https://docs.python.org/2/library/socket.html))。 – daouzli

+0

Daouzli,謝謝! – peter

回答

0

要從客戶端接收數據,您可以使用recv()插座模塊也提出了其他類似的功能。您可以參考documentation以瞭解更多精確度。

由於您處於較低水平,因此您必須自行解讀FTP protocollist of commands)。

+0

我發佈這個,因爲它似乎是有用的OP關於他的回答我的評論!那麼,爲什麼我有一個-1? – daouzli

+0

謝謝@peter!不要猶豫,也可以投票;) – daouzli