とこれは私が何をしたいです:のHttp Telnet経由のpythonとねじれた
Webブラウザ - >(サーバー1)Telnet経由でリモートサーバーに接続 - >イカプロキシに(認証が必要)経由ポート80(サーバー2)
上のtelnet私はツイストを使用する小型のPythonスクリプト(ここに書かれています:
#! /usr/bin/python
from twisted.internet import reactor, protocol
from twisted.web import http
from telnetlib import Telnet
import getpass
from sys import stdout
class datareceiver(protocol.Protocol):
def dataReceived(self,data):
self.telnet_con.write(data)
stdout.write(self.telnet_con.read_all())
def connectionMade(data):
stdout.write("\nA connection was made to this server\n")
def main():
server1 = "10.1.1.1"
#user = raw_input("Enter your remote account: ")
password = getpass.getpass()
tn = Telnet(server1)
if password:
tn.read_until("Password: ")
tn.write(password + "\n")
#This is server2
tn.write("telnet 10.1.1.10 80 \n")
#serverfac = protocol.Factory()
serverfac = http.HTTPFactory()
datareceiver.telnet_con = tn
serverfac.protocol = datareceiver
reactor.listenTCP(9229,serverfac)
reactor.run()
tn.write("exit\n")
print tn.read_all()
if __name__ == "__main__":
main()
をしかし、その後、私はそれを間違った方法をやって実現し、私のシェルがすべてなっていますブラウザの代わりにイカから返信します 誰かjusこれを行う正しい方法を概説してください。 ねじれの代わりに何か他のものを使うべきですか?
Pythonを使うのに本当に必要なことはありませんが、それ以外は何もしません。 – vivek
質問はあまり理解しにくいです。あなたが達成しようとしていることを明確にしようとすると助けになるかもしれません。 –
私はsquid-proxy-server(ポート80のサーバ)に別のサーバ(実際はスイッチ)を介してアクセスする必要があります。私はスイッチにtelnetすることができ、そこからtelnetを使ってsquid-proxyサーバに接続します。要するに、そのスイッチを介してhttp接続をトンネルしたい – vivek