Cloud Security And Cloud Computing

Sebelum membahas tentang cloud security ada baiknya kita membahas tentang cloud computing terlebih dahulu. Untuk yang belum baca tentang audit keamanan jaringan bisa baca di artikel ini ya. Sekarang yuk disimak apa itu cloud security.

Pengertian Cloud Computing

Cloud computing merupakan sebuah model client-server, di mana resources seperti server, storage, network, dan software adalah suatu layanan yang dapat diakses oleh pengguna secara remote. Layanan cloud tersedia 24 jam sehari (setiap saat). Pengguna dapat menikmati berbagai layanan tanpa perlu melibatkan bantuan teknis atau support dari provider cloud.

Dahulu kala, infrastruktur network harus disediakan dan dimiliki oleh masing-masing pihak. Lembaga atau organisasi harus memiliki data center, server, aplikasi network, dan menyewa link dari provider untuk menghubungkan network-nya dengan dunia luar.

Cloud Security
Cloud Security

Sehingga diperlukan investasi di awal untuk membangun network yang layak. Faktanya adalah. tidak semua orang mampu menyediakan data center dengan segala kelengkapannya. Hal ini dapat menjadi kendala bagi sebagian besar orang.

Namun, sejak layanan cloud computing diperkenalkan, hampir setiap orang kini dapat menikmati infrastruktur network tanpa harus mengeluarkan biaya yang besar di awal. Kini infrastruktur network dapat disewa, dengan biaya setup yang relatif terjangkau, dibandingkan harus mengeluarkan biaya pengadaaan untuk sebuah data center yang cukup mahal.

Munculnya paradigma baru ini menyebabkan cara mengelola network dan persoalan security menjadi berkembang. Disebabkan kini ada dua pihak yang terlibat, yaitu pihak pengelola jaringan lokal dan pengelola cloud.

Beberapa layanan cloud computing yang terkait dengan pengelolaan network di antaranya:

  • Network monitoring
  • Online backup/restore
  • Online Inventory system
  • Online network scanning
  • Virtual Private Network

