From 56f50acd66d6f041b0347babb131150db3ca2023 Mon Sep 17 00:00:00 2001 From: Eddie Arrage Date: Tue, 20 Mar 2018 23:51:35 +0000 Subject: Develop snort IDS and content inspect service - Initial commit to show potential structure of a sample service - This wil be part of a larger sample application currently dubbed Service Delivery Controller - Docker container needs to be built and employs open-source Linux packages - Service is deployable in Istio service mesh using provided yaml - Control snort daemon and add custom rules with GRPC messaging - Process snort alerts actively and send to redis and upstream service mesh components - Integrates a web server for better HTTP signature detection - Improved build script for CI with variables - Render k8s yaml snort manifest dynamically with command line options - Improve snort_client sample script for runtime modifications including passing args on CLI, error checking - Update nginx proxy interface - Added logging to snort server and alert process Change-Id: Ic56f9fcd9ed21f64b84b85ac8ee280d69af7b7c9 Signed-off-by: Eddie Arrage --- .../snort_ids/docker/grpc/snort_pb2_grpc.py | 80 ++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 samples/services/snort_ids/docker/grpc/snort_pb2_grpc.py (limited to 'samples/services/snort_ids/docker/grpc/snort_pb2_grpc.py') diff --git a/samples/services/snort_ids/docker/grpc/snort_pb2_grpc.py b/samples/services/snort_ids/docker/grpc/snort_pb2_grpc.py new file mode 100644 index 0000000..4a04299 --- /dev/null +++ b/samples/services/snort_ids/docker/grpc/snort_pb2_grpc.py @@ -0,0 +1,80 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +import snort_pb2 as snort__pb2 + + +class ControllerStub(object): + # missing associated documentation comment in .proto file + pass + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.AddRules = channel.unary_unary( + '/snort.Controller/AddRules', + request_serializer=snort__pb2.AddRule.SerializeToString, + response_deserializer=snort__pb2.SnortReply.FromString, + ) + self.StartSnort = channel.unary_unary( + '/snort.Controller/StartSnort', + request_serializer=snort__pb2.ControlSnort.SerializeToString, + response_deserializer=snort__pb2.SnortReply.FromString, + ) + self.StopSnort = channel.unary_unary( + '/snort.Controller/StopSnort', + request_serializer=snort__pb2.ControlSnort.SerializeToString, + response_deserializer=snort__pb2.SnortReply.FromString, + ) + + +class ControllerServicer(object): + # missing associated documentation comment in .proto file + pass + + def AddRules(self, request, context): + # missing associated documentation comment in .proto file + pass + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def StartSnort(self, request, context): + # missing associated documentation comment in .proto file + pass + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def StopSnort(self, request, context): + # missing associated documentation comment in .proto file + pass + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_ControllerServicer_to_server(servicer, server): + rpc_method_handlers = { + 'AddRules': grpc.unary_unary_rpc_method_handler( + servicer.AddRules, + request_deserializer=snort__pb2.AddRule.FromString, + response_serializer=snort__pb2.SnortReply.SerializeToString, + ), + 'StartSnort': grpc.unary_unary_rpc_method_handler( + servicer.StartSnort, + request_deserializer=snort__pb2.ControlSnort.FromString, + response_serializer=snort__pb2.SnortReply.SerializeToString, + ), + 'StopSnort': grpc.unary_unary_rpc_method_handler( + servicer.StopSnort, + request_deserializer=snort__pb2.ControlSnort.FromString, + response_serializer=snort__pb2.SnortReply.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'snort.Controller', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) -- cgit 1.2.3-korg