Пример #1
0
    def SearchFiles(self, get):
        if not hasattr(get, 'path'): get.path = '/www/wwwroot'
        if sys.version_info[0] == 2: get.path = get.path.encode('utf-8')
        if not os.path.exists(get.path): get.path = '/www'
        search = get.search.strip().lower()
        my_dirs = []
        my_files = []
        count = 0
        max = 3000
        for d_list in os.walk(get.path):
            if count >= max: break
            for d in d_list[1]:
                if count >= max: break
                if d.lower().find(search) != -1:
                    my_dirs.append(
                        self.__get_stat(d_list[0] + '/' + d, get.path))
                    count += 1

            for f in d_list[2]:
                if count >= max: break
                if f.lower().find(search) != -1:
                    my_files.append(
                        self.__get_stat(d_list[0] + '/' + f, get.path))
                    count += 1
        data = {}
        data['DIR'] = sorted(my_dirs)
        data['FILES'] = sorted(my_files)
        data['PATH'] = str(get.path)
        data['PAGE'] = public.get_page(
            len(my_dirs) + len(my_files), 1, max, 'GetFiles')['page']
        return data
Пример #2
0
 def get_logs(self, args):
     if 'p' in args: p = int(args.p)
     rows = 10
     if 'rows' in args: rows = int(args.rows)
     count = public.M('logs').where('type=?', ('SSH security',)).count()
     data = public.get_page(count, int(args.p), int(rows))
     data['data'] = public.M('logs').where('type=?', ('SSH security',)).limit(data['shift'] + ',' + data['row']).order(
         'addtime desc').select()
     return data
Пример #3
0
 def get_logs(self,args):
     #处理前端传过来的参数
     if not 'p' in args: args.p = 1
     if not 'rows' in args: args.rows = 12
     if not 'callback' in args: args.callback = ''
     args.p = int(args.p)
     args.rows = int(args.rows)
     #取日志总行数
     count = public.M('logs').count()
     #获取分页数据
     page_data = public.get_page(count,args.p,args.rows,args.callback)
     #获取当前页的数据列表
     log_list = public.M('logs').order('id desc').limit(page_data['shift'] + ',' + page_data['row']).field('id,type,log,addtime').select()
     
     #返回数据到前端
     return {'data': log_list,'page':page_data['page'] }
Пример #4
0
def main():
    print('Testing kuaidaili')
    used_time_list = []
    valid_count = 0
    total_count = 0
    while True:
        flag, result = get_page(api_url)
        if flag:
            proxy = result.strip()
            if is_proxy(proxy):
                total_count += 1
                print('Testing proxy', proxy)
                test_flag, test_result = test_proxy(proxy=proxy)
                if test_flag:
                    valid_count += 1
                    used_time_list.append(test_result)
                stats_result(used_time_list, valid_count, total_count)
        time.sleep(wait)
        if total_count == max:
            break
Пример #5
0
    def GetList(self,get = None):
        try:
            data = {}
            # 获取开放的端口
            data['ports'] = self.__Obj.GetAcceptPortList();
            #当前时间
            #'2018-10-11 14:36:40'
            addtime = time.strftime('%Y-%m-%d %X',time.localtime())
            #
            for i in range(len(data['ports'])):
                #
                tmp = self.CheckDbExists(data['ports'][i]['port'],data['ports'][i]['protocol']);
                # | id | port  | ps  | addtime   | ports | protocol | address_ip | types |
                if not tmp: public.M('firewall').add('port,ps,addtime',(data['ports'][i]['port'],'',addtime))
                          
            data['iplist'] = self.__Obj.GetDropAddressList();
            
            for i in range(len(data['iplist'])):
                try:
                    tmp = self.CheckDbExists(data['iplist'][i]['address']);
                    if not tmp: public.M('firewall').add('port,ps,addtime',(data['iplist'][i]['address'],'',addtime))
                except:
                    return public.get_error_info()

            # 添加到firewalls 数据表中
            data['reject']=self.__Obj.GetrejectLIST()

            
            for i in range(len(data['reject'])):
                try:
                    tmp=self.CheckDbExists2(data['reject'][i]['protocol'],
                                            data['reject'][i]['type'],
                                            data['reject'][i]['port'],
                                            data['reject'][i]['address'])
                    if not tmp:public.M('firewall').add('protocol,types,ports,address_ip,addtime',
                                                         (data['reject'][i]['protocol'],
                                                          data['reject'][i]['type'],
                                                          data['reject'][i]['port'],
                                                          data['reject'][i]['address'],addtime))
                except:
                    return public.get_error_info()
            # 添加允许信息到firewalls 表中
            data['accept'] = self.__Obj.Getacceptlist()
            #return data
            for i in range(len(data['accept'])):
                try:
                    tmp = self.CheckDbExists2(data['accept'][i]['protocol'],
                                              data['accept'][i]['type'],
                                              data['accept'][i]['port'],
                                              data['accept'][i]['address'])
                    if not tmp: public.M('firewall').add('protocol,types,ports,address_ip,addtime',
                                                          (data['accept'][i]['protocol'],
                                                           data['accept'][i]['type'],
                                                           data['accept'][i]['port'],
                                                           data['accept'][i]['address'],addtime))
                except:
                    return public.get_error_info()
            count =  public.M('firewall').count();
            data = {}
            data['page'] = public.get_page(count,int(get.p),12,get.collback)
            data['data'] = public.M('firewall').limit(data['page']['shift'] + ',' + data['page']['row']).order('id desc').select()
            for i in range(len(data['data'])):
                if data['data'][i]['port'].find(':') != -1 or data['data'][i]['port'].find('.') != -1 or data['data'][i]['port'].find('-') != -1:
                        data['data'][i]['status'] = -1;
                else:
                    data['data'][i]['status'] = public.check_port_stat(int(data['data'][i]['port']));

            data['page'] = data['page']['page']
            return data
        except Exception as ex:
            return public.get_error_info()