<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Andres Figueroa</title>
    <description>The latest articles on DEV Community by Andres Figueroa (@figueroaeandres).</description>
    <link>https://dev.to/figueroaeandres</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F693258%2F63df5dbe-ac84-4c43-9688-2c8b6bca4f10.jpg</url>
      <title>DEV Community: Andres Figueroa</title>
      <link>https://dev.to/figueroaeandres</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/figueroaeandres"/>
    <language>en</language>
    <item>
      <title>EC2 Lab: Launching an Instance in a Private Subnet (Private Access)</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Tue, 09 Dec 2025 00:23:52 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/ec2-lab-launching-an-instance-in-a-private-subnet-private-access-5d1e</link>
      <guid>https://dev.to/figueroaeandres/ec2-lab-launching-an-instance-in-a-private-subnet-private-access-5d1e</guid>
      <description>&lt;p&gt;Think of EC2 as your personal engine room in the cloud. It’s where ideas stop being just code on your laptop and become running workloads that power your architecture.&lt;/p&gt;

&lt;p&gt;With EC2 you don’t just “launch servers”—you decide how powerful they are, where they live, and how they connect. In a private subnet, your instances are shielded from the internet, accessible only through secure channels like &lt;strong&gt;bastion hosts&lt;/strong&gt; or &lt;strong&gt;AWS Systems Manager Session Manager&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Whether you’re running sensitive databases, internal services, or backend applications, EC2 private instances give you the control and protection to keep your workloads humming quietly behind the scenes.&lt;/p&gt;

&lt;p&gt;📌 &lt;strong&gt;Public Subnet?&lt;/strong&gt;  Your app is visible to the world. &lt;br&gt;
📌 &lt;strong&gt;Private Subnet?&lt;/strong&gt; Your workloads stay protected, humming quietly behind the scenes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 1: Define Tags and Select OS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; In the Name and tags section, define:&lt;br&gt;
&lt;strong&gt;-Name:&lt;/strong&gt; VM-Project-Private&lt;br&gt;
&lt;strong&gt;-Project:&lt;/strong&gt; demo&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz0n3ww7572xqjm07214l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz0n3ww7572xqjm07214l.png" alt="Name" width="800" height="313"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Tags help with auditing, cost tracking, and resource organization.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; In Application and OS Images, select:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Amazon Linux 2023 Kernel 6.1 AMI&lt;/li&gt;
&lt;li&gt;Architecture: 64-bit (x86)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1u771g8jr7ugqoydoiv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1u771g8jr7ugqoydoiv.png" alt="OS" width="776" height="175"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Amazon Linux is optimized for AWS, with extended support and solid performance.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 2: Instance Type and Key Pair&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Choose the instance type:&lt;br&gt;
t3.micro → 2 vCPUs, 1 GiB RAM, Free Tier eligible&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq2aqstp2csro4pufag0j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq2aqstp2csro4pufag0j.png" alt="Type" width="750" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Ideal for testing or lightweight workloads.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Select an existing PEM key pair:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Name:&lt;/strong&gt; vm-demo-project&lt;br&gt;
&lt;strong&gt;-Type:&lt;/strong&gt; RSA&lt;br&gt;
&lt;strong&gt;-Format:&lt;/strong&gt; .pem (compatible with OpenSSH)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjheuhalv3zg3a1482m4d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjheuhalv3zg3a1482m4d.png" alt="Key" width="800" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 This existing key pair will be used for SSH access if needed. Make sure you keep the .pem file stored securely.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 3: Network and Security Configuration (Private)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; Select your custom VPC:&lt;br&gt;
&lt;strong&gt;-VPC ID:&lt;/strong&gt; VPC-Demo-Project&lt;br&gt;
&lt;strong&gt;-Subnet:&lt;/strong&gt; subnet-b-private-project (20.0.4.0/24, zone us-east-1a)&lt;br&gt;
&lt;strong&gt;-Public IP:&lt;/strong&gt; Disabled&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc45e3mg6ymgmo9sn2sw8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc45e3mg6ymgmo9sn2sw8.png" alt="SB Private" width="800" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 The instance will be placed in a private subnet, without direct internet access.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; Configure the Security Group:&lt;br&gt;
&lt;strong&gt;Name:&lt;/strong&gt; demo-project-private&lt;br&gt;
&lt;strong&gt;Rule:&lt;/strong&gt; Nothing. Because it allow SSH only from the bastion host or via AWS Systems Manager Session.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgxqdonel64jwfpgicc2d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgxqdonel64jwfpgicc2d.png" alt="SG" width="800" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Secure access is restricted. No direct exposure to the internet.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 4: Storage Configuration&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7:&lt;/strong&gt; Configure the root volume:&lt;br&gt;
&lt;strong&gt;-Type:&lt;/strong&gt; gp3&lt;br&gt;
&lt;strong&gt;-Size:&lt;/strong&gt; 8 GiB&lt;br&gt;
&lt;strong&gt;-IOPS:&lt;/strong&gt; 3000&lt;br&gt;
&lt;strong&gt;-Encryption:&lt;/strong&gt; Enabled (recommended for private workloads)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F61ekhvottxjqv7t3kj11.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F61ekhvottxjqv7t3kj11.png" alt="Cnf" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 gp3 offers solid performance and is Free Tier eligible.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 5: IAM Role and Advanced Settings&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8:&lt;/strong&gt; Assign an IAM role:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AmazonSSMRoleForInstancesQuickSetup&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbt1lxifmin5k3kbljscb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbt1lxifmin5k3kbljscb.png" alt="Role" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Allows secure access via AWS Systems Manager (SSM) without SSH keys or public IPs.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9:&lt;/strong&gt; Configure advanced settings:&lt;br&gt;
&lt;strong&gt;- Hostname:&lt;/strong&gt; IP-based&lt;br&gt;
&lt;strong&gt;- DNS:&lt;/strong&gt; IPv4 enabled&lt;br&gt;
&lt;strong&gt;- Metadata:&lt;/strong&gt; version V2 with token required&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj0ph8nenojue01r11e39.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj0ph8nenojue01r11e39.png" alt="Conf" width="800" height="486"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Modern and secure configuration for automated management.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 6: Review and Launch&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 10:&lt;/strong&gt; In the summary screen, review:&lt;br&gt;
&lt;strong&gt;- AMI:&lt;/strong&gt; Amazon Linux 2023&lt;br&gt;
&lt;strong&gt;- Instance type:&lt;/strong&gt; t3.micro&lt;br&gt;
&lt;strong&gt;- Storage:&lt;/strong&gt; 8 GiB&lt;br&gt;
&lt;strong&gt;- Security Group:&lt;/strong&gt; private access only&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxnv3nz8tk5uk515nocs3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxnv3nz8tk5uk515nocs3.png" alt="Review" width="800" height="1058"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 Everything is ready to launch the instance.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 11:&lt;/strong&gt; Once checks are complete.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq13c3nv6rv2lkd38z4q0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq13c3nv6rv2lkd38z4q0.png" alt="Ec2" width="800" height="171"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;📌 The instance enters “initializing” state, which typically lasts 30 seconds to 2 minutes.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;-Confirm the instance is in Running state.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyleej2x7w8w3dx0eht9y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyleej2x7w8w3dx0eht9y.png" alt="ec2" width="800" height="171"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-Upon review, I noticed that the public IP is not enabled since the instance is running in private mode&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fesl1gj5dnbd8v3kst5uv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fesl1gj5dnbd8v3kst5uv.png" alt="no ip" width="800" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 12.&lt;/strong&gt; Connect via Session Manager&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click Connect.&lt;/li&gt;
&lt;li&gt;In the connection options, select Session Manager.&lt;/li&gt;
&lt;li&gt;Click Connect again.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmodgyb6msmc8k6w9e4z5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmodgyb6msmc8k6w9e4z5.png" alt="SSM" width="800" height="261"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 No public IP or SSH key is required — the connection is tunneled securely through SSM.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 13:&lt;/strong&gt; Confirm the Session&lt;br&gt;
-A terminal window opens directly in the AWS Console.&lt;br&gt;
-By default, you are logged in as the default system user (e.g., ssm-user).&lt;br&gt;
-If needed, you can elevate privileges:&lt;br&gt;
&lt;em&gt;sudo su&lt;/em&gt;&lt;br&gt;
-Now you are operating as root inside the private EC2 instance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8am7zrojwfotodd1f9p3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8am7zrojwfotodd1f9p3.png" alt="terminal" width="800" height="110"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzb2eneivvlbfl5gn9qcx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzb2eneivvlbfl5gn9qcx.png" alt="terminal2" width="800" height="97"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Advantages of SSM over Public SSH&lt;/strong&gt;:&lt;br&gt;
&lt;strong&gt;-No public IP exposure&lt;/strong&gt; → Reduces attack surface.&lt;br&gt;
&lt;strong&gt;-No need to manage SSH keys&lt;/strong&gt; → Access is controlled via IAM policies.&lt;br&gt;
&lt;strong&gt;-Auditing and logging&lt;/strong&gt; → All sessions can be logged in CloudWatch or S3.&lt;br&gt;
&lt;strong&gt;-Granular permissions&lt;/strong&gt; → Restrict who can start sessions.&lt;/p&gt;

