Skip to main content

Pembahasan Networking LKS SMK Cloud Computing Indonesia

Post kali ini mungkin tidak secara langsung membahas soal dari cloud computing, namun bisa bermanfaat untuk melakukan pengecekkan environment cloud sehingga mempermudah dalam melakukan troubleshooting dan menghadapi challenge yang ada.

Berikut adalah perintah-perintah AWS yang cukup berguna untuk membangun dan mengecek networking di Cloud seperti Subnet, Security Group, VPC, Internet Gateway, Route, dll.

Sebelum itu pastikan kita sudah cukup punya knowledge tentang apa itu AWS, nama-nama layanannya, Availability Zones, Data center, Region, Identity Management & Permission.


Siapkan AWS-CLI

https://learnubuntu.com/install-aws-cli/


Siapkan access key untuk menggunakan aws-cli dan berikan permission pada IAM user yang akan digunakan, misalnya untuk latihan kali ini AmazonEC2FullAccess, namun jika untuk real production bisa diberikan permission seminimal mungkin/custom sesuai dengan kebutuhan untuk security.


Config dengan perintah:

aws configure


root@workstation:/home/bagussa# aws configure

AWS Access Key ID []: xxxxxx

AWS Secret Access Key []: xxxxxx

Default region name [None]: ap-southeast-1

Default output format [None]: 


Masukkan access-key dan secret key yang sudah dibuat sebelumnya.

Ok langsung saja ke bagian cara pembuatan VPC, Route, Internet gateway, Subnet, dll

Berikut adalah gambar yang cukup menarik untuk memahami VPC, pada intinya dengan VPC kita diberikan Virtual Private Cloud Network yang bersifat isolated dari server-server virtual yang ada di layanan cloud tersebut sehingga membuat server kita sendiri aman dan tidak tercampur dengan layanan lainnya. 



Nah setelah kita membuat VPC berikut kita bisa memikirkan untuk pembagian subnet apakah mau private atau publik, routingnya, pemasangan internet gateway, dns dhcp nya, mirip2 sama traditional network namun ini sudah dalam bentuk layanan cloud.


1. Membuat VPC

Untuk latihan kita bikin network yang kecil saja yaitu 192.168.1.0/24

dari situ kita nanti bisa dibagi misal 192.168.1.0/25 untuk subnet yang bisa terhubung ke internet ini biasanya untuk App

kemudian sisanya untuk DB 192.168.1.128/25.

Sesuaikan kebutuhan saja, ini bisa dipelajari di konsep Subnetting dan VLSM


root@workstation:/home/emailbagussa# aws ec2 create-vpc --cidr-block 192.168.1.0/24

{

    "Vpc": {

        "CidrBlock": "192.168.1.0/24",

        "DhcpOptionsId": "dopt-0df67715c1859ed8e",

        "State": "pending",

        "VpcId": "vpc-09d169a6cfe31ffd6",

        "OwnerId": "730335379478",

        "InstanceTenancy": "default",

        "Ipv6CidrBlockAssociationSet": [],

        "CidrBlockAssociationSet": [

            {

                "AssociationId": "vpc-cidr-assoc-0795797155d61bb6b",

                "CidrBlock": "192.168.1.0/24",

                "CidrBlockState": {

                    "State": "associated"

                }

            }

        ],

        "IsDefault": false

    }

}


Mengecek VPC yang baru saja dibuat

untuk mendapatkan informasi dari VPC yang baru saja kita buat kita bisa menggunakan perintah berikut:


root@workstation:/home/emailbagussa# aws ec2 describe-vpcs 

{

    "Vpcs": [

        {

            "CidrBlock": "172.31.0.0/16",

            "DhcpOptionsId": "dopt-0df67715c1859ed8e",

            "State": "available",

            "VpcId": "vpc-034fb443d6482e50b",

            "OwnerId": "730335379478",

            "InstanceTenancy": "default",

            "CidrBlockAssociationSet": [

                {

                    "AssociationId": "vpc-cidr-assoc-03206aa2784e743bd",

                    "CidrBlock": "172.31.0.0/16",

                    "CidrBlockState": {

                        "State": "associated"

                    }

                }

            ],

            "IsDefault": true

        },

        {

            "CidrBlock": "192.168.1.0/24",

            "DhcpOptionsId": "dopt-0df67715c1859ed8e",

            "State": "available",

            "VpcId": "vpc-09d169a6cfe31ffd6",

            "OwnerId": "730335379478",

            "InstanceTenancy": "default",

            "CidrBlockAssociationSet": [

                {

                    "AssociationId": "vpc-cidr-assoc-0795797155d61bb6b",

                    "CidrBlock": "192.168.1.0/24",

                    "CidrBlockState": {

                        "State": "associated"

                    }

                }

            ],

            "IsDefault": false

        }

    ]

}


Perintah diatas akan memunculkan VPC yang ada pada cloud kita, untuk VPC yang baru saja kita buat kita bisa refer pada VPC ID dengan menambahkan option query seperti berikut:


root@workstation:/home/emailbagussa# aws ec2 describe-vpcs --filters Name=vpc-id,Values=vpc-09d169a6cfe31ffd6

{

    "Vpcs": [

        {

            "CidrBlock": "192.168.1.0/24",

            "DhcpOptionsId": "dopt-0df67715c1859ed8e",

            "State": "available",

            "VpcId": "vpc-09d169a6cfe31ffd6",

            "OwnerId": "730335379478",

            "InstanceTenancy": "default",

            "CidrBlockAssociationSet": [

                {

                    "AssociationId": "vpc-cidr-assoc-0795797155d61bb6b",

                    "CidrBlock": "192.168.1.0/24",

                    "CidrBlockState": {

                        "State": "associated"

                    }

                }

            ],

            "IsDefault": false

        }

    ]

}


Untuk filter lainnya bisa dicek dibawah ini

Reference:

https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpcs.html#options


2. Membuat Subnet Publik


Catatan: Each subnet must reside entirely within one Availability Zone and cannot span zones


2.1 Membuat subnet

root@workstation:/home/emailbagussa# aws ec2 create-subnet --vpc-id vpc-09d169a6cfe31ffd6 --cidr-block 192.168.1.0/25

{

    "Subnet": {

        "AvailabilityZone": "ap-southeast-1b",

        "AvailabilityZoneId": "apse1-az1",

        "AvailableIpAddressCount": 123,

        "CidrBlock": "192.168.1.0/25",

        "DefaultForAz": false,

        "MapPublicIpOnLaunch": false,

        "State": "available",

        "SubnetId": "subnet-08bff22928090642b",

        "VpcId": "vpc-09d169a6cfe31ffd6",

        "OwnerId": "730335379478",

        "AssignIpv6AddressOnCreation": false,

        "Ipv6CidrBlockAssociationSet": [],

        "SubnetArn": "arn:aws:ec2:ap-southeast-1:730335379478:subnet/subnet-08bff22928090642b",

        "EnableDns64": false,

        "Ipv6Native": false,

        "PrivateDnsNameOptionsOnLaunch": {

            "HostnameType": "ip-name",

            "EnableResourceNameDnsARecord": false,

            "EnableResourceNameDnsAAAARecord": false

        }

    }

}


By default subnet akan terbuat seperti diatas dengan Zone yang akan dipilih oleh AWS, kita bisa menentukan sendiri sebetulnya untuk meningkatan availability, misalnya kita buat 3 subnet untuk masing-masing di 3 zone. Untuk latihan bisa simple seperti diatas dulu 1 subnet 1 zone.


Untuk menjadikan subnet itu public kita perlu mengasosiasikan subnet tersebut dengan public route ke internet gateway.


2.2 Membuat internet gateway


root@workstation:/home/emailbagussa# aws ec2 create-internet-gateway 

    "InternetGateway": {

        "Attachments": [],

        "InternetGatewayId": "igw-03c39f2881932ba9a",

        "OwnerId": "730335379478",

        "Tags": []

    }

}


2.3 Asosiasikan dengan VPC yang tadi kita buat dulu

 aws ec2 attach-internet-gateway --vpc-id vpc-09d169a6cfe31ffd6 --internet-gateway-id igw-03c39f2881932ba9a





2.4 Membuat routing table


aws ec2 create-route-table --vpc-id vpc-09d169a6cfe31ffd6

{

    "RouteTable": {

        "Associations": [],

        "PropagatingVgws": [],

        "RouteTableId": "rtb-0cac70a44d059864a",

        "Routes": [

            {

                "DestinationCidrBlock": "192.168.1.0/24",

                "GatewayId": "local",

                "Origin": "CreateRouteTable",

                "State": "active"

            }

        ],

        "Tags": [],

        "VpcId": "vpc-09d169a6cfe31ffd6",

        "OwnerId": "730335379478"

    }

}


Catat routing table ID diatas


2.5 Buat routing ke internet gateway


aws ec2 create-route --route-table-id rtb-0cac70a44d059864a --destination-cidr-block 0.0.0.0/0 --gateway-id igw-03c39f2881932ba9a
{
    "Return": true
}





2.6 Assosiakan ke subnet publik

root@workstation:/home/emailbagussa# aws ec2 associate-route-table --subnet-id subnet-08bff22928090642b --route-table-id rtb-0cac70a44d059864a

{
    "AssociationId": "rtbassoc-095cc7f1bbbee8dc4",
    "AssociationState": {
        "State": "associated"
    }
}

Tampilan di web ui nya





3. Membuat Subnet Private


root@cs-195483573131-default:/home/emailbagussa# aws ec2 create-subnet --vpc-id vpc-09d169a6cfe31ffd6 --cidr-block 192.168.1.128/25


{

    "Subnet": {

        "AvailabilityZone": "ap-southeast-1b",

        "AvailabilityZoneId": "apse1-az1",

        "AvailableIpAddressCount": 123,

        "CidrBlock": "192.168.1.128/25",

        "DefaultForAz": false,

        "MapPublicIpOnLaunch": false,

        "State": "available",

        "SubnetId": "subnet-0db7a335615304c7c",

        "VpcId": "vpc-09d169a6cfe31ffd6",

        "OwnerId": "730335379478",

        "AssignIpv6AddressOnCreation": false,

        "Ipv6CidrBlockAssociationSet": [],

a335615304c7c",Arn": "arn:aws:ec2:ap-southeast-1:730335379478:subnet/subnet-0db7 

        "EnableDns64": false,

        "Ipv6Native": false,

        "PrivateDnsNameOptionsOnLaunch": {

            "HostnameType": "ip-name",

            "EnableResourceNameDnsARecord": false,

            "EnableResourceNameDnsAAAARecord": false

        }

    }

}


Untuk private subnet tidak perlu ditambahkan routing ke internet gateway agar tetap private.


Selanjutnya kita bisa menempatkan VM yang dibuat di subnet tersebut untuk mengecek koneksi ke internet, dll.


Thank you kalau sudah mengikuti tutorial ini, semangat belajar.






Comments

Popular posts from this blog

ITNSA Konfigurasi Ansible WinRM Windows Server

 ### Mengonfigurasi Koneksi Ansible ke Server Windows Ansible adalah alat otomatisasi yang sangat populer dan sering digunakan untuk mengelola berbagai jenis server, termasuk server Windows. Artikel ini akan memandu Anda melalui langkah-langkah untuk mengonfigurasi Ansible agar dapat terhubung dengan server Windows menggunakan WinRM (Windows Remote Management). #### 1. Menyiapkan WinRM di Server Windows ##### Opsi 1: Menggunakan Skrip PowerShell Anda bisa menggunakan skrip PowerShell yang sudah disediakan untuk mengonfigurasi WinRM agar dapat digunakan oleh Ansible. 1. Buka PowerShell di server Windows Anda sebagai administrator. 2. Jalankan perintah berikut untuk mengunduh dan mengeksekusi skrip konfigurasi:    ```powershell    iex (New-Object Net.WebClient).DownloadString('https://github.com/ansible/ansible/raw/devel/examples/scripts/ConfigureRemotingForAnsible.ps1')    ``` ##### Opsi 2: Pengaturan Manual 1. Buka PowerShell di server Windows Anda seb...

Analisa Traffic WAF

 Tentu, berikut adalah contoh untuk setiap bagian analisis traffic WAF: #### 1. Analisis Path **Contoh**: - **Path yang Tidak Biasa**: Misalkan aplikasi Anda memiliki endpoint `/login`. Jika Anda melihat permintaan ke path seperti `/admin/../../config`, ini adalah path yang mencurigakan karena tampaknya mencoba mengakses direktori konfigurasi dengan teknik path traversal. - **Pengelompokan Traffic**: Jika banyak permintaan ke path `/api/upload` yang mencurigakan, ini bisa menunjukkan upaya eksploitasi terhadap fungsi upload file. #### 2. Analisis Method **Contoh**: - **Method GET**: Anda melihat permintaan GET dengan query string yang panjang seperti `GET /search?q=...`, di mana query string sangat panjang dan mengandung karakter yang tidak biasa. Ini bisa menjadi indikasi serangan seperti buffer overflow. - **Method POST**: Anda menerima banyak permintaan POST dengan payload yang besar dan mencurigakan, seperti `POST /update-profile` dengan data yang tidak sesuai format atau panja...

Soal dan pembahasan LKS ITNSA Network Infrastructure Basic

Soal tahun 2021 tingkat Nasional Soal bisa di download di https://itnsa.id Basic Configuration Configure IP Address of all network devices according to the addressing table.  Create SSH user ‘patah’ with password specified in the appendix.  Make sure the user are able to enter configuration commands in the router.  Allow server admins to SSH to all network devices.  If you need to set additional password on the Routers, use Skills39 Look at the appendix table and configure accordingly Configure IP address: csr1000v# configure terminal #change interface name according to the topology csr1000v (config)# interface GigabitEthernet0 csr1000v (config-if)# ip address  x.x.x.x y.y.y.y csr1000v (config-if)# no shutdown Create SSH user: csr1000v# configure terminal csr1000v (config) # username patah password cisco123 csr1000v (config)# privilege 15 patah Allow server admins to SSH: csr1000v# configure terminal csr1000v (config)# ip access-list standard SSH_ACL csr10...