Beberapa layanan cloud merupakan layanan premium (berbayar). Namun ada juga layanan gratis dengan fitur terbatas. Contoh aplikasi cloud computing yang cukup populer antara lain:

  • Apple Mobile Me (http://www.me.com/)
    Memberikan layanan untuk sinkronisasi email, foto, dan daftar kontak yang melibatkan berbagai perangkat, seperti: komputer, laptop, mobile device.
  • Google Docs (http://docs.google.com/)
    Menyediakan aplikasi perkantoran seperti word processor, spreadsheet, dan presentation designer. Dokumen dapat disimpan di cloud atau di hard disk komputer pengguna.
  • Evernote (http://www.evernote.com/)
    Pengguna dapat menyimpan foto, screenshots, atau file di server cloud. Gambar atau image akan diberi index dan disimpan di virtual database. Proses sinkronisasi dengan PC, Mac, iPhone, dapat dilakukan via software khusus.
  • G.ho.st atau Global Hosted Operating System (http://g.ho.st/)
    G.ho.st adalah sejenis sistem operasi virtual berbasis Flash dengan tampilan mirip sistem operasi desktop. Pengguna dapat bekerja pada G.ho.st dan memperoleh jatah disk gratis sebesar 5 GB.

Agar tidak terjadi bias dalam pemahaman cloud computing maka Penulis akan mengawalinya dengan pembahasan konsep cloud computing sebagaimana yang telah dirumuskan oleh NIST.

virtualisasi

Inti dari teknologi cloud computing adalah virtualisasi. Selama ini kita sudah bersentuhan dengan VirtualBox. Sebagian lagi mungkin pernah menggunakan VMware, VirtualPC, Xen, Hyper-v, dan sejenisnya. Aplikasi tersebut adalah hypervisor yang dapat digunakan untuk menjalankan beberapa sistem operasi di atas sistem operasi utama.

Melalui hypervisor, kita dapat menjalankan beberapa komputer virtual. Komputer virtual ini disebut virtual machine atau VM. Hypervisor. bertanggung jawab mengelola resources yang dibutuhkan oleh setiap virtual machine.

Kata “virtual machine” atau VM seringkali menimbulkan banyakpenafsiran. Sebagian orang mengartikan virtual machine sebagai sistem operasi yang diinstal di atas hypervisor, atau disebut juga guest operating system.

Definisi formal

Cloud computing sesungguhnya lebih dari sekedar virtualisasi. Ada beberapa organisasi dan vendor yang telah mendefinisikan kata “cloud computing”. Salah satunya adalah National Institute of Standards and Technology (NIST). Untuk selanjutnya buku ini akan mengacu pada definisi yang dibuat oleh NIST. Menurut NIST, cloud computing didefinisikan sebagai berikut:

“Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three delivery models, and four deployment models.”

Cloud computing merupakan hasil evolusi dari teknologi yang sudah ada sebelumnya, yaitu grid computing. Grid computing dapat dipandang sebagai penggabungan berbagai jenis komputer yang dihubungkan dengan network, sehingga dihasilkanlah tenaga komputasi yang besar.

Gridcomputing biasanya dibuat untuk menyelesaikan sebuah proyek atau persoalan besar yang tidak dapat diselesaikan oleh sebuah komputer. Grid computing tidak bertumpu pada teknologi virtualisasi. Mungkin hal ini dapat menjadi salah satu pembeda cloud computing dan grid.

Contoh penerapan grid computing yaitu pada proyek Search for Extraterrestrial Intelligence (SETI – http://setiathome.barkeley.edu). Proyek SETI dibuat untuk menemukan adanya tanda-tanda kehidupan di luar angkasa, dengan cara menganalisis data radio yang telah direkam selama ribuan jam.

Proses analisis ini dilakukan menggunakan bantuan software khusus yang telah diinstal pada ribuan komputer di seluruh dunia, yang dihubungkan menggunakan jaringan Internet.

Cloud computing terdiri atas 6 (enam) komponen utama, yaitu: clients,services, application, platform, storage, dan infrastructure.

Clients
Services
Application
Platfrom
Storage
Infrastructur
Gambar: Komponen cloud computing

Walaupun dari luar ada kemiripan antara cloud computing dan grid computing, namun cloud computing sangat berbeda dengan grid computing. Berikut ini 5 (lima) buah karakteristik cloud computing (menurut NIST):

Rapid Elasticity

Resources yang disediakan oleh cloud computing dapat bertambah atau berkurang (scale up and down) dengan cepat. Pengguna dapat menyewa computing power sebanyak yang dibutuhkannya.

Measured Service

Services yang disediakan bersifat terukur. Provider cloud computing dapat mengendalikan dan memonitor cloud services, misalkan untuk keperluan billing, access control, resource optimization, capacity.Planing dan sebagainya.

On-Demand Self-Service

Pengguna dapat mengakses cloud computing services sesuai kebutuhan, tanpa perlu dilayani oleh pihak lain (misal: teknisi provider cloud computing).

Ubiquitous/Broad Network Access

Semua kapabilitas cloud computing tersedia melalui network dan dapat diakses oleh clients (mobile device, thick atau thin client) dengan metode yang sudah berlaku umum.

Resource Pooling

Cloud computing provider dapat melayani pengguna via multi-tenant model. Berbagai resources, seperti: storage, CPU, memory, bandwidth, dan mesin virtual (virtual machine), yang terdapat di berbagai lokasi dapat digunakan oleh banyak client secara bersamaan.

Kemudian, ada tiga service layer atau delivery model yang disediakan cloud computing yaitu:

Infrastructure As A Service (IaaS)

Pengguna dapat menggunakan fundamental computing resources seperti processing power, storage, networking component. Pengguna diizinkan untuk menginstal sistem operasi, storage, membangun aplikasi sendiri, membuat firewall dan load balancer. Contoh IaaS yaitu: AWS Elastic Compute Cloud (EC2), Google Cloud, Microsoft Azure.

Platform As A Service (PaaS)

Pengguna dapat mengembangkan aplikasi menggunakan application framework atau application engine yang disediakan oleh provider. Pengguna dapat secara leluasa mengontrol aplikasi, namun tidak dapat mengontrol sistem operasi, hardware, atau network. Contoh PaaS yaitu, Microsoft Azure Investment, AWS Elastic Beanstalk, Google App Engine, Red Hat OpenShift.

Software As A Service (SaaS)

Pengguna dapat menggunakan aplikasi namun tidak dapat membuat aplikasi, tidak dapat mengontrol sistem operasi, hardware, dan network. Aplikasi dapat diakses via Web-browser atau Web based interface. Contoh SaaS yaitu: Dropbox, Office 365, Salesforce, Tableau, Xero, GoogleDoc.

Berikut ini diagram yang menjelaskan perbedaan ketiga model di atas dan kaitannya dengan tanggung jawab pengelolaan.

Model cloud computing and security

Cloud dapat dibangun sebagai private cloud, yang dibuat hanya untuk lingkungan internal (organisasi tertentu). Jika private cloud dibangun oleh pihak lain (outsourcing/hosting provider) dan server cloud berada di luar organisasi yang akan menggunakannya, maka private cloud semacam ini disebut virtual private cloud.

Jika cloud dapat diakses oleh sembarang pengguna, melalui jaringan Internet, maka cloud semacam ini disebut public cloud. Public cloud yang dikelompokkan ke dalam beberapa group berdasarkan interest (misal: profesi, hobi) yang sama, disebut community cloud atau vertical cloud. Sedangkan cloud yang melibatkan gabungan private cloud dengan public cloud disebut hybrid cloud.

Saat ini belum ada standar baku bagaimana cloud computing seharusnya diimplementasikan. Standar yang dimaksud di sini meliputi:

Cloud interoperability and integration standard (C2C – Cloud toCloud)

Standar yang mengatur integrasi dan pertukaran informasi antar sistem cloud computing yang berbeda.

Cloud interface and application programmer interfaces (API) standards

Standar yang digunakan oleh aplikasi untuk mengakses cloud computing dan untuk pengembangan aplikasi itu sendiri.

Cloud performance benchmark

Standar yang dapat digunakan oleh konsumen sebagai acuan untukmembandingkan performa cloud computing. Sehingga konsumen dapat memutuskan manakah cloud yang “sehat” dan “tidak sehat”.

Cloud security dan privacy

Standar yang mendefinisikan aspek-aspek security, seperti integritasdata, physical dan logical security, security untuk services, securityuntuk aplikasi cloud, dan security yang melibatkan interaksi antar cloud.

Cloud governance standard

Standar yang mengatur design-time planning, arsitektur, model, deployment, monitoring, support, pengoperasian, QoS, SLA.

Meskipun belum ada kesepakatan di antara para vendor, model referensi yang disebut Cloud Computing Reference Model (CC-RM) yang dibuat olehNIST, dapat dijadikan sebagai acuan dalam pengembangan sistem cloud computing. Model CC-RM terdiri atas 4 (empat) layer, yaitu:

  • Cloud Enablement Model
  • Cloud Deployment Model
  • Cloud Governance and Operations Model
  • Cloud Ecosystem Model

Berikut ini penjelasan Cloud Computing Reference Model berdasarkan bagan di atas:

  • Cloud Enablement Model (CEM)
    Merupakan core atau inti dari CC-RM. CEM menjelaskan fundamental teknologi yang digunakan untuk membangun cloud service provider,yang meliputi:
    – Cloud virtualization tier
    – Cloud operating system tier
    – Cloud platform tier
    – Cloud business tier
  • Cloud Deployment Model (CDM)
    Menjelaskan beberapa jenis implementasi cloud computing. Secara umum ada empat jenis cloud, yaitu:
    – Public/external cloud
    – Private/internal cloud
    – Hybrid/integrated cloud
    – Community/semi private cloud
  • Cloud Governance and Operations Model (CGOM)
    Menjelaskan persoalan kebijakan, security, support, management, dan monitoring untuk cloud computing, meliputi:
    – Governance, culture, and behavior
    – Security and privacy
    – Management and monitoring
    – Operations and support
  • Cloud Ecosystem Model (CCM)
    Menjelaskan ekosistem cloud, yang meliputi kebutuhan dari pengembangan dan keberlangsungan hidup cloud, yang melibatkan provider cloud, konsumen cloud, intermediaries cloud, network cloud dan cloud dial tone, sehingga akses cloud selalu tersedia. CCM mencakup:
    – Cloud network/dial tone
    – Cloud ecosystem enablement
    – Cloud consumers and cloud providers
    – Cloud physical access, integration, and distribution

Model Cloud Security

Pada private cloud computing, isu security tidaklah sekompleks public cloud computing. Sebab infrastruktur dan pengelolaan private cloud computing dapat ditangani tanpa melibatkan pihak lain (cloud provider).

NIST dapat menjelaskan definisi cloud computing secara formal. Namun, model referensi yang dibuat NIST tidak menjelaskan bagaimana mengimplementasikan security pada lingkungan private cloud computing khususnya pada IaaS service model. Sehingga perlu digunakan model lain yang lebih sesuai. Model referensi yang lebih sesuai adalah model yang dibuat oleh Cloud Security Alliance (CSA).

cloud computing and security menurut CSA

Untuk menghasilkan secure cloud tentu saja harus ada referensi yang dapat dijadikan sebagai acuan. Pada model CCRM telah ada layer security and privacy.

CSA telah membuat model referensi yang disebut Cloud Reference Model (CRM). CRM ini kemudian dipetakan ke model security untuk cloud yang disebut Security Control and Compliance Model (SC-CM), yang juga dibuat oleh CSA. CRM dapat digunakan sebagai panduan dasar bagaimana mengimplementasikan security dan privacy di lingkungan private cloud computing. Pemetaan CRM ke SC-CM untuk laas service model dapat dilihat pada Gambar.

Model lainnya yang merumuskan security cloud computing adalah Open Security Architecture Cloud Computing Model (OSA09).

3 Buah Control Layer Cloud Security

  • SA-1/4/5 (System and Service Acquisition)
    Menjamin servis yang sudah diakusisi akan dapat dikelola secara benar.
  • CP-1 (Contigency Planning)
    Secara jelas dapat merespon jika terjadi gangguan pada service delivery.
  • Risk Assesement Control
    Membantu memahami berbagai risiko yang mungkin timbul berkaitan dengan kepentingan bisnis.

Walaupun CSA tidak menjelaskan secara detail, namun model tersebut dapat membantu pengguna untuk memahami security cloud computing dari sisi praktis.

Pemetaan Cloud Model Computing and security dengan SCM

Menurut CSA, security control [3] di lingkungan private cloud computing secara umum tidak jauh berbeda dengan lingkungan IT lainnya, dalam hal ini local network. Namun, adanya perbedaan yang unik pada private cloud computing (dibandingkan dengan lingkungan LAN), akan menyebabkan perbedaan risiko (risk), sebagaimana yang telah dianalisis oleh Gartner.

Menurut CSA, semakin dalam service model yang diimplementasikan pada suatu organisasi maka akan semakin secure juga cloud computing yang bisa diperoleh.

Software Development

Bagi developer, layanan cloud merupakan sebuah wadah untuk mengembangkan berbagai aplikasi berbasis cloud secara cepat dan inovatif.Ada beberapa cara mengembangkan aplikasi berbasis cloud, di antaranya:

  1. Virtual infrastructure provisioning
    Memanfaatkan infrastruktur yang sudah ada. Cara ini cukup fleksibel. Pengguna dapat membangun berbagai aplikasi menggunakan infrastruktur yang disediakan oleh provider. Pengguna memperoleh akses penuh terhadap sistem operasi yang dipilihnya. Sehingga pengguna dapat membangun aplikasi sendiri menggunakan framework yang disukainya.

    Contohnya adalah layanan Amazon Elastic Compute Cloud (EC2 – http://aws.amazon.com/ec2/) dan Simple Storage Service ($3 – https://s3.amazonaws.com/). Amazon Web Services (AWS) merupakan salah satu provider laaS. AWS menyediakan komputasi resource untuk berbagai aplikasi Web.

    Kedua service ini dapat diakses via Web browser. Aplikasi client dapat memanfaatkan EC2 dan S3 API untuk berkomunikasi dengan kedua service tersebut. EC2 mendukung sepenuhnya software open source dan berbagai aplikasi Web. EC2 memanfaatkan kernel Linux dan Xen, dengan berbagai sistem operasi yang berjalan di atas Xen.
  2. Memanfaatkan Application Engine yang sudah ada
    Cara ini kurang fleksibel, karena pengguna tidak dapat mengakses sistem operasi. Pengguna hanya dapat memanfaatkan sekumpulan application engine yang sudah disediakan oleh provider. Aplikasi yang dikembangkan haruslah mengikuti framework yang disediakan oleh provider.

    Contohnya adalah Google App Engine (GAE-http://apps.google.com/). GAE dibuat menggunakan bahasa Python. Pengguna dapat membangun aplikasi Web berbasis engine GAE. GAE tidak menyediakan akses penuh ke sistem operasi. Sebuah free account hanya dapat digunakan untuk mengakses storage sebesar 500 MB dan mengakses 3 buah aplikasi saja.
  3. Membangun infrastruktur Cloud Computing sendiri
    Pilihan ini paling fleksibel. Pengguna dapat memanfaatkan sekumpulan komputer, perangkat network, dan software open source (seperti: Linux, Apache Hadoop, Eucalyptus) untuk membangun infrastruktur cloud computing sendiri. Selanjutnya aplikasi cloud computing dapat dikembangkan sesuai kebutuhan dan selera. Pilihan ini banyak dimanfaatkan di lingkungan akademik. Karena biaya operasionalnya cukup murah.

    Pilihan lain (non open source) yaitu VMware ESX yang diinstal pada Cisco UCS, IBM cloud computing system, Siemens cloud computing system, dan solusi komersial lainnya. Pilihan ini banyak diminati oleh lembaga dan perusahaan yang memerlukan dukungan vendor.

    Berbagai bahasa pemrograman, dan toolkit telah tersedia untuksemua layer (IaaS, PaaS, dan SaaS). Contoh bahasa pemrograman yang dapat digunakan untuk mengendalikan resource yang tersedia pada cloud yaitu bahasa Python, Rubi, Java, dan PHP.

Demikianlah pembahasan mengenai cloud security dan cloud computing, semoga bermanfaat ya.

Leave a Reply

Your email address will not be published.