Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SecOps - Client VPN in AWS using Terraform #69

Open
jaylong255 opened this issue Nov 13, 2024 · 2 comments
Open

SecOps - Client VPN in AWS using Terraform #69

jaylong255 opened this issue Nov 13, 2024 · 2 comments
Assignees

Comments

@jaylong255
Copy link
Member

jaylong255 commented Nov 13, 2024

AWS Client VPN is a fully managed service provided by Amazon Web Services (AWS) designed to allow remote users to securely access AWS resources and on-premises networks from any location using an OpenVPN-based VPN client. Here's a detailed look at AWS Client VPN:

Key Features and Concepts:

  • Secure Connectivity:

    • It provides a TLS-encrypted connection for users to access AWS resources or networks in your data center.
  • Managed Service:

    • AWS handles the deployment, management, and scaling of the VPN infrastructure, reducing the operational overhead of managing your own VPN servers.
  • Scalability:

    • Automatically scales based on user demand, which is beneficial for handling spikes in remote access without manual intervention.
  • Authentication:

    • Supports multiple authentication methods:
      • Mutual Authentication using certificates.
      • Active Directory Authentication for integration with existing AD setups.
      • Federated Authentication using SAML-based single sign-on (SSO).
  • Access Control:

    • Allows you to define granular access rules based on Active Directory groups or network-based access rules.
  • Ease of Use:

    • Users can connect using standard OpenVPN clients or AWS's provided client software for various operating systems like Windows, macOS, Linux, iOS, and Android.
  • Self-Service Portal:

    • Admins can enable a self-service portal where users can download the VPN client configuration or the latest client software.

How It Works:

  1. Client VPN Endpoint Creation:

    • You create a Client VPN endpoint in AWS, which acts as the central point for all VPN connections.
  2. Target Network Association:

    • Associate this endpoint with a VPC subnet to allow access to AWS resources or extend access to on-premises networks via VPC connectivity options like Direct Connect or VPN.
  3. Authorization Rules:

    • Define who can access what by setting up authorization rules. This could be network-based or user-based rules.
  4. Client Configuration:

    • Download or distribute the client configuration file, which includes details like the endpoint's DNS name and authentication certificates.
  5. Client Connection:

    • Users connect from their devices using the OpenVPN client software with the provided configuration file.
  6. Routing and Security:

    • Routes are configured to direct traffic to AWS resources or back to your on-premises network if required. Security groups and Network ACLs manage traffic flow.

Pricing:

  • Endpoint Charge: You're charged for the hours your Client VPN endpoint is active.
  • Connection Charge: There's an hourly fee for each active client connection.
  • Data Transfer: Standard AWS data transfer rates apply.

Use Cases:

  • Remote Workforce Access: Securely connect remote employees to corporate resources in AWS or on-premises.
  • Secure Application Access: Developers or third-party vendors might need secure access to development environments or applications hosted on AWS.
  • Compliance and Security: For industries where secure remote access to sensitive data is required.

AWS Client VPN simplifies the process of providing secure remote access, eliminating the need for organizations to manage VPN hardware or software themselves, while still offering the flexibility and control needed for secure, compliant network access.

@jaylong255 jaylong255 self-assigned this Nov 13, 2024
@jaylong255
Copy link
Member Author

image

@jaylong255
Copy link
Member Author

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant