Beispiel #1
0
def main():
    if len(sys.argv) < 3:
        usage(f=sys.stderr)
        sys.exit(-1)

    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG,
    )

    localip = sys.argv[1]
    localport = int(sys.argv[2])

    dst = ForwardDestination("socks5", urlparse('socks5://127.0.0.1:1080/'))
    rules = {
        (re.compile(r'.*\.whereisip\.net$'), re.compile(r'.*'),
         re.compile(r'.*')):
        dst,
        (re.compile(r'.*\.google\.com$'), re.compile(r'.*'), re.compile(r'.*')):
        dst,
    }
    matcher = RESocksMatcher(rules)
    relay = SmartRelayFactory(matcher)
    socks = SocksServer(localip, localport, relay)
    socks.run()
Beispiel #2
0
def main():
    if len(sys.argv) < 4:
        usage(f=sys.stderr)
        sys.exit(-1)

    localip = sys.argv[1]
    localport = int(sys.argv[2])
    relays = []
    for entry in sys.argv[3].split("|"):
        fronturl, hostname, properties = entry.split(",")
        properties = properties.split(":")
        relays.append(
            Relay(fronturl=fronturl,
                  hostname=hostname,
                  properties=properties,
                  failure=0))

    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG,
    )
    meekfactory = MeekRelayFactory(relays)
    socks = SocksServer(localip, localport, meekfactory)
    socks.run()
Beispiel #3
0
def main():
    if len(sys.argv) < 5:
        usage(f = sys.stderr)
        sys.exit(-1)
        
    http_ip = sys.argv[1]
    http_port = int(sys.argv[2])
    socksip = sys.argv[3]
    socksport = int(sys.argv[4])
    
    opts, args = getopt.gnu_getopt(sys.argv[5:], "hdp:l:",
                            ["help", "debug", "pidfile=", "logfile="])
    for o, a in opts:
        if o == "-h" or o == "--help":
            usage()
            sys.exit()
        if o == "-d" or o == "--debug":
            options.logginglevel = logging.DEBUG
        elif o == "-p" or o == "--pidfile":
            options.daemonize = True
            options.pidfile = a
        elif o == "-l" or o == "--logfile":
            options.daemonize = True
            options.logfile = a
            
    if options.daemonize:
        pid = os.fork()
        if pid != 0:
            # write pidfile by father
            f = open(options.pidfile, "w")
            print >> f, pid
            f.close()
            sys.exit(0)
    
    if options.daemonize:
        logger = logging.getLogger()
        logger.setLevel(options.logginglevel)
        ch = WatchedFileHandler(options.logfile)
        ch.setFormatter(logging.Formatter('[%(asctime)s][%(name)s][%(levelname)s] - %(message)s'))
        logger.addHandler(ch)
    else:
        logging.basicConfig(
            format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
            datefmt='%Y-%d-%m %H:%M:%S',
            level=options.logginglevel,    
        )
    
    socks = SocksServer(socksip, socksport, SocksRelayFactory(), timeout=30, maxclient=500)
    socks.start()

    globalvars.socksip = socksip
    globalvars.socksport = socksport
    globalvars.sockstimeout = 60
    WSGIServer((http_ip, http_port), meek_server_application, log=None).serve_forever()
Beispiel #4
0
def main():
    if len(sys.argv) < 3:
        usage(f=sys.stderr)
        sys.exit(-1)

    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG,
    )
    localip = sys.argv[1]
    localport = int(sys.argv[2])
    relayfactory = SocksRelayFactory()
    socks = SocksServer(localip, localport, relayfactory)
    socks.run()
Beispiel #5
0
def main():
    if len(sys.argv) < 3:
        usage(f=sys.stderr)
        sys.exit(-1)
        
    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG, 
    )
    localip = sys.argv[1]
    localport = int(sys.argv[2])
    relayfactory = SocksRelayFactory()
    socks = SocksServer(localip, localport, relayfactory)
    socks.run()
Beispiel #6
0
def main():
    if len(sys.argv) < 5:
        usage(f=sys.stderr)
        sys.exit(-1)
    
    localip = sys.argv[1]
    localport = sys.argv[2]
    remoteip = sys.argv[3]
    remoteport = sys.argv[4]
    
    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG,    
    )
    forwardfactory = SocksForwardFactory(remoteip, remoteport)
    socks = SocksServer(localip, localport, forwardfactory)
    socks.run()
def main():
    if len(sys.argv) < 4:
        usage(f = sys.stderr)
        sys.exit(-1)
        
    localip = sys.argv[1]
    localport = int(sys.argv[2])
    relays = []
    for entry in sys.argv[3].split("|"):
        fronturl, hostname, properties = entry.split(",")
        properties = properties.split(":")
        relays.append(Relay(
            fronturl=fronturl, hostname=hostname, properties=properties, failure=0))
    
    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG,    
    )
    meekfactory = MeekRelayFactory(relays)
    socks = SocksServer(localip, localport, meekfactory)
    socks.run()
def main():
    if len(sys.argv) < 3:
        usage(f=sys.stderr)
        sys.exit(-1)
        
    logging.basicConfig(
        format='[%(asctime)s][%(name)s][%(levelname)s] - %(message)s',
        datefmt='%Y-%d-%m %H:%M:%S',
        level=logging.DEBUG, 
    )
        
    localip = sys.argv[1]
    localport = int(sys.argv[2])
    
    rules = {
        (re.compile(r'.*\.whereisip\.net$'), re.compile(r'.*'), re.compile(r'.*')): urlparse('socks5://127.0.0.1:8080/'),
        (re.compile(r'.*\.google\.com$'), re.compile(r'.*'), re.compile(r'.*')): urlparse('socks5://127.0.0.1:8080/'),
    }
    match = SocksForwardRegexMatch(rules)
    relay = SmartRelayFactory(match)
    socks = SocksServer(localip, localport, relay)
    socks.run()
Beispiel #9
0
def main():
    server = SocksServer(addr=('127.0.0.1', 2468))
    server.start()