All Projects → aws-solutions → aws-network-firewall-deployment-automations-for-aws-transit-gateway

aws-solutions / aws-network-firewall-deployment-automations-for-aws-transit-gateway

Licence: Apache-2.0 license
AWS Network Firewall Deployment Automations for AWS Transit Gateway configures the AWS resources needed to filter network traffic. This solution saves you time by automating the process of provisioning a centralized AWS Network Firewall to inspect traffic between your Amazon VPCs.

Programming Languages

typescript
32286 projects
shell
77523 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to aws-network-firewall-deployment-automations-for-aws-transit-gateway

Android-Firewall
Basic netguard app from playstore ,reduced to its minimum level for vpn and firewall logic
Stars: ✭ 41 (+105%)
Mutual labels:  firewall
Firewall-Easy
Application allows to block Internet access to other applications / Приложение позволяет заблокировать доступ в интернет другим приложения
Stars: ✭ 41 (+105%)
Mutual labels:  firewall
firewall
Development repository for the firewall cookbook
Stars: ✭ 97 (+385%)
Mutual labels:  firewall
paragon firewall ce
Paragon Firewall for Mac
Stars: ✭ 63 (+215%)
Mutual labels:  firewall
webhook-tunnel
A little HTTP proxy suitable to create tunnels for webhook endpoints protected behind a firewall or a VPN
Stars: ✭ 63 (+215%)
Mutual labels:  firewall
UnboundBL
🛑 DNSBL (adblock) on OPNsense with UnboundBL & Unbound DNS
Stars: ✭ 63 (+215%)
Mutual labels:  firewall
SmartGW
Domain based VPN Gateway/Proxy for all devices
Stars: ✭ 49 (+145%)
Mutual labels:  firewall
dots
digital ocean api typescript/javascript wrapper
Stars: ✭ 65 (+225%)
Mutual labels:  firewall
ansible-opnsense
Ansible role to configure OPNsense firewalls
Stars: ✭ 78 (+290%)
Mutual labels:  firewall
emacs-antiproxy
🔓 anti proxy/firewall setup using git repo mirrors of package archives. (local melpa)
Stars: ✭ 24 (+20%)
Mutual labels:  firewall
ip-finder-cli
The official command line client for IPFinder
Stars: ✭ 11 (-45%)
Mutual labels:  firewall
UTMFW
UTM Firewall on OpenBSD
Stars: ✭ 104 (+420%)
Mutual labels:  firewall
shieldfy-php-client
The official PHP SDK for Shieldfy
Stars: ✭ 15 (-25%)
Mutual labels:  firewall
Mignis
Mignis is a semantic based tool for firewall configuration.
Stars: ✭ 43 (+115%)
Mutual labels:  firewall
tunman
Comprehensive solution for SSH tunnels - respawning, healthchecking/monitoring
Stars: ✭ 43 (+115%)
Mutual labels:  firewall
cloudflare-block-bad-bot-ruleset
🚦 Block malicious crawlers with Cloudflare Firewall Rules
Stars: ✭ 178 (+790%)
Mutual labels:  firewall
PFRE
Packet Filter Rule Editor for OpenBSD/pf
Stars: ✭ 26 (+30%)
Mutual labels:  firewall
Silverdog
An audio firewall for Chrome!
Stars: ✭ 65 (+225%)
Mutual labels:  firewall
DirectFire Converter
DirectFire Firewall Converter - Network Security, Next-Generation Firewall Configuration Conversion, Firewall Syntax Translation and Firewall Migration Tool - supports Cisco ASA, Fortinet FortiGate (FortiOS), Juniper SRX (JunOS), SSG / Netscreen (ScreenOS) and WatchGuard (support for further devices in development). Similar to FortiConverter, Sm…
Stars: ✭ 34 (+70%)
Mutual labels:  firewall
shieldwall
zero-trust remote firewall instrumentation
Stars: ✭ 185 (+825%)
Mutual labels:  firewall

AWS Network Firewall Deployment Automations for AWS Transit Gateway | 🚧 Feature request | 🐛 Bug Report

Note: If you want to use the solution without building from source, navigate to Solution Landing Page

Table of contents

Solution Overview

Solution for AWS Network Firewall Deployment Automations for AWS Transit Gateway.

Architecture Diagram

Architecture Diagram

Prerequisites for Customization

  • Node.js>12

Build

Build the CDK code

cd source/
npm run build

Build the Network Firewall Solution CodeBuild source code