&lt;p&gt;🧠 &lt;strong&gt;Final Reflection&lt;/strong&gt;&lt;br&gt;
Using &lt;strong&gt;Session Manager&lt;/strong&gt; is the recommended way to connect to private EC2 instances. It eliminates the need for bastion hosts or open SSH ports, while providing secure, auditable, and role‑based access.&lt;/p&gt;

&lt;p&gt;👉 This complements your earlier tutorial on public EC2 access. Now you can publish this as the “EC2 Private” continuation post, showing best practices for secure architectures.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>private</category>
    </item>
    <item>
      <title>Public EC2 SSH Access with MobaXterm: Step‑by‑Step Guide</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Mon, 08 Dec 2025 22:36:07 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/public-ec2-ssh-access-with-mobaxterm-step-by-step-guide-12d3</link>
      <guid>https://dev.to/figueroaeandres/public-ec2-ssh-access-with-mobaxterm-step-by-step-guide-12d3</guid>
      <description>&lt;p&gt;Connecting to an EC2 instance doesn’t have to be complicated. This tutorial walks you through how to establish a secure SSH connection to a public EC2 instance using MobaXterm, with clear steps and best practices.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overview:&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;- Goal:&lt;/strong&gt; Connect via SSH to an EC2 instance with a public IP using a .pem key in MobaXterm.&lt;br&gt;
&lt;strong&gt;- Approach:&lt;/strong&gt; Simple steps, no CLI required — perfect for demos or quick tests.&lt;br&gt;
&lt;strong&gt;- Best practices:&lt;/strong&gt; Security group rules and correct username depending on the AMI.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step‑by‑Step with MobaXterm&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Step 1.&lt;/strong&gt; Open MobaXterm Launch MobaXterm (Portable or installed) to access the main panel.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhjjievzs5zy3nykkuzr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhjjievzs5zy3nykkuzr.png" alt="MobaXterm" width="800" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2.&lt;/strong&gt; Create a new session Click Session → SSH to start configuring the connection.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff0amg80dbs35ptqfbt45.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff0amg80dbs35ptqfbt45.png" alt="moba" width="800" height="485"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3.&lt;/strong&gt; Configure host and user&lt;br&gt;
&lt;strong&gt;- Host:&lt;/strong&gt; Enter the EC2 public IP or Elastic IP.&lt;br&gt;
&lt;strong&gt;- Username:&lt;/strong&gt; Use the correct AMI user (e.g., ec2-user for Amazon Linux, ubuntu for Ubuntu).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9ilklnjeug1djfafbk9d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9ilklnjeug1djfafbk9d.png" alt="ssh" width="800" height="211"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4.&lt;/strong&gt; Load the private key (.pem)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Check Use private key and select your .pem file.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;- Tip:&lt;/strong&gt; MobaXterm usually accepts .pem directly. If not, convert to .ppk with PuTTYgen.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9svf85jjr0u1r1ve3o3i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9svf85jjr0u1r1ve3o3i.png" alt="key" width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5.&lt;/strong&gt; Name the session (optional) In Bookmark settings, give the session a descriptive name (e.g., “EC2‑Prod‑VA”).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft2pl4yd1idj0fyxvh2jc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft2pl4yd1idj0fyxvh2jc.png" alt="name" width="800" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6.&lt;/strong&gt; Accept the host fingerprint On first connection, MobaXterm will show the host key fingerprint. Click Accept to trust the server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftpq64lzo0yg57fbysit1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftpq64lzo0yg57fbysit1.png" alt="accept" width="800" height="354"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7.&lt;/strong&gt; Connect and verify Click OK/Connect. Once inside, run whoami and hostname to confirm access.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flq4jk522t6xdz6dgj1jp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flq4jk522t6xdz6dgj1jp.png" alt="connect" width="800" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quick Troubleshooting&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Permission denied (publickey): Check the correct SSH Username and ensure the .pem matches the instance key pair.&lt;/li&gt;
&lt;li&gt;Timeout: Verify port 22 is open in the Security Group and that the instance has a public IP.&lt;/li&gt;
&lt;li&gt;Wrong user: Adjust the username according to the AMI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Best Practices&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Restrict port 22 to your IP only — avoid 0.0.0.0/0 in production.&lt;/li&gt;
&lt;li&gt;Use Elastic IPs for stable addressing.&lt;/li&gt;
&lt;li&gt;Name your sessions in MobaXterm for clarity across environments.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✅ With these steps, connecting to a public EC2 instance using MobaXterm is straightforward, secure, and repeatable for demos or production environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;⚠️ Note on Public EC2 Instances&lt;/strong&gt;&lt;br&gt;
Connecting to a public EC2 instance is useful for demos and quick tests, but it’s not recommended for production. Public IPs expose your server directly to the internet, which increases security risks if not managed properly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✅ Best Practice:&lt;/strong&gt; Use private subnets, bastion hosts, or AWS Systems Manager Session Manager for secure access.&lt;/p&gt;

&lt;p&gt;👉 In my next post, I’ll cover how to connect to an &lt;strong&gt;EC2 Private Instance&lt;/strong&gt;, following best practices for secure architectures.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>public</category>
    </item>
    <item>
      <title>AWS Interconnect (Preview): Private Multicloud Connectivity Between AWS and Google Cloud</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Mon, 08 Dec 2025 17:30:00 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/aws-interconnect-preview-private-multicloud-connectivity-between-aws-and-google-cloud-1bi3</link>
      <guid>https://dev.to/figueroaeandres/aws-interconnect-preview-private-multicloud-connectivity-between-aws-and-google-cloud-1bi3</guid>
      <description>&lt;p&gt;🌐 AWS has just introduced Interconnect (Preview), a service that allows you to link workloads between AWS and Google Cloud through private, fast, and secure connections, without the need for physical hardware or complex router configurations.&lt;/p&gt;

&lt;p&gt;🔹 Direct connectivity through AWS’s global private network &lt;br&gt;
🔹 Built-in security with MACsec encryption &lt;br&gt;
🔹 Full visibility with latency, packet loss, and bandwidth metrics in CloudWatch &lt;br&gt;
🔹 Initial availability in us-east-1 and us-west-2 (Azure support coming in 2026)&lt;/p&gt;

&lt;p&gt;💡 Key benefit: During the Public Preview phase, AWS offers a 1 Gbps private connection at no cost, making it easy to test and validate the service before moving to production.&lt;/p&gt;

&lt;p&gt;This is a great opportunity for companies operating in multiple clouds to simplify management, reduce infrastructure complexity, and ensure enterprise-grade security.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1b1aeqoxeoxl49fpp0sp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1b1aeqoxeoxl49fpp0sp.png" alt="AWS" width="800" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>networking</category>
    </item>
    <item>
      <title>Amazon EC2: Launching Your First Instance from the Console (Public Access)</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Sun, 16 Nov 2025 02:27:50 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/amazon-ec2-scalable-compute-at-your-command-305d</link>
      <guid>https://dev.to/figueroaeandres/amazon-ec2-scalable-compute-at-your-command-305d</guid>
      <description>&lt;p&gt;Think of EC2 as your personal engine room in the cloud. It’s where ideas stop being just code on your laptop and become running applications, websites, or services that anyone can reach. &lt;br&gt;
With EC2 you don’t just “launch servers”—you gain the freedom to choose how powerful they are, where they live, and how they connect. Whether you need a tiny test machine or a fleet of high‑performance instances, EC2 scales with you.&lt;/p&gt;

&lt;p&gt;📌 Public subnet? Your app is out there, visible to the world. &lt;br&gt;
📌 Private subnet? Your workloads stay protected, humming quietly behind the scenes.&lt;/p&gt;

&lt;h2&gt;
  
  
  EC2 Lab: Stages and Detailed Steps with Visual Explanations
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Stage 1: Define Tags and Select OS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; In the Name and tags section, you define:&lt;br&gt;
-Name: VM-Project&lt;br&gt;
-Project: demo &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyu8oxcahphz3iregnppw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyu8oxcahphz3iregnppw.png" alt=" " width="777" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9valezwitc3ojzele7ky.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9valezwitc3ojzele7ky.png" alt=" " width="800" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7z2qocjx46lpf76xr418.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7z2qocjx46lpf76xr418.png" alt=" " width="800" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foiwxn4lv5nqhf65b9qcj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foiwxn4lv5nqhf65b9qcj.png" alt=" " width="720" height="578"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Tags help with auditing, cost tracking, and resource organization.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; In Application and OS Images, you select:&lt;br&gt;
-Amazon Linux 2023 Kernel 6.1 AMI&lt;br&gt;
-Architecture: 64-bit (x86) &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1u771g8jr7ugqoydoiv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1u771g8jr7ugqoydoiv.png" alt=" " width="776" height="175"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Amazon Linux is optimized for AWS, with extended support and solid performance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 2: Instance Type and Key Pair&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; You choose the instance type:&lt;br&gt;
-t3.micro → 2 vCPUs, 1 GiB RAM, Free Tier eligible &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq2aqstp2csro4pufag0j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq2aqstp2csro4pufag0j.png" alt=" " width="750" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Ideal for testing or lightweight workloads.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; You create a new PEM key pair:&lt;br&gt;
-Name: vm-demo-project&lt;br&gt;
-Type: RSA&lt;br&gt;
-Format: .pem (compatible with OpenSSH) &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwq8n9kpsfklexkdskt5n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwq8n9kpsfklexkdskt5n.png" alt=" " width="380" height="367"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 This key is required for SSH access. Store it securely.&lt;/p&gt;

&lt;h2&gt;
  
  
  Stage 3: Network and Security Configuration
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; You select your custom VPC:&lt;br&gt;
-VPC ID: VPC-Demo-Project&lt;br&gt;
-Subnet: subnet-a-public-project (20.0.1.0/24, zone us-east-1a)&lt;br&gt;
-Public IP: enabled &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi97komowc8nzx975stbh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi97komowc8nzx975stbh.png" alt=" " width="606" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 The instance will be placed in a public subnet with internet access.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; You configure the Security Group:&lt;br&gt;
-Name: demo-project&lt;br&gt;
-Rule: allow SSH from your IP (38.255.158.79/32) &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Finkxm9zmxjjle2qokvil.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Finkxm9zmxjjle2qokvil.png" alt=" " width="800" height="283"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Secure remote access restricted to your IP.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 4: Storage Configuration&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7:&lt;/strong&gt; You configure the root volume:&lt;br&gt;
-Type: gp3&lt;br&gt;
-Size: 8 GiB&lt;br&gt;
-IOPS: 3000&lt;br&gt;
-Encryption: not enabled &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F61ekhvottxjqv7t3kj11.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F61ekhvottxjqv7t3kj11.png" alt=" " width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 gp3 offers solid performance and is Free Tier eligible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 5: IAM Role and Advanced Settings&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8:&lt;/strong&gt; You assign an IAM role:&lt;br&gt;
-AmazonSSMRoleForInstancesQuickSetup &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe1rsts43o98y29dd39qo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe1rsts43o98y29dd39qo.png" alt=" " width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Allows secure access via AWS -Systems Manager (SSM) without SSH keys.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9&lt;/strong&gt;: You configure advanced settings:&lt;br&gt;
-Hostname: IP-based&lt;br&gt;
-DNS: IPv4 enabled&lt;br&gt;
-Termination protection: disabled&lt;br&gt;
-Metadata: version V2 with token required &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frjekzsomkz3qi8hut1b4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frjekzsomkz3qi8hut1b4.png" alt=" " width="542" height="554"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Modern and secure configuration for automated management.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 6: Review and Launch&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 10:&lt;/strong&gt; In the summary screen, you review:&lt;br&gt;
-AMI: Amazon Linux 2023&lt;br&gt;
-Instance type: t3.micro&lt;br&gt;
-Storage: 8 GiB&lt;br&gt;
-Security Group: newly created &lt;/p&gt;

