0
以下是一個試圖製作服務器的Python Paramiko腳本。 每當我運行該腳本時,我都會遇到拒絕訪問的錯誤。 錯誤的詳細信息在下面列出。Python Paramiko:錯誤13訪問被拒絕
import socket
import sys
import threading
import paramiko
from os.path import expanduser
keypath = expanduser("~/Desktop/test_rsa.key")
host_key = paramiko.RSAKey(filename=keypath)
class Server (paramiko.ServerInterface):
def __init__(self):
self.event = threading.Event()
def check_channel_request(self, kind, chanid):
if kind == 'session':
return paramiko.OPEN_SUCCEEDED
return paramiko.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
def check_auth_password(self, username, password):
if (username == 'use') and (password == 'pass'):
return paramiko.AUTH_SUCCESSFUL
return paramiko.AUTH_FAILED
try:
host=""
global sock
sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.bind((host,22))
sock.listen(1)
print "[+] Listening for connection"
除例外,E: 打印 「[]聽/冰失敗:」 + STR(E)
try:
client,addr=socket.accept()
print" [+] got connection from" + str(addr)
t=paramiko.Transport(client)
t.load_server_moduli()
t.add_server_key(host_key)
server=Server()
t.start_server(server=server)
global chan
print chan
print chan.recv(1024)
chan.send("Oh yes I can see that")
except:
print "[-] Conncetion Terminated"
pass
您好,我米試圖用的paramiko的幫助下運行服務器腳本。 每當我運行該腳本,我得到以下錯誤:
[] Listen/Bing Failed:[Errno 13] Permission denied
[-] Conncetion Terminated
請幫我把它。
此致
Vidit沙
意味着它說 - 你的操作系統說你不允許做某事。如果您打印了完整的堆棧跟蹤信息,而不僅僅是「特徵」,那麼我們就可以準確地確定哪個調用失敗了 - 但無論哪種方式,這可能意味着要查看防火牆規則或文件權限,否則一些操作系統強制執行。 –
......但無論如何,首先從這裏開始打印一個堆棧跟蹤,並將其包含在您的問題中。順便說一句,如果只通過沒有paramiko的套接字連接就可以產生相同的錯誤,那麼你應該從你的問題中刪除paramiko - 構建最小和最簡單的產生相同問題的再現器是** M ** inimal爲[最小,完整,可驗證示例]指定的條件(http://stackoverflow.com/help/mcve)。 –
錯誤:root:發生了可怕的事情! 回溯(最近最後調用): 文件 「/Users/vidit/PycharmProjects/untitled6/server.py」,第41行,在 客戶端,ADDR = socket.accept() AttributeError的: '模塊' 對象沒有屬性'接受' 回溯錯誤 –