cd source/networkfirewallAutomation
tsc 

Build the templates for custom deployments

cd deployments/
chmod +x ./build-s3-dist.sh
./build-s3-dist.sh [SOLUTION_DIST_BUCKET] network-firewall-automation [VERSION_ID]

Unit Test

Run the unit tests

cd source/
chmod +x ./run-all-tests.sh

Deploy

Follow the steps for deploying your custom version of the solution.

  • Create an S3 bucket with the bucket appended with the region in which the deployment is to be made. example, if the deployment is to be made in us-east-1 create a bucket name as [BUCKET_NAME]-us-east-1.
  • Create the distribution files using the script provided in the build section above.
  • Create the S3 Key in the bucket network-firewall-automation/[VERSION_ID]/
  • Create the S3 Key in the bucket network-firewall-automation/latest/
  • Copy the file ./deployment/regional-s3-assets/network-firewall-automation.zip to the location s3://[BUCKET_NAME]-[REGION]/network-firewall-automation/[VERSION_ID]/
  • Copy the file ./deployment/regional-s3-assets/network-firewall-configuration.zip to the location s3://[BUCKET_NAME]-[REGION]/network-firewall-automation/latest/

Once the above steps are completed, use the file ./deployment/global-s3-assets/aws-network-firewall-deployment-automations-for-aws-transit-gateway.template to create a stack in CloudFormation.

File structure

aws-network-firewall-deployment-automations-for-aws-transit-gateway consists of:

  • CDK constructs to generate necessary resources
  • Microservices used in the solution

File Structure

|-deployment/
  |build-s3-dist.sh/                     [ Build script for create the distribution for the solution.]
|-source/
  |-bin/
    |-network-firewall-auto-solution.ts  [ entry point for CDK app ]
  |-test/                  [ unit tests for CDK constructs ] 
    |-network-firewall-automation-solution.test.ts [CDK construct for the solution.]
    |-__snapshots__
      |-network-firewall-automation-solution.test.ts.snap [CDK construct template snapshot of unit testing.]
  |-lib/
    |-network-firewall-automation-solution-stack.ts [ CDK construct for the solution. ]
  |-networkFirewallAutomation
    |-__tests__
      |-firewall-test-configuration
        |-firewalls
          |-firewall-invalid.json
          |-firewall-nopolicy.json
          |-firewall-example.json
        |-firewallPolicies
          |-firewall-invalid-policy.json
          |-firewall-policy-2.json
          |-firewall-policy.example.json
        |-ruleGroups
          |-stateless-pass-action.example.json
          |-stateless-fwd-to-stateful.example.json
          |-stateful-domainblock.example.json
          |-drop.rules
          |-suricata-rule-reference.json
      |-network-firewall-service.spec.ts
      |-ec2-manager.spec.ts
      |-firewall-config-validation.spec.ts
      |-network-firewall-manager.spec.ts
      |-send-metrics.spec.ts
    |-config
      |-examples
        |-firewalls
          |-firewall.example.json
        |-firewallPolicies
          |-firewall-policy.example.json
        |-ruleGroups
          |-stateless-pass-action.example.json
          |-stateless-fwd-to-stateful.example.json
          |-stateful-domainblock.example.json
          |-drop.rules
          |-suricata-rule-reference.json
      |-firewallPolicies
        |-firewall-policy-1.json
      |-firewalls
        |-firewall-1.json
    |-lib
      |-ec2-manager.ts
      |-network-firewall-manager.ts
      |-common
        |-configReader
          |-config-reader.ts
        |-logger.ts
        |-stringUtils.ts
        |-firewall-config-validation.ts
        |-send-metrics.ts
      |-service
        |-awsClientConfig.ts
        |-ec2-service.ts
        |-network-firewall-service.ts
      |-build.ts
      |-index.ts
      |-config_files            [ tsconfig, jest.config.js, package.json etc. ]
  |-config_files                [ tsconfig, cdk.json, package.json etc. ]
  |-run-all-tests.sh
|-buildspec.yml
|-architecture.yml
|-CHANGELOG.md
|-CODE_OF_CONDUCT.md
|-LICENSE.txt
|-CONTRIBUTING.md
|-NOTICE.txt

Collection of operational metrics

This solution collects anonymous operational metrics to help AWS improve the quality and features of the solution. For more information, including how to disable this capability, please see the implementation guide.


Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Licensed under the Apache License Version 2.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is located at

http://www.apache.org/licenses/

or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions and limitations under the License.

See LICENSE

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].