&lt;p&gt;📌 Everything is ready to launch the instance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 11:&lt;/strong&gt; You click Launch instance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6394nxj2zmnvrcm6b493.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6394nxj2zmnvrcm6b493.png" alt=" " width="601" height="809"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F62d6sazpehkdj4ygu6y2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F62d6sazpehkdj4ygu6y2.png" alt=" " width="800" height="144"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 The instance enters “initializing” state, which typically lasts 30 seconds to 2 minutes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stage 7: Validation and Monitoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 12:&lt;/strong&gt; The instance appears as Running:&lt;br&gt;
-Name: VM-Project&lt;br&gt;
-ID: i-0f467eccaf0dfe8a0&lt;br&gt;
-Zone: us-east-1a&lt;br&gt;
-State: Initializing &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgo4mr4h63viojvjc722j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgo4mr4h63viojvjc722j.png" alt=" " width="800" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 The instance is active but still completing health checks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 13:&lt;/strong&gt; Once checks are complete:&lt;br&gt;
-Status: 3/3 checks passed &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwmjx90j6q1hfeqacdfil.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwmjx90j6q1hfeqacdfil.png" alt=" " width="800" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftg914j6jx1kikzt6ekvh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftg914j6jx1kikzt6ekvh.png" alt=" " width="759" height="221"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcaly6i6fwppvkxebjutf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcaly6i6fwppvkxebjutf.png" alt=" " width="800" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ves08wi6qddi0s04zhf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ves08wi6qddi0s04zhf.png" alt=" " width="800" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx96lpw7p8eqt0cagqhcb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx96lpw7p8eqt0cagqhcb.png" alt=" " width="800" height="192"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 The instance is fully operational.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧠 Final Reflection&lt;/strong&gt;&lt;br&gt;
Amazon EC2 is where your architecture comes to life. It’s not just a server—it’s your design running, scaling, and responding in real time. From public-facing apps to private workloads, EC2 is the pulse of your cloud.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>security</category>
      <category>networking</category>
    </item>
    <item>
      <title>AWS VPC: Security and Control from Scratch</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Sat, 15 Nov 2025 13:59:15 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/aws-vpc-security-and-control-from-scratch-39ml</link>
      <guid>https://dev.to/figueroaeandres/aws-vpc-security-and-control-from-scratch-39ml</guid>
      <description>&lt;h2&gt;
  
  
  VPC Lab: Practical Fundamentals of Cloud Networking
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv5ckdnrl0tjaqmf1mapn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv5ckdnrl0tjaqmf1mapn.png" alt="VPC Diagram" width="599" height="507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Virtual Private Clouds (VPCs) are the heart of any architecture on AWS.&lt;br&gt;
&lt;strong&gt;They are not just virtual networks:&lt;/strong&gt; They are the foundation of the security, control, and scalability of your solutions.&lt;/p&gt;

&lt;p&gt;In this lab, you will learn to design and deploy a VPC from scratch, understanding each architectural decision and its impact on cost, security, and performance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;VPC Lab: Practical Fundamentals of Cloud Networking&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 1: From the AWS console, click on VPC to start building a new network.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; From the AWS console, click on VPC to start building a new network.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F18tespxoaw9055xfnu2u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F18tespxoaw9055xfnu2u.png" alt="VPC" width="800" height="145"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Define the IPv4 CIDR block: 20.0.0.0/16.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdq92yac6r4spjtougqbf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdq92yac6r4spjtougqbf.png" alt="2" width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Configure public and private subnets across different Availability Zones:&lt;br&gt;
-Public Subnet A → Zone us-east-1a → 20.0.1.0/24&lt;br&gt;
-Public Subnet B → Zone us-east-1b → 20.0.2.0/24&lt;br&gt;
-Private Subnet A → Zone us-east-1a → 20.0.4.0/24&lt;br&gt;
-Private Subnet B → Zone us-east-1b → 20.0.3.0/24&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3lcmqgofvm1pc87jkg1x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3lcmqgofvm1pc87jkg1x.png" alt="3" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 This establishes the foundation of your network, with a clear separation between public and private resources.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 2: Tagging and Governance&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Create tags such as Owner, Project, etc.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyj2dldizszvrfra5huv5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyj2dldizszvrfra5huv5.png" alt="4" width="800" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Tags are essential for auditing, cost tracking, and resource management.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 3: Initial Validation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; The wizard shows the creation process as successful.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6amr71wjziw4upcf27ss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6amr71wjziw4upcf27ss.png" alt="5" width="800" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; Review the public and private subnets created along with their IP ranges.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftwg6x8nzpcf5b9vkuqnz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftwg6x8nzpcf5b9vkuqnz.png" alt="6" width="800" height="140"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 You confirm that the basic infrastructure is active and available.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 4: Route Tables&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7:&lt;/strong&gt; Open the Route Table for the public subnet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc030v1x7y4ov8swruhzb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc030v1x7y4ov8swruhzb.png" alt="7" width="800" height="295"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 It has its own table named Public.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8:&lt;/strong&gt; Open the Route Table for the private subnet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faxffpfv2w5vycteub24p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faxffpfv2w5vycteub24p.png" alt="8" width="800" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Create a table named Private and associate it with the private subnets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; This separates public and private traffic for better control.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 5: Internet Gateway (IGW)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9:&lt;/strong&gt; Create an Internet Gateway (IGW) to enable internet access.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh10idivtc254upg4e885.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh10idivtc254upg4e885.png" alt="9" width="800" height="269"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 10:&lt;/strong&gt; Confirm the IGW was created successfully.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl0ru1jck0ham7e1lo7z8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl0ru1jck0ham7e1lo7z8.png" alt="10" width="800" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 11:&lt;/strong&gt; In the Public route table, add a route:&lt;br&gt;
Destination: 0.0.0.0/0&lt;br&gt;
Target: the IGW you created&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8w8tahm2l42pjorteqh9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8w8tahm2l42pjorteqh9.png" alt="11" width="800" height="241"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6nx2k9f8c6rrb68jtdlj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6nx2k9f8c6rrb68jtdlj.png" alt="111" width="800" height="182"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frxzn33auqj5hee8jx34h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frxzn33auqj5hee8jx34h.png" alt="1111" width="800" height="165"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 Public subnets now have direct access to the internet.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 6: NAT Gateway&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 12:&lt;/strong&gt; For private subnets, you need controlled internet access.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzftjex2xcnr8ggs33we5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzftjex2xcnr8ggs33we5.png" alt="12" width="800" height="108"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 13:&lt;/strong&gt; Create a NAT Gateway in a public subnet:&lt;br&gt;
-Select the public subnet (us-east-1a or us-east-1b).&lt;br&gt;
-Allocate and assign an Elastic IP.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feepcmbz5la38rtxw5fr5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feepcmbz5la38rtxw5fr5.png" alt="13" width="800" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 14:&lt;/strong&gt; Confirm the NAT Gateway is created and available.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhsdf4o70fjn7ggtwfxb1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhsdf4o70fjn7ggtwfxb1.png" alt="14" width="800" height="112"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 The &lt;strong&gt;NAT Gateway&lt;/strong&gt; allows private instances to reach the internet without being exposed.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 7: Configuring Private Routes&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 15:&lt;/strong&gt; In the Private route table, add a route:&lt;br&gt;
&lt;strong&gt;-Destination:&lt;/strong&gt; 0.0.0.0/0&lt;br&gt;
&lt;strong&gt;-Target:&lt;/strong&gt; the NAT Gateway you created.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsueg5mo79khnoo1mphlt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsueg5mo79khnoo1mphlt.png" alt="15" width="800" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22in55929b1uddtodm84.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22in55929b1uddtodm84.png" alt="16" width="800" height="176"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 16:&lt;/strong&gt; Save the changes and verify the new route is active.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fll7iibk1esqvf4ebgcsp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fll7iibk1esqvf4ebgcsp.png" alt="17" width="800" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📌 &lt;strong&gt;Private subnets&lt;/strong&gt; now have secure &lt;strong&gt;outbound internet access&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 8: Final Validation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 17:&lt;/strong&gt; Review the route tables:&lt;br&gt;
-Public → local + IGW&lt;br&gt;
-Private → local + NAT&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 18:&lt;/strong&gt; Confirm that all subnets are in Available state and correctly associated.&lt;/p&gt;

&lt;p&gt;📌 Your architecture is complete: public for direct access, private for secure backend with controlled internet connectivity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🌟 Conclusion&lt;/strong&gt;&lt;br&gt;
You’ve built a segmented and secure VPC with:&lt;br&gt;
-Public and private subnets across two Availability Zones.&lt;br&gt;
-An Internet Gateway for public subnet access.&lt;br&gt;
-A NAT Gateway for controlled private subnet access.&lt;br&gt;
-Separate and properly configured route tables.&lt;br&gt;
-Tags for auditing and governance.&lt;/p&gt;

&lt;p&gt;🧠 &lt;strong&gt;Final Reflection&lt;/strong&gt;&lt;br&gt;
Building a VPC with public and private subnets, an Internet Gateway, and a NAT Gateway is more than just a technical exercise—it’s about designing secure, scalable foundations for cloud workloads. By separating traffic flows and applying clear governance, you ensure resilience and control, while enabling your applications to grow with confidence.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>networking</category>
      <category>security</category>
      <category>architecture</category>
    </item>
    <item>
      <title>IAM: Prioritizing Security Is More Than a Method</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Sun, 09 Nov 2025 04:16:04 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/laboratorio-iam-creacion-segura-de-cuenta-root-y-usuario-iam-administrator-en-aws-49a3</link>
      <guid>https://dev.to/figueroaeandres/laboratorio-iam-creacion-segura-de-cuenta-root-y-usuario-iam-administrator-en-aws-49a3</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Secure Creation of Root Account and IAM Administrator User in AWS&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Delegating with Security: The Initial Flow in AWS IAM&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqbndn270f54fyz81vztf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqbndn270f54fyz81vztf.png" alt="Diagrama IAM" width="779" height="294"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This diagram is not just a set of technical steps. It reflects how to start properly in AWS: with intention, with security, and by following best practices.&lt;/p&gt;

&lt;p&gt;Everything begins with the &lt;strong&gt;Root user&lt;/strong&gt;, the master access that should never be used for daily operations. We protect it with &lt;strong&gt;MFA&lt;/strong&gt; because it is the most sensitive point. Then, we delegate. We create a user called &lt;strong&gt;IAM-Administrator&lt;/strong&gt;, who will actually manage the environment. Separated from Root, with well-defined privileges, and also with &lt;strong&gt;MFA enabled.&lt;/strong&gt; Because even the most privileged users must operate under double verification.&lt;/p&gt;

&lt;p&gt;This diagram represents a conscious decision: it’s not just about connecting, but about delegating with confidence, protecting our account, and auditing with clarity.&lt;/p&gt;

&lt;p&gt;A secure architecture begins not with commands, but with criteria.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IAM Lab: Secure Creation of Root Account and IAM Administrator User in AWS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;🔐&lt;strong&gt;Stage 1: Initial Setup of the Root Account&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; Create a new Root account using a valid email.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://signin.aws.amazon.com/signup?request_type=register" rel="noopener noreferrer"&gt;https://signin.aws.amazon.com/signup?request_type=register&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk9m2xkz11m2pfo1w3tdk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk9m2xkz11m2pfo1w3tdk.png" alt="Account" width="800" height="670"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93e51yi8mrszz2s0h0sc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93e51yi8mrszz2s0h0sc.png" alt="Creacion de cuenta Root" width="800" height="576"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Define secure credentials known only to the Root user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpwl5cmzwtgvcelx28kzr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpwl5cmzwtgvcelx28kzr.png" alt="Credenciales-Cuenta-Root" width="594" height="571"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Select a payment plan (avoid the free plan to enable full access to services).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa15xsrswvif1zsw7eqgy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa15xsrswvif1zsw7eqgy.png" alt="Pago-Cuenta-Root" width="574" height="750"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Complete personal details for the Root account holder.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faagonuavys5u5z9cqabg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faagonuavys5u5z9cqabg.png" alt=" " width="425" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; Register a valid credit or debit card to activate the account.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fam5lsazivggwy4ndwj6l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fam5lsazivggwy4ndwj6l.png" alt="Tarjeta-Datos-Cuenta-Root" width="470" height="662"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6:&lt;/strong&gt; Verify identity via a code sent to the associated email.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fik81w93walo3wtoqwbl1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fik81w93walo3wtoqwbl1.png" alt="Identidad-Cuenta-Rot" width="663" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7:&lt;/strong&gt; Once validated, access the billing console to confirm account activation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvaucsejgj7s6twigeh27.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvaucsejgj7s6twigeh27.png" alt="IAM-Cuenta-Root" width="800" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔐 &lt;strong&gt;Stage 2: Enabling MFA on the Root Account&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8:&lt;/strong&gt; In the IAM console, notice the security alert recommending MFA activation. Select “Add MFA.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1itsfz4cpyfvs4qgh9cc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1itsfz4cpyfvs4qgh9cc.png" alt="MFA-Alerta" width="800" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9:&lt;/strong&gt; Choose the authentication method:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F62i794jcysmgrrh5tasx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F62i794jcysmgrrh5tasx.png" alt="MFA" width="623" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Passkey or Security Key:&lt;/strong&gt; A physical device connected via USB or NFC.&lt;br&gt;
&lt;strong&gt;-Authenticator App:&lt;/strong&gt; A mobile app (e.g., Google Authenticator) that generates temporary codes.&lt;br&gt;
&lt;strong&gt;-Hardware TOTP Token:&lt;/strong&gt; A physical key that displays one-time codes offline.&lt;/p&gt;

&lt;p&gt;In this lab, we select &lt;strong&gt;Authenticator App.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 10:&lt;/strong&gt; Scan the QR code with the Authenticator app and enter the temporary codes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7lhdsyvj4vq092xflfmn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7lhdsyvj4vq092xflfmn.png" alt="MFA-APP" width="800" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 11:&lt;/strong&gt; Confirm successful MFA activation on the Root account.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpcvsnkzdbprpy0zbfe2g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpcvsnkzdbprpy0zbfe2g.png" alt="MFA-Exit" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F96jovt8807988qc9to1k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F96jovt8807988qc9to1k.png" alt="MFA Done" width="649" height="415"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👤 &lt;strong&gt;Stage 3: Creating the IAM Administrator User&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 12:&lt;/strong&gt; Create a new IAM user to delegate administration, following the principle of not operating directly with Root.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhovs0tor92xwqbdkz2a0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhovs0tor92xwqbdkz2a0.png" alt="User" width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 13:&lt;/strong&gt; Assign the name IAM-Administrator to the new user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fevuqmhpti3rpne5yo1vl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fevuqmhpti3rpne5yo1vl.png" alt="Create-User" width="800" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 14:&lt;/strong&gt; Attach the AdministratorAccess policy, granting full permissions over AWS services.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2darqmn85gdai91wyzqb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2darqmn85gdai91wyzqb.png" alt="Polic-User" width="800" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 15:&lt;/strong&gt; Add tags for traceability and governance, for example:&lt;br&gt;
&lt;strong&gt;-Owner:&lt;/strong&gt; Root&lt;br&gt;
&lt;strong&gt;-Project:&lt;/strong&gt; Administrator&lt;br&gt;
&lt;strong&gt;-MFAEnabled:&lt;/strong&gt; Yes&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8xgk1rrl5p0yialbb8zb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8xgk1rrl5p0yialbb8zb.png" alt="Tag" width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 16:&lt;/strong&gt; Confirm successful creation of the IAM Administrator user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9w1uh6hmymdla7r8y68v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9w1uh6hmymdla7r8y68v.png" alt="User-Done" width="800" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En otra ventana posterior, nos enfocaremos en el Usuario Administrator.&lt;/p&gt;

&lt;p&gt;🔑 &lt;strong&gt;Stage 4: Access and Configuration of the IAM Administrator User&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 17:&lt;/strong&gt; Sign in with the new IAM Administrator user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgpvhc3h2tzmshpqe81h6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgpvhc3h2tzmshpqe81h6.png" alt="Access-User" width="800" height="594"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 18:&lt;/strong&gt; Set a secure password that complies with AWS guidelines.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftvk10vepk0mm6zxjykbm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftvk10vepk0mm6zxjykbm.png" alt="Passwor-User" width="455" height="715"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 19:&lt;/strong&gt; Confirm successful login with the new credentials.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwk4x9azc7qq0o7fl8aux.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwk4x9azc7qq0o7fl8aux.png" alt="Done-User" width="369" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 20:&lt;/strong&gt; Access the IAM service to continue security configuration.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgz2m6vlkaacse8lil9iq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgz2m6vlkaacse8lil9iq.png" alt="IAM-User" width="800" height="240"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 21:&lt;/strong&gt; Notice the alert recommending MFA activation for the IAM user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4h9n545wpp5c5rpf5q6y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4h9n545wpp5c5rpf5q6y.png" alt="Alerta-MFA" width="800" height="444"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 22:&lt;/strong&gt; Repeat the MFA activation process using the Authenticator app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F954lh2he4yk15rowmprz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F954lh2he4yk15rowmprz.png" alt="MFA-User" width="800" height="474"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 23:&lt;/strong&gt; Scan the QR code and enter the generated temporary codes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff9fxd8snh11k4s0ttd8r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff9fxd8snh11k4s0ttd8r.png" alt="Authenticator-MFA-User" width="800" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 24:&lt;/strong&gt; Confirm successful MFA activation for the IAM Administrator user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkgekfenh3yquf289wmk3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkgekfenh3yquf289wmk3.png" alt="Done-MFA-User" width="800" height="399"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 25:&lt;/strong&gt; Validate that the user complies with the established security policies.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvfidda2w0mt9nwpdmapt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvfidda2w0mt9nwpdmapt.png" alt="Dashboard-User" width="800" height="314"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 26:&lt;/strong&gt; Verify that the IAM Administrator user was created correctly from the Root account and is ready to operate securely.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filzgl7s69pvhfrqckrvq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filzgl7s69pvhfrqckrvq.png" alt="Administrator" width="800" height="256"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  🧠 &lt;strong&gt;Final Reflection&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This flow not only follows AWS security best practices, but also establishes a solid foundation for any cloud architecture. &lt;br&gt;
&lt;strong&gt;Delegating, protecting, and tagging&lt;/strong&gt; are actions that define a conscious architect.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>iam</category>
      <category>architecture</category>
      <category>security</category>
    </item>
    <item>
      <title>Is the Cloud a Solution or a Hidden Risk?</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Wed, 29 Oct 2025 22:25:39 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/-3j39</link>
      <guid>https://dev.to/figueroaeandres/-3j39</guid>
      <description>&lt;p&gt;From my perspective, when AWS and Azure fail almost at the same time, we realize that the cloud also has gray days.&lt;/p&gt;

&lt;p&gt;🔴** Is the cloud a solution or a hidden risk?**&lt;/p&gt;

&lt;p&gt;In less than 10 days, two tech giants faced outages that disrupted critical services worldwide:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On October 20:&lt;/strong&gt; AWS experienced a major disruption in the US-EAST-1 region due to DNS issues, impacting EC2, Lambda, DynamoDB, and other key services.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On October 29:&lt;/strong&gt; Azure suffered an outage in its Front Door service, affecting Microsoft 365, Xbox, Intune, and even banks like BCP and Interbank in Peru.&lt;/p&gt;

&lt;p&gt;🤔 These incidents force us to rethink how we view the cloud. We are so focused on the cloud solving our problems that we forget to** design for when it fails**. It’s not enough to build scalable architectures or pay for “High Availability.”&lt;/p&gt;

&lt;p&gt;✍ What we need &lt;strong&gt;is a resilience mindset—where distributed architecture, fault tolerance, and disaster recovery are part of the design,&lt;/strong&gt; not just a patch.&lt;/p&gt;

&lt;p&gt;💡 So, what are we doing to prepare for the inevitable? Do we still believe that “everything in the cloud” is enough? Or should we start talking about fault-tolerant architectures, automated recovery, multi-regional distribution, and real continuity testing?&lt;/p&gt;

&lt;p&gt;The cloud is not the final destination—it’s part of the journey. And like any journey, it can have interruptions.ticles/mb34ouwkltktxrab8tti.png)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>𝐖𝐡𝐲 𝐰𝐨𝐮𝐥𝐝 𝐚 𝐜𝐥𝐨𝐮𝐝 𝐚𝐫𝐜𝐡𝐢𝐭𝐞𝐜𝐭 𝐠𝐨 𝐛𝐚𝐜𝐤 𝐭𝐨 𝐭𝐡𝐞 𝐛𝐞𝐠𝐢𝐧𝐧𝐢𝐧𝐠?</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Sun, 07 Sep 2025 06:57:30 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/-5agh</link>
      <guid>https://dev.to/figueroaeandres/-5agh</guid>
      <description>&lt;p&gt;After some time working on cloud architectures and implementations in AWS, leading projects in regulated sectors, I made a decision that might seem contradictory: &lt;strong&gt;Going Back to the Beginning&lt;/strong&gt;. Yes, I chose to revisit my foundations through the AWS Certified Cloud Practitioner.&lt;/p&gt;

&lt;p&gt;Not because of a lack of technical knowledge. Not because of external pressure. But for something deeper: to reorganize my experience, reconnect with core concepts, and translate what I know into a language that resonates with those just starting out.&lt;/p&gt;

&lt;p&gt;Along the way, I’ve discovered that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Understanding basic services like IAM from scratch pushes me to reassess cloud security with clarity.&lt;/li&gt;
&lt;li&gt;Reviewing virtual machines, storage, and databases helps me teach through real-world examples, not jargon.&lt;/li&gt;
&lt;li&gt;Studying Pricing and Billing connects me with FinOps and strategic decision-making.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Going back to the beginning isn’t a step backward. It’s rebuilding with purpose, humility, and a vision for impact.&lt;/p&gt;

&lt;p&gt;I’m exploring this path through the end of the year, sharing whatever comes up: hands-on practices, open reflections, and insights I find useful.&lt;/p&gt;

&lt;p&gt;If you’re starting out in AWS, or if you’re reorganizing your own cloud journey, maybe something I share will be helpful.&lt;/p&gt;

&lt;p&gt;There’s no fixed schedule or big promises. Just a genuine desire to build from what’s real. And if I pause at any point, that too will be part of the process. Because this isn’t about perfection—maybe it’s about honest evolution.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>AWS en la vida Real - Primeros Pasos: RAM &amp; Transit Gateway</title>
      <dc:creator>Andres Figueroa</dc:creator>
      <pubDate>Sun, 02 Oct 2022 05:43:52 +0000</pubDate>
      <link>https://dev.to/figueroaeandres/ram-transit-gateway-529g</link>
      <guid>https://dev.to/figueroaeandres/ram-transit-gateway-529g</guid>
      <description>&lt;p&gt;Hola a todos&lt;/p&gt;

&lt;p&gt;En este blog, tiene como finalidad entender el funcionamiento del Transit Gateway AWS que nos permite realizar comunicación entre cuentas diferentes utilizando el servicio de RAM, en la cuenta Master con la finalidad de centralizar la comunicación con las cuentas secundarias.&lt;/p&gt;

&lt;p&gt;Por ende, es importante conocer el flujo de comunicación que realizaremos paso a paso para comprender el procedimiento.&lt;/p&gt;

&lt;p&gt;Primero, comenzaremos a conocer el diagrama de cuentas AWS a través de un diagrama simple:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1y0swxuyyye1qgz07dns.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1y0swxuyyye1qgz07dns.png" alt=" " width="410" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;CUENTA AWS MASTER:&lt;/p&gt;

&lt;p&gt;Transit Gateway:&lt;br&gt;
Crearemos el nuevo servicio de TGW para la comunicación entre VPC's y cuentas diferentes:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl24ge3k2gn7fok4fb433.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl24ge3k2gn7fok4fb433.png" alt=" " width="665" height="562"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmt1ilkyqfjox0zueskgq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmt1ilkyqfjox0zueskgq.png" alt=" " width="800" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Una vez creada, configuraremos el servicio de RAM agregando la opción de Transit Gateway para que se vea reflejado dicho servicio en las cuentas secundarias&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ukppiwqhrvarc4ti94c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ukppiwqhrvarc4ti94c.png" alt=" " width="800" height="207"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fher6fw7rc5zj3obwuy3u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fher6fw7rc5zj3obwuy3u.png" alt=" " width="800" height="312"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjd7gl0o7olqqhjmzw44r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjd7gl0o7olqqhjmzw44r.png" alt=" " width="800" height="197"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxlnvdmm6e60gw3sdryd6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxlnvdmm6e60gw3sdryd6.png" alt=" " width="800" height="419"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para finalizar, daremos clic en "Create Resource Share"&lt;/p&gt;

&lt;p&gt;Al momento de la creación, se debe esperar que se termine de asociar a la cuenta A para su aprobación.&lt;/p&gt;

&lt;p&gt;Inicio de Proceso para la aprobación de la Cuenta A:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmhnm6zgitqcd81g8voji.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmhnm6zgitqcd81g8voji.png" alt=" " width="800" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Cuenta A:&lt;br&gt;
AWS Resource Access Manager:&lt;/p&gt;

&lt;p&gt;Invitación de la cuenta Master:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcswy1u7bhjpyx372l54n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcswy1u7bhjpyx372l54n.png" alt=" " width="310" height="475"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Aprobación:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmnuf4fm4oarm7aizw2og.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmnuf4fm4oarm7aizw2og.png" alt=" " width="800" height="233"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Transit Gateway:&lt;br&gt;
Se visualiza el Transit Gateway de Master dentro de la Cuenta A&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F96cwe110r1box32ydtio.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F96cwe110r1box32ydtio.png" alt=" " width="708" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Volvemos a la cuenta Master para la visualización de la creación de la nueva comunicación:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwwt3ha2liwn3jiaipg0a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwwt3ha2liwn3jiaipg0a.png" alt=" " width="800" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Listo !! Primera comunicación con la cuenta A. Ahora vayamos con la cuenta B.&lt;/p&gt;

&lt;p&gt;Editamos en el mismo RAM de la cuenta Master, con la finalidad de agregar a la cuenta B&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F60dfszswh6m8cxf30l35.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F60dfszswh6m8cxf30l35.png" alt=" " width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Una vez terminada de actualizar, se espera la aprobación de la cuenta B&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj69n4qteo648k1qntjwu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj69n4qteo648k1qntjwu.png" alt=" " width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Veamos en la cuenta B:&lt;br&gt;
Resource Access Manager&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fct88qnrwj0iq8o2kaal0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fct88qnrwj0iq8o2kaal0.png" alt=" " width="265" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Aprobación&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F189hu0v9p30bu9mqs43e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F189hu0v9p30bu9mqs43e.png" alt=" " width="800" height="192"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Listo !&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgbdwv9jezdh8l7u50i12.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgbdwv9jezdh8l7u50i12.png" alt=" " width="800" height="155"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Volvemos a la cuenta Master:&lt;br&gt;
Se visualizan que ambas cuentas ya estan aprobadas y listas para la comunicación&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdto9496lx37tvxswba7o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdto9496lx37tvxswba7o.png" alt=" " width="800" height="301"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CONFIGURACION DE TRANSIT GATEWAY ATTACHMENTS DE AMBAS CUENTAS SECUNDRIAS A y B:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Comenzamos en la cuenta A, con la finalidad de agregar su VPC en la cuenta Master, para poder realizar la comunicación bidireccional con la cuenta B:&lt;/p&gt;

&lt;p&gt;Entraremos al servicio de Transit Gateway Attachments:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9eg4e37yttfd1xut8sf1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9eg4e37yttfd1xut8sf1.png" alt=" " width="800" height="45"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Se visualiza el Transit Gateway ID del Master:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu8hyj3s0wgb4sdhurohv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu8hyj3s0wgb4sdhurohv.png" alt=" " width="550" height="586"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Daremos clic en "Create transit gateway attachment".&lt;/p&gt;

&lt;p&gt;Volvemos a la cuenta Master para su aprobación:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn0dlj7mxg48eytbueift.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn0dlj7mxg48eytbueift.png" alt=" " width="800" height="105"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft1vuvie7lx8ybipeb9ub.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft1vuvie7lx8ybipeb9ub.png" alt=" " width="404" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Aprobado la cuenta A en Master:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdg95do7442v6qfxb2y0j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdg95do7442v6qfxb2y0j.png" alt=" " width="800" height="124"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A continuación de la misma forma se realizará la Cuenta B:&lt;/p&gt;

&lt;p&gt;Crearemos el Atacchment:&lt;/p&gt;

&lt;p&gt;Se visualiza el Transit Gateway ID del Master:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgpwnnealue1jyrsk4vkl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgpwnnealue1jyrsk4vkl.png" alt=" " width="552" height="706"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pendiente para la aprobación del Master:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl7b5j41fs4oyi4p4e8hs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl7b5j41fs4oyi4p4e8hs.png" alt=" " width="800" height="143"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Volvemos al Master para la aprobación de la cuenta B:&lt;/p&gt;

&lt;p&gt;Se visualiza que se ha aprobado la cuenta B:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frtuic6t5dftxdjrhn2jw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frtuic6t5dftxdjrhn2jw.png" alt=" " width="800" height="137"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tener en cuenta que se visualizan en la Tabla de Ruta Master del Transit Gateway, una vez generan las configuraciones, automáticamente se generan en sus rutas:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr6gb3ef2j29zkvd2hnui.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr6gb3ef2j29zkvd2hnui.png" alt=" " width="800" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A continuación, finaliza la configuración de Transit Gateway del Master en conjunto con la cuenta A y Cuenta B para la comunicación bidireccional.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;VALIDACION DE PRUEBA DE SERVIDORES EC2 PARA AMBAS CUENTAS SECUNDARIAS PARA REALIZAR LA COMUNICACIÓN:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CUENTA A:&lt;br&gt;
VPC : 172.17.0.0/16&lt;br&gt;
VPC : 172.18.0.0/16&lt;/p&gt;

&lt;p&gt;La mejor prueba que puedes realizar, es creando 2 Instancias Privadas Ec2(AMI Linux 2) entre ambas cuentas secundarias con la finalidad de realizar la comunicación entre IP's Privadas.&lt;/p&gt;

&lt;p&gt;Para realizar dicha comunicación, se debe realizar 2 pasos importantes:&lt;br&gt;
-Tabla de Rutas de las Subredes Privadas&lt;br&gt;
-Security Groups de la Instancia Privada (Ec2)&lt;/p&gt;

&lt;p&gt;A continuación, procederemos a configurar en las Tablas de Rutas de los subnets y Security Groups de ambas cuentas A y B&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CUENTA A:&lt;/strong&gt;&lt;br&gt;
Tabla de Ruta de la Subnet Privada donde estará asociada la Instancia Ec2, en este caso, solo estaríamos agregando la IP de la VPC de la Cuenta B.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzi891tjpg6moaiokbb8u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzi891tjpg6moaiokbb8u.png" alt=" " width="800" height="415"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;De la misma forma se agrega en el Security Group de la Instancia,  para realizar la comunicación.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ta75tkzivlmyyvoqm04.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ta75tkzivlmyyvoqm04.png" alt=" " width="800" height="401"&gt;&lt;/a&gt;&lt;br&gt;
*Es suficiente elegir el Tipo SSH con puerto 22 para realizar el comando Telnet.&lt;/p&gt;

&lt;p&gt;A continuación, se visualiza la instancia Ec2 Privada. Es importante habilitar el Rol de SSM para poder conectarnos de forma segura:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7f6etjp37eoi6sueyw61.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7f6etjp37eoi6sueyw61.png" alt=" " width="800" height="333"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CUENTA B:&lt;/strong&gt;&lt;br&gt;
Tabla de Ruta de la Subnet Privada donde estará asociada la Instancia Ec2, en este caso, solo estaríamos agregando la IP de la VPC de la Cuenta A.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmmx7wahhdv2jtklbn3q2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmmx7wahhdv2jtklbn3q2.png" alt=" " width="715" height="596"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;De la misma forma se agrega en el Security Group de la Instancia,  para realizar la comunicación.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn3lyma317vh9g1hysco0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn3lyma317vh9g1hysco0.png" alt=" " width="800" height="330"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A continuación, se visualiza la instancia Ec2 Privada. Es importante habilitar el Rol de SSM para poder conectarnos de forma segura:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffh8nq4bsde5nfq4n7w8h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffh8nq4bsde5nfq4n7w8h.png" alt=" " width="800" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;RESULTADOS DE LA VALIDACIÓN:&lt;/p&gt;

&lt;p&gt;Se realizan prueba de Telnet entre ambas IP's Privadas de las Instancias Ec2:&lt;/p&gt;

&lt;p&gt;CUENTA A  ----&amp;gt;   CUENTA B&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqtl6fd09nsk3oq2z98ot.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqtl6fd09nsk3oq2z98ot.png" alt=" " width="621" height="155"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;CUENTA B ------&amp;gt;    CUENTA A&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fatsa9rcs6pwiu6locgxy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fatsa9rcs6pwiu6locgxy.png" alt=" " width="584" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>awschallenge</category>
    </item>
  </channel>
</rss>
