Created: 2023-09-17 | Updated: 2024-09-21

Client VPN

New (v0.3.14)

Table of contents

  1. Node Type: client_vpn
  2. Rendering:
  3. Code Snippet:
  4. drawio client_vpn vertex:
  5. Advanced for Geeks:
    1. Style:
    2. Vertex size:
    3. Full XML dump:
    4. drawio file:

Node Type: client_vpn

Rendering:

lambda

Code Snippet:

# given
mcd = MultiCloudDiagrams()

# when
vpn_arn = 'aws:clientvpn:us-west-1:prod/cvpn-endpoint-0e3b'
vpn_name = 'vpc-client-vpn'
metadata = {
    'SplitTunnel': False,
    'DNSServer': '8.8.8.8',
    'VPNProtocol': 'openVPN',
    'Transport': 'UDP',
    'VPNPort': 443,
    'ClientCertificateARN': 'arn:aws:acm:us-west-1:123456789012:certificate/cd2e',
    'ServerCertificateARN': 'arn:aws:acm:us-west-1:123456789012:certificate/7d100',
    'Authentication type': 'certificate-authentication',
    'DNS Name': '*.cvpn-endpoint-0e3b.prod.clientvpn.us-west-1.amazonaws.com'
}
mcd.add_vertex(node_id=vpn_arn, node_name=vpn_name, node_type='client_vpn', metadata=metadata)

drawio client_vpn vertex:

<mxCell id="vertex:client_vpn:aws:clientvpn:us-west-1:prod/cvpn-endpoint-0e3b" parent="1" vertex="1">
    <mxGeometry width="78" height="78" as="geometry"/>
</mxCell>

Advanced for Geeks:

Style:

style="sketch=0;outlineConnect=0;gradientColor=#945DF2;gradientDirection=north;fillColor=#5A30B5;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=left;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.client_vpn;"
attributevalue
alignleft
aspectfixed
dashed0
fillColor#5A30B5
fontSize12
fontStyle0
gradientColor#945DF2
gradientDirectionnorth
html1
outlineConnect0
resIconmxgraph.aws4.client_vpn
shapemxgraph.aws4.resourceIcon
sketch0
strokeColor#ffffff
verticalAligntop
verticalLabelPositionbottom

Vertex size:

attributevalue
width78
height78

Full XML dump:

<mxfile host="multicloud-diagrams" agent="PIP package multicloud-diagrams. Generate resources in draw.io compatible format for Cloud infrastructure. Copyrights @ Roman Tsypuk 2023. MIT license." type="MultiCloud">
    <diagram id="diagram_1" name="AWS components">
        <mxGraphModel dx="1015" dy="661" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="1">
            <root>
                <mxCell id="0"/>
                <mxCell id="1" parent="0"/>
                <mxCell id="vertex:client_vpn:aws:clientvpn:us-west-1:prod/cvpn-endpoint-0e3b" value="&lt;b&gt;Name&lt;/b&gt;: vpc-client-vpn&lt;BR&gt;&lt;b&gt;ARN&lt;/b&gt;: aws:clientvpn:us-west-1:prod/cvpn-endpoint-0e3b&lt;BR&gt;-----------&lt;BR&gt;&lt;b&gt;SplitTunnel&lt;/b&gt;: False&lt;BR&gt;&lt;b&gt;DNSServer&lt;/b&gt;: 8.8.8.8&lt;BR&gt;&lt;b&gt;VPNProtocol&lt;/b&gt;: openVPN&lt;BR&gt;&lt;b&gt;Transport&lt;/b&gt;: UDP&lt;BR&gt;&lt;b&gt;VPNPort&lt;/b&gt;: 443&lt;BR&gt;&lt;b&gt;ClientCertificateARN&lt;/b&gt;: arn:aws:acm:us-west-1:123456789012:certificate/cd2e&lt;BR&gt;&lt;b&gt;ServerCertificateARN&lt;/b&gt;: arn:aws:acm:us-west-1:123456789012:certificate/7d100&lt;BR&gt;&lt;b&gt;Authentication type&lt;/b&gt;: certificate-authentication&lt;BR&gt;&lt;b&gt;DNS Name&lt;/b&gt;: *.cvpn-endpoint-0e3b.prod.clientvpn.us-west-1.amazonaws.com" style="sketch=0;outlineConnect=0;gradientColor=#945DF2;gradientDirection=north;fillColor=#5A30B5;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=left;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.client_vpn;" parent="1" vertex="1">
                    <mxGeometry width="78" height="78" as="geometry"/>
                </mxCell>
            </root>
        </mxGraphModel>
    </diagram>
</mxfile>

drawio file:

Download generated client_vpn.drawio:

Download