यह मुझे क्या करना चाहते हैं: -> (server1) टेलनेट के माध्यम से दूरस्थ सर्वर से कनेक्ट -Http और मुड़
वेब ब्राउज़र> करने के लिए व्यंग्य-प्रॉक्सी (जो प्रमाणीकरण की आवश्यकता है) के माध्यम से पोर्ट 80 (server2) पर टेलनेट
मैं मुड़ (यहाँ का उपयोग करता है एक छोटे से अजगर स्क्रिप्ट में लिखा है:
#! /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()
लेकिन तब मुझे एहसास हुआ कि मैं इसे गलत तरीके से कर रहा हूँ, मेरे खोल रही है सब ब्राउज़र के बजाए स्क्विड से जवाब। क्या कोई जुस सकता है यह करने का सही तरीका है? क्या मुझे मोड़ के बजाए कुछ और उपयोग करना चाहिए?
पायथन का उपयोग करने के लिए यह वास्तव में आवश्यक नहीं है, और कुछ भी – vivek
प्रश्न को समझना बहुत आसान नहीं है। यदि आप इसे पूरा करने की कोशिश कर रहे हैं तो यह स्पष्ट करने का प्रयास करते हैं तो यह आपकी सहायता कर सकता है। –
मुझे किसी अन्य सर्वर के माध्यम से स्क्विड-प्रॉक्सी-सर्वर (पोर्ट 80 पर कौन से सर्वर) तक पहुंचना है (यह वास्तव में एक स्विच है)। मैं स्विच में टेलनेट कर सकता हूं और फिर वहां से स्क्विड-प्रॉक्सी सर्वर से कनेक्ट करने के लिए टेलनेट का उपयोग कर सकता हूं। संक्षेप में मैं उस स्विच के माध्यम से अपने http कनेक्शन सुरंग करना चाहता हूँ – vivek