2013-05-21 3 views
0

Twisted conch를 사용하여 연결하면 serverloop.c에서 패킷 무결성 오류 (6 바이트 남음)가 발생합니다 : /var/log/secure.log에 980이 표시됨 그 후에 연결이 끊어집니다 ("연결 끊김 : 패킷 무결성 오류 ")트위스티드 Conch 패킷 무결성 오류

서버가 VMware 시스템이므로 시스템간에 방화벽이나 기타 보안이 없습니다. 또한 인증이 성공적으로 실행되었음을 알 수 있습니다 (포트 ssh2에서 승인 된 암호).

내 ssh.py는 거의 예와 같습니다

class SSHCommandChannel(channel.SSHChannel): 
    name = "session" 
    def __init__(self, eventparser, *args, **kwargs): 
     channel.SSHChannel.__init__(self, *args, **kwargs) 

    def _cbSendRequest(self, data): 
     print("%s" % data) 
     self.conn.sendEOF(self) 

    def channelOpen(self, data): 
     d = self.conn.sendRequest(self, 'exec', common.NS(data), wantReply=True) 
     d.addCallback(self._cbSendRequest) 
     return None 

    def extReceived(self, dataType, data): 
     self.dataRecieved(data) 

    def dataRecieved(self, data): 
     print("w00t: %s" % data) 

    def closed(self): 
     print("Channel closed =(") 

내가 어떻게 일이 예를 받고 내 퀘스트를 계속하는 아무 생각이 없습니다. 조언을 주시면 감사하겠습니다.

답변

0

내 생각 엔 이상한 데이터를 exec 요청에 전달하고있는 것 같습니다. 나는 채널의 클라이언트 측에 전달 된 데이터가 무엇인지에 대해서는 생각지도 못했지만 서버로 다시 보내고 싶지는 않습니다. 서버는 임의의 데이터가 아니라 NS 인코딩 된 명령을 실행할 것을 기대합니다. 불행히도 내 Mac에서 본 오류를 재현 할 수는 없지만 올바른 방향으로이 점을 알려주십시오!