加入收藏 | 设为首页 | 会员中心 | 我要投稿 大连站长网 (https://www.0411zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

python下实现c s模式远程设置

发布时间:2022-06-15 03:46:37 所属栏目:教程 来源:互联网
导读:c/s模式远程有点像服务器与客户端一样的,我们下面利用python来做一个简单的例子,有兴趣的和小编来学学. 实现目标:通过控制端,可以实现N台主机执行同一操作. 具体代码如下: 1、控制端代码: [root@361way tmp]# vim client.py #!/usr/bin/env python import
  c/s模式远程有点像服务器与客户端一样的,我们下面利用python来做一个简单的例子,有兴趣的和小编来学学.
 
  实现目标:通过控制端,可以实现N台主机执行同一操作.
 
  具体代码如下:
 
  1、控制端代码:
 
  [root@361way tmp]# vim client.py
  
  #!/usr/bin/env python
  
  import socket,os,sys
  
    ost=sys.argv[1]
  
  ?ort=4567
  
  for host in os.popen('cat ip.list').readlines():
  
    print host
  
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  
    s.connect((host,port))
  
    while 1:
  
      data=sys.argv[2]
  
      if not data:
  
          break
  
      s.sendall(data)
  
      data=s.recv(1024)
  
      if not data:
  
          break
  
      print data
  
    s.close()
  
       2、被控制端代码
 
  [root@localhost tmp]# vim server.py
  
  #!/usr/bin/env python
  
  import socket,os
  
  host=''
  
  port=4567
  
  s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  
  s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
  
  s.bind((host,port))
  
  s.listen(1)
  
  print "Server is running on port %d; press ctrl-c to terminate." % port
  
  while 1:
  
      clientsock,clientaddr=s.accept()
  
      print "connect from %s" % str(clientaddr)
  
      clientfile=clientsock.makefile('rw',0)
      //phpfensi.com
      data=clientsock.recv(1024)
  
      command=os.popen(data).read()
  
      clientfile.write("%s" % command)
  
      clientfile.close()
  
      clientsock.close()
  
       3、操作方法
 
  ip.list里写server端的IP地址,每行一个,如:
 
  1.1.1.1
 
  2.2.2.2
 
  使用方法,将server.py部署于目标主机上,执行server.py,客户端执行.python client.py ip.list "command"即可。

 

(编辑:大连站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!