Ejemplo n.º 1
0
 def generate_firewall_rules(self):
    
     rule = Rule()
    
     with open(self.csv_file_path,'r') as file:
        
         for line in file.readlines():
            
             direction, protocol, ports, ips = line.split(",")
             print("------------------------------------")
             print("\n", direction, protocol, ports, ips)
            
             if "-" in ports:
                 ports_range = ports.split("-")
                 ports = range(int(ports_range[0]),int(ports_range[1])+1)
             else:
                 ports = range(int(ports), int(ports)+1)
            
             print("Ports:", ports)
            
             if "-" in ips:
                 ips_range = ips.split("-")
                 dec_ip_start = 0
                 for ind, ip_part in enumerate(ips_range[0].split(".")):
                     dec_ip_start += self.partial_dec_ip(ind, ip_part)
                 dec_ip_end = 0
                 for ind, ip_part in enumerate(ips_range[1].split(".")):
                     dec_ip_end += self.partial_dec_ip(ind, ip_part)
                 ips = range(dec_ip_start, dec_ip_end+1)
             else:
                 dec_ip_start = 0
                 for ind, ip_part in enumerate(ips.split(".")):
                     dec_ip_start += self.partial_dec_ip(ind, ip_part)
                 ips = range(dec_ip_start, dec_ip_start+1)
                
             print("Ips:", ips)
            
             rule.add_rule(direction, protocol, ports, ips)
            
     return rule