使用Python在LAN桌面中打开应用程序

时间:2015-01-16 11:31:27

标签: python python-2.7 unix lan

昨天我可以使用以下脚本从我的Windows PC成功连接到Unix服务器:

**import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('punltc02.force.com',username = 'amkar',password = 'new')
stdin,stdout,stderr = ssh.exec_command("pwd") (it works !!)

>>> stdout.readlines()

[u'/home/amkar\n'

今天,我正在尝试做同样的事情,但我试图从我的笔记本电脑连接到Windows桌面而不是Unix服务器。我需要连接到桌面并开始使用Python运行应用程序。我收到以下错误:

*`enter code here`*>>> ssh.connect('135.24.237.144',username =     
'administrator',password = 'force')
 Traceback (most recent call last):
 File "<interactive input>", line 1, in <module>
 File "C:\Python27\lib\site-packages\paramiko\client.py", line 251, in  
 connect
 retry_on_signal(lambda: sock.connect(addr))
 File "C:\Python27\lib\site-packages\paramiko\util.py", line 270, in   
 retry_on_signal
 return function()
 File "C:\Python27\lib\site-packages\paramiko\client.py", line 251, in   
 <lambda>
  retry_on_signal(lambda: sock.connect(addr))
  File "C:\Python27\lib\socket.py", line 224, in meth
  return getattr(self._sock,name)(*args)
  error: [Errno 10061] No connection could be made because the target   
  machine actively refused it**

我怀疑是否需要在LAN桌面上安装OpenSSH。或者,还有其他方法可以做到这一点。请帮忙。

谢谢和问候, Amitra

2 个答案:

答案 0 :(得分:0)

您必须在LAN桌面上安装OpenSSH。

如果已安装OpenSSH,则尝试禁用防火墙。 Ping远程计算机以检查计算机和远程计算机之间是否存在连接。

您可以使用Paramiko来执行远程应用程序。您可以使用ssh.exec_command()例如:

import paramiko    
sh = paramiko.SSHClient()
ssh.connect(server, username=username, password=password)
ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute_on_remote_machine)

其他可能性是PsExec

答案 1 :(得分:0)

也许是这样的?
http://resources.infosecinstitute.com/creating-undetectable-custom-ssh-backdoor-python-z/

import paramiko
import threading
 
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('10.0.2.15', username='root', password='toor')
chan = ssh.get_transport().open_session()
chan.send('Hey i am connected :) ')
print chan.recv(1024)
client.close