Tuesday, March 31, 2015

Marking Packet Download dan Upload di Router MikroTik

Skenario ini saya kutip dari buku salah satu kenalan di forum IT, berhubung udah hampir dua tahun gak megang perangkat network jadi biar konsep dan konfig tetep inget sekalian saya catet di blog biar gak lupa dan sebagai catetan pribadi juga soalnya kadang suka males kalo liat2 ke buku lagi hehe..

Jadi topologi yang digunakan kira-kira seperti dibawah ini :


Network dianggap internet yah, interface publik di router adalah eth1, sedangkan skenario yang diinginkan adalah sebagai berikut ini :
  • Router mampu melakukan marking terhadap traffic upload dari client (192.168.1.254) ke internet.
  • Router mampu melakukan marking terhadap traffic download dari internet ke client (192.168.1.254).
  • Traffic upload dari client ke router.
  • Traffic download dari router ke client.
Konfigurasi 
  • Mark Connection dari source address 192.168.1.254, hal ini dilakukan agar marking packet selanjutnya dapat mengenali connection yang di marking adalah paket connection dari source address 192.168.1.254





  • Mark packet terhadap traffic upload dari client (192.168.1.254) ke internet.




  • Mark packet terhadap traffic download dari internet ke client (192.168.1.254).




  • Mark Packet traffic upload dari client ke router.




  • Mark Packet traffic download dari router ke client.


Setelah itu coba kunjungi youtube.com atau lihat situs lainnya, apakah counter sudah bertambah? Apabila sudah bertambah maka konfigurasi yang telah dilakukan telah berhasil dengan baik.


Done!

Instalasi Redhat Cluster Suite Administration Tools di CentOS 6.x

Redhat Cluster Suite merupakan salah satu fitur yang digunakan untuk fail over dan high availability di dalam environment Redhat/CentOS. Konsep dan penerapan high availability sebenernya terbagi menjadi beberapa layer seperti dari layer network, hardware, operating system dan aplikasi.
Sebelumnya kita berkenalan dulu sama beberapa fitur redudansi dari berbagai layer yah, buat pembaca mungkin bisa koreksi saya kalo saya salah hehe.
  • Dari layer network biasanya redudansi menggunakan fitur hsrp, vrrp dan lain sebagainya.
  • Dari layer hardware/server redudansi bisa menggunakan vsphere HA apabila fencing yang digunakan adalah virtual environment.
  • Dari layer OS dan aplikasi salah satu solusi yang digunakan apabila di environment CentOS/Linux adalah redhat cluster suite.
Jujur pada saat saya nulis ini saya pun sebenernya masih mendalami fitur-fitur redhat cluster suite ini, saya tulis sebagai catetan pribadi biar enggak lupa dan ada siapa tau juga ada temen-temen yang nyari tau cara installnya.

Nah karna kita membahas tentang cara instalasinya saya lampirkan topologi yang saya gunakan.


Jadi kalo diliat dari tabel diatas instalasi akan dilakukan di 2 server, storage yang digunakan adalah centralized storage dengan protokol iSCSI..

Notes
  • Cman atau cluster management adalah aplikasi distributed cluster manager yang berjalan di setiap cluster node dan bertugas untuk mengkontrol quorum.
  • Cman memonitori cluster quorum dengan memantau node di dalam cluster. Jika lebih dari setengah node aktif, maka cluster memiliki quorum. Jika setengah node (atau kurang) yang aktif, maka cluster tidak memiliki quorum dan semua aktivitas cluster dihentikan.
  • Cluster Quorum mencegah terjadinya kondisi "split brain", split brain adalah suatu kondisi dimana dua instance dalam sebuah cluster yang sama berjalan secara bersamaan. Kondisi split brain akan memungkinkan setiap instances dalam cluster mengakses resources cluster tanpa sepengetahuan dari contoh cluster lainnya, hal ini akan membuat degradasi performance pada cluster yang sudah dibentuk sehingga cluster tidak bekerja dengan baik.
  • Luci adalah aplikasi yang dijalankan dalam sebuah node dan bertugas untuk berkomunikasi dengan multipel cluster dan node lainnya via ricci.
  • Ricci adalah agent yang berjalan di tiap komputer yang berkomunkasi dan di managed oleh conga.
  • Conga adalah kumpulan atau paket komponen yang digunakan untuk centralized configuration dan management redhat cluster dan storagenya, ricci dan luci adalah bagian dari conga.

INSTALASI CLUSTER SUITE ADMINISTRATION TOOLS

Notes 
  • Pastikan kamu sudah terhubung ke repository lokal ataupun internet, kalo belum tau cara bikin repository bisa liat catetan saya disini.
  • Di lab ini saya matiin selinux dan iptables, konfigurasi akan diperjelas dibawah.

Instalasi komponen node1.clustering.local

# chkconfig iptables off
# /etc/init.d/iptables stop

# vi /etc/selinux/config
##(ganti parameter dibawah ini menjadi disabled)
SELINUX=disabled

# vi /etc/sysconfig/network
##ganti hostname menjadi node1.clustering.local
HOSTNAME=node1.clustering.local

# vi /etc/hosts
## tambahin parameter dibawah ini
192.168.227.10 node1.clustering.local node1
192.168.227.20 node2.clustering.local node2

# useradd ricci
# passwd ricci
Changing password for user ricci.
New password: (masukan password sesuai yg anda inginkan)
Retype new password: (ketik ulang password)

# yum install cman rgmanager luci ricci -y
# chkconfig ricci on; chkconfig luci on
# /etc/init.d/ricci start; /etc/init.d/luci start

Reboot server. (saya reboot karna ini fresh server, biar hostnamenya keganti juga)

Setelah selesai kamu sudah bisa akses luci dengan web server dengan url sebagai berikut ini https://192.168.227.10:8084/


Notes 
Untuk username dan password bisa gunakan root dan password root.

Instalasi komponen node2.clustering.local

# chkconfig iptables off
# /etc/init.d/iptables stop

# vi /etc/selinux/config
##(ganti parameter dibawah ini menjadi disabled)
SELINUX=disabled

# vi /etc/sysconfig/network
##ganti hostname menjadi node1.clustering.local
HOSTNAME=node2.clustering.local

# vi /etc/hosts
## tambahin parameter dibawah ini
192.168.227.10 node1.clustering.local node1
192.168.227.20 node2.clustering.local node2

# useradd ricci
# passwd ricci
Changing password for user ricci.
New password: (masukan password sesuai yg anda inginkan)
Retype new password: (ketik ulang password)

# yum install cman rgmanager ricci -y
# chkconfig ricci on;
# /etc/init.d/ricci start

Reboot server. (saya reboot karna ini fresh server, biar hostnamenya keganti juga)

Done!

Monday, March 30, 2015

QoS Sederhana Limit Traffik FTP dan HTTP Menggunakan MikroTik

Sebenernya blog ini saya tulis sebagai catetan pribadi aja, karna udah hampir dua tahun engga nyentuh peralatan network. Kalopun nyentuh paling cuma buat ngehandel proyek2 freelance aja dan sekedar bantu-bantu orang aja sekalian maintenis ilmu biar enggak lupa hehe, dulu hampir tiap hari megang cisco dan mikrotik dan sekarang hampir enggak pernah, kangen juga sih maen ke datacenter lagi... :( #jadicurcol

By the way pada lab kali ini kira-kira topologi yang saya gunakan adalah seperti dibawah ini.

Sederhana yah, kamu cuma butuh satu router mikrotik, laptop kamu sendiri dan FTP server kamu bisa buat sendiri pake virtual machine, sedangkan web server kamu bisa kunjungi website apapun di internet.

Jadi tujuan utama kita di lab kali ini itu adalah :
  • Melakukan limitasi bedasarkan destination port standard FTP yaitu port 21
  • Melakukan limitasi bedasarkan destination port web server yaitu port 80

Marking Packet Menuju Port 21 FTP dan Batasi Bandwidth
Router mikrotik dapat mengetahui tiap-tiap packet tersebut adalah paket FTP apabila kita sebagai administrator mendefine bahwa paket tsb adalah paket untuk FTP. Jadi intinya ketahui dulu port nya lalu source/destination addressnya.

Langkah pertama lakukan marking connection dengan parameter sbb :
Chain : prerouting
Src. Address : 192.168.1.254
Protocol : tcp
Dst port : 21
Action : Mark Connection 
New Connection Mark : Ftp-Conn
Passthrough : yes (centang)





Langkah kedua lakukan marking packet dengan parameter sbb :
Chain : prerouting
Connection Mark : Ftp-Conn (pilih connection yang sudah kita buat di langkah pertama)
Action : mark packet
New Mark Packet : Ftp-Trafik
Passthrough : no




Langkah ketiga, coba kamu lakukan FTP ke server tujuan lalu amati apakah router mikrotik ini sudah mampu menangkap dan menandai paket-paket tersebut? Saya coba melakukan FTP ke FTP server saya dengan mentransfer file sebesar 28MB dan saya perhatikan transfer rate sesuai dengan ukuran file yang saya transfer.


Apabila sudah sesuai maka router sudah bisa membedakan paket tersebut adalah paket FTP dari PC kita 192.168.1.254 ke server FTP manapun (asalkan port FTP yang digunakan adalah port 21).

Langkah keempat lakukan limitasi bandwidth, di lab ini saya gunakan "simple queue".



Setelah selesai klik OK, lalu coba lagi lakukan transfer file ke FTP server lalu perhatikan transfer ratenya.


Sudah sesuai yah? Berarti anda sukses melimit trafik FTP saja tanpa mengganggu trafik lainnya.


Marking Packet HTTP dan Batasi Bandwidth
Sama seperti sebelumnya untuk limitasi HTTP traffik yang diganti hanya parameter dst port menjadi port 80 saja.

Langkah pertama lakukan marking connection dengan parameter sbb :
Chain : prerouting
Src. Address : 192.168.1.254
Protocol : tcp
Dst port : 80
Action : Mark Connection 
New Connection Mark : http-Conn
Passthrough : yes (centang)



Langkah kedua lakukan marking packet dengan parameter sbb :
Chain : prerouting
Connection Mark : http-Conn (pilih connection yang sudah kita buat di langkah pertama)
Action : mark packet
New Mark Packet : http-Trafik
Passthrough : no



Langkah ketiga, coba kamu kunjungi website di internet misalnya saja indowebster.com lalu perhatikan counter pada mangle yang telah kamu buat apakah bertambah atau tidak.


Nah kalo dari gambar diatas packet http yang melalui router sudah berhasil di marking, kita tinggal melakukan limit terhadap traffik http ini saja.

Langkah keempat lakukan limitasi bandwidth untuk traffik http ini, saya menggunakan "simple queue".



Setelah selesai klik OK, lalu coba kunjungi kembali website lain seperti kaskus.co.id atau indowebster.com lalu perhatikan transfer rate di queue yang telah kamu buat.


Dari gambar diatas (Limit HTTP) terlihat yah bahwa kita telah berhasil melakukan limitasi terhadap traffik http.

Selamat mencoba semoga berguna. 

Thursday, March 26, 2015

Jenis-Jenis Virtual Machine Migration di VMware vSphere

Halo gan kali ini saya mau sedikit sharing tentang jenis-jenis migrasi virtual machine di platform vmware vsphere, buat yang masih bingung saya coba kasih pengertian dulu yah apa sih yang dimaksud virtual machine migration.

Migrasi/Migration Virtual Machine adalah teknik yang memungkinkan sebuah virtual machine itu dipindahkan dari sebuah host/datastore ke host/datastore yang lain. Nah, saya kasih gambaran sederhana kira2 seperti dibawah ini loh proses migrasi virtual machine itu :


Penjelasan :
Dari gambar yang saya buat diatas kira ada dua host yang masing-masing memiliki 3 buat virtual machine, Host-1 memiliki VM-A, VM-B, VM-C dan Host-2 memiliki VM-D,VM-E, VM-F. Pada skenario diatas VM-A dipindahkan dari Host-1 ke Host-2. Seperti ini lah kira2 gambaran sederhana bagaimana proses migrasi virtual machine bekerja.

Nah kita bakal berkenalan nih dengan jenis-jenis virtual machine migration di vSphere, jenis yang paling umum digunakan di dunia persilatan untuk migrasi virtual machine dalam platform vSphere itu ada 5 jenis, yaitu :
  • Cold Migration
  • Suspended Migration
  • vSphere vMotion (Change Host)
  • Storage vMotion 
  • Enhanced vSphere vMotion

Dari kelima jenis diatas saya akan coba memberikan gambaran dan penjelasan sederhana dari masing-masing jenis migrasi tersebut.

Cold Migration
Apaan sih cold migration? Cold migration adalah aktifitas memindahkan virtual machine dari sebuah host/datastore ke host/datastore yang lain dalam kondisi virtual machine dalam keadaan 'power off'. Jadi intinya kalo mau melakukan cold migration, shutdown dulu virtual machine yang mau dipindahin lalu migrasikan setelah virtual machine tsb mati. Pertanyaan selanjutnya kapan kita harus menggunakan cold migration? Apa keuntungannya? Cold migration digunakan biasanya untuk memindahkan virtual machine yang masih terasosiasi dengan perangkat virtual seperti disk virtual, selain itu cold migration sangat berguna apabila agan mau memindahkan virtual machine dari sebuah 'Datacenter Virtual' ke 'Datacenter Virtual' lainnya.

Suspended Migration
Jenis migrasi ini adalah jenis migrasi yang sama dengan cold migration, hanya saja apabila state di cold migration adalah 'power off' namun kalo di suspended itu state virtual machinenya adalah 'suspend' bukan 'power off'. Kapan harus make suspend migration? Kondisi yang sama bisa diterapkan ketika menggunakan suspend atau cold migration. Namun, saya sendiri lebih seneng cold migration ketimbang suspended migration, sepertinya suspend migration hanya memfreeze state virtual machine saja, oleh sebab itu cold migration sepertinya jauh lebih aman karna saya takut ketika aktifitas migrasi malah membuat file di dalam virtual machine tsb menjadi corrupt. Hehe

VSphere vMotion (Change Host)
Kalo dari kedua jenis sebelumnya kita ngebahas jenis migrasi yang mengharuskan sebuah virtual machine dalam keadaan off/suspend, maka pada jenis yang kali kita berkenalan sama fitur yang memungkinkan sebuah virtual machine di pindahkan dari sebuah host satu ke host yang lainnya dalam keadaan ON, atau istilah kerennya itu live migration

Saya mau kasih gambaran dulu gimana sih vMotion bekerja, coba perhatikan gambaran dibawah.


Dari gambar diatas kita bisa liat virtual machine dipindahkan dengan fitur vMotion ini dalam keadaan ON dari satu host ke host lainnya, nah kekurangan vMotion ini adalah memang untuk berhasil melakukan fitur ini temen-temen harus menggunakan shared storage. Coba liat gambar dibawah ini :


Kebayang kan? Mungkin bakal ada hambatan teknis memang apabila menggunakan fitur vMotion yang ini, intinya kalo mau melakukan vMotion jenis yang ini storage yang digunakan oleh kedua host harus bertipe shared storage. Selain itu ada syarat lain yang harus diperhatikan apabila ingin berhasil melakukan vMotion dengan mulus dan semringwing :
  • Virtual Machine gak boleh terconnected ke virtual device seperti USB, Floopy Drive, CD-ROM, Raw Device Mapping.
  • Virtual Machine gak boleh di konfigurasi sebagai CPU affinity. CPU affinity membuat sebuah VM gak bisa berpindah tempat.
  • Fitur vSphere vMotion harus bisa ngebuat swap file dulu di host tujuan, oleh sebab itu perhatikan network yang established antara kedua host dengan baik.
  • Virtual Machine gak boleh terconnected ke internal standard switch (virtual switch dengan zero uplink adapter).
  • Interface network yang digunakan minimal adalah interface yang berukuran 1GB di kedua host, hal ini merupakan salah satu hardware requirement, kalo pake 1GB ethernet engga pasti fail.

Storage vMotion
Fitur vMotion yang saya jelasin sebelumnya itu memindahkan VM dari satu Host ke Host yang lainnya, kalo Storage vMotion adalah fitur yang digunakan untuk memindahkan posisi Virtual Machine dari sebuah datastore ke datastore lainnya. Coba perhatikan gambar dibawah ini :


Storage vMotion menggunakan I/O mirroring architecture untuk mencopy disk block antara sources dan destination. Proses Storage vMotion melakukan single pass dari sebuah disk lalu mencopy semua block device dimana vm itu berada dari source datastore ke destination datastore. Jika blok berubah setelah proses copy, maka block akan di sinkronisasi dari source ke destination melalui mirror driver. Proses ini sebenernya merupakan algoritma yang dikembangkan vmware yang membuat proses perpindahan menjadi lebih cepat dengan cara single pass.

Enhanced vSphere vMotion
Fitur ini adalah salah satu fitur kesukaan saya dan biasanya paling sering digunakan di dunia persilatan, apabila di fitur vMotion yang saya jelasin sebelumnya harus menggunakan shared storage, maka Enhanced vSphere vMotion memungkinkan kita untuk memindahkan sebuah virtual machine dari sebuah host ke host yang lain meskipun tanpa menggunakan shared storage. Fitur jenis ini merupakan enhancement dari fitur sebelumnya yang dilakukan oleh vmware dalam produk mereka. 

Coba perhatikan gambar dibawah ini deh :


Secara logical kita bisa liat dari gambar diatas bahwa VM-A di pindahkan dari Host-1 yang tersimpan di Storage Host-1 ke Host-2 dan disimpan di dalam Storage Host-2. Ada beberapa syarat agar agan berhasil dengan mulus semringwing melakukan Enhanced vSphere vMotion ini.
  • Kedua host diatas (Host-1 & Host-2) harus dimanage dengan vCenter Server yang sama.
  • Kedua host diatas harus merupakan bagian dari Data Center Virtual yang sama. 
  • Kedua host diatas harus dalam satu L2 network (Interface VM kernelnya) dan switch yang sama apabila menggunakan VDS.
Kalo mau cobain Enhanced vSphere vMotion silahkan liat tulisan yang saya pernah buat sebelumnya disini.

Abis baca jenis-jenis diatas kebayang yah perbedaannya? Sebagai perbandingan saya lampirin juga nih buat agan tabel perbandingan dari jenis-jenis yang udah saya jelasin diatas.


Nah semoga bermanfaat yah buat agan hehehe.

Monday, March 23, 2015

Implementasi Standard Security Hardening di Linux

Pada sistem yang udah besar dan lebih kompleks maka melakukan proteksi terhadap server menjadi sangat penting untuk melindungi data yang kita miliki terutama dari serangan hacker/cracker yang jahil. 

Dibawah ini saya coba share sedikit yah tips untuk implementasi standard hardening di OS linux.

  • Gunakan Fitur 'Komunikasi Data' yang Sudah Terenkripsi.
    Sering di antara kita melakukan aktifitas transfer data tanpa memperhatikan keamanan dari aktifitas itu sendiri, seperti contoh meremote router dari bandara dengan Telnet, dsb. Saran saya untuk alasan security untuk aktifitas remote gunakan 'SSH' karna SSH memiliki fitur enkripsi yang setidaknya mampu melindungi password agan dari serangan seperti Sniffing dan Man-In-The-Middle-Attack.

    Gunakan Fitur yang Sudah Support Enkripsi pada Aktifitas Transfer Data 
    Gak jauh beda sih sama yang sebelumnya cuma saran saya usahakan untuk mengunakan SCP, Rsync, atau SFTP untuk transfer file antar node. Hal ini disebabkan karna command2 tersebut lebih aman ketimbang FTP karna SCP dan SFTP melakukan SSH dulu baru mentransfer file agan ke node tujuan dan ini menjadikan aktifitas transfer data menjadi lebih aman

    Hindari Menggunakan FTP, TFTP, Telnet, RLogin/Rsh Services
    Agan boleh aja melakukan telnet, FTP, dsb kalo masih di internal network agan meskipun enggak recommended, namun alangkah lebih baiknya gak usah digunakan sama sekali. Gunakan SSH untuk menggantikan telnet, gunakan SFTP untuk menggantikan FTP. Itu lebih baik untuk melindungi credentials akun agan.
    Bahkan kalo bisa dalam kondisi tertentu apus aja gan dengan command dibawah ini :
    # yum erase tftp-server telnet-server rsh-serve


  • Jangan Install Sembarangan Software/Services
    Kalo bisa install services/aplikasi yang bener2 dibutuhkan oleh agan di server agan tsb untuk meminimalisasi vulnerability. Gak mau kan kena malware atau aplikasi jahat semacamnya gara2 install aplikasi yang enggak jelas? Kalo bisa malah install paket-paket beserta dependencies agan dari source repository yang terpercaya!


  • Gunakan Security Extensions 
    Pada kebanyakan OS Linux ada security extensions bawaan linux yaitu SELinux, implementasi SELinux biasanya berbasis file context. Meskipun rata-rata di dunia persilatan implementasi SELinux jarang digunakan karna ribet, tapi ini bisa menjadi salah satu solusi kalo agan memang paranoid.

    Standard Implementation Notes :

    Konfigurasi selinux bisa diliat dari /etc/selinux/config Gunakan getenforce utk mengetahui selinux dalam keadaan enforcing/permissive/disabled.
    Gunakan command setenforce 0 untuk set ke permissive.
    Gunakan command setenforce 1 untuk set ke enforcing.


  • Solid Password Policy & Password Aging
    Apabila agan membuat password yang secure untuk sebuah system maka buatlah password yang terdiri dari kombinasi huruf besar-kecil, karakter dan angka. Konon katanya SSH bekerja dengan cara One-Way sehingga mungkin the only way untuk membobol server agan yang dengan cara brute-force (kalo celah lain sudah ditutup yah). Selain itu gunakan password aging, apa itu password aging? Password aging memungkinkan password yang digunakan oleh user-user lain itu kadaluarsa. Hal ini sangat penting loh, kita mana tau kalo sewaktu-waktu ada engineer yang udah resign terus jail matiin services yang sedang production? Who knows?

    Standard Implementation Notes :

    Gunakan command chage -M 99999 'username' untuk disabled password aging.
    Contoh, command chage -m 0 -M 120 -W 10 -I 20 'username'. Parameter yang bisa agan gunakan antara lain :
    -m : Nunggu x hari baru agan bisa ganti password
    -M : Masa aktif password
    -I : Masa tenggang password
    -E : Akun expired
    -W : Warning sebelum M days
    -d : Merupakan parameter last day, agan bisa setting jadi 0 kalo mau force user utk ganti password ketika mereka login lagi.


  • Cegah User Untuk Menggunakan Password yang Sama 
    Nah biasanya implementasi ini digunakan kalo password user sudah expired dan harus di recurring. Biasanya sangat recommended bahwa user sebaiknya tidak menggunakan password yang sama dengan yang dia gunakan sebelumnya.

    Standard Implementation Notes :

    Pada OS CentOS agan bisa ikuti panduan dibawah ini :

    - Pertama buat backup
    # cp /etc/pam.d/system-auth /root/system-auth.bak
    - Edit file system-auth
    # vi /etc/pam.d/system-auth
    ###Tambahin parameter dibawah ini ####
    password sufficient pam_unix.so use_authtok md5 shadow remember=13

    Setelah selesai quit dan save. Nah, konfigurasi diatas membuat OS linux dapat mengingat 13 password terakhir yang digunakan oleh user.


  • Pastikan Hanya User 'ROOT' yang memiliki UID 0
    Ini penting banged gan. pastikan cuma user root saja yang berhak memiliki akses keseluruhan sistem. Gunakan command seperti di screenshot dibawah ini :


    # awk -F: '($3 == "0") (print)' /etc/passwd
    Gimana kalo ada user selain root? Hapus gan! Gak mau kan jadi korban backdoor? hehe


  • Pastikan Semua Akun Memiliki Password
    Gunakan command ini gan
    # awk -F: '($2 == "") {print}' /etc/shadow


    Apa yang harus dilakukan kalo ada akun yang gak punya password? Agan bisa lakukan lock thdp akun tsb.
    # passwd -l accountName

  • Disable Root Login dan Ganti Port Standard Listen SSH 
    Biasanya ada juga hacker yang melakukan brute force dengan username root, gamau juga kan jadi korban beginian? Maka dari itu lakukanlah disabled root login. Gunakan sudo untuk maintain privilege user terhadap command2 tertentu. Selain itu port standard yang digunakan untuk SSH adalah 22, kalo bisa ganti dengan yang lain. Caranya adalah :

    # vi /etc/ssh/sshd_config###Ganti 2 parameter dibawah ini ###
    PermitRootLogin no
    Port 2210  ##2210 bisa diganti dengan angka favorit agan##


  • Limit User SSH 'Access'
    Ini sih kayanya cara strict gan cuma patut dicoba, misal yang boleh ssh ke sistem agan cuma arif dan jono maka kita bisa menambahkan/mengedit parameter di /etc/ssh/sshd_config dengan cara seperti dibawah ini :

    # vi /etc/ssh/sshd_config
    ###tambahkan/edit parameter dibawah ini####
    AllowUsers root arif jono


  • Kalo Bisa Gunakan Centralized Authentication Services
    Kalo di environment mikocok ada Active Directory kan? Di linux agan bisa menggunakan Open-LDAP dan kerberos. Dengan adanya centralize autentikasi service setidaknya user2 di tiap node jadi lebih mudah dikontrol ya gak sih? hehe


  • Pisahkan File dan Disk Partisi
    Maksud saya kalo bisa pisahkan partisi2 penting untuk system dan kebutuhan user. Sangat recommended direktori /var/ dan /home dibuat dengan partisi yang terpisah. Kalo perlu dan mau lebih strict bisa gunakan LUKS yang merupakan fitur untuk mengenkripsi file system.
    Selain itu kalo bisa untuk services yang sifatnya digunakan oleh orang banyak seperti FTP pisahkan saja dengan membuat partisi baru. Misal /ftp lalu mounting ke partisi baru agan, jangan lupa dibuat persistent dengan mengedit /etc/fstab yah dan yang paling penting jangan permission filenya juga harus diperhatikan yah.


  • Disabled IPv6
    Kalo enggak dibutuhkan lebih baik dimatiin, kenapa saya recommended untuk matiin? Karna kebanyakan dari kita kan masih menggunakan IPv4, bukan hal yang mustahil kan hacker ato orang iseng ngirim bad-traffic yang isinya macem-macem ke server kita melalui network IPv6.

    Langkah untuk mematikan IPv6 di CentOS :
    # vi /etc/modprobe.conf

    ###tambahin line dibawah ini#####
    install ipv6 /bin/true

    Setelah itu edit /etc/sysconfig/network
    # vi /etc/sysconfig/network
    ###Update/add line dibawah ini : ####

    NETWORKING_IPV6=no
    IPV6INIT=no


    Lalu reboot.

    Setelah itu pastikan bahwa IPv6 telah disabled.

    # lsmod | grep ipv6
    # ifconfig


  • Install IDS (Instrusion Detections System)
    Ini tahap terakhir gan, agan bisa gunakan IDS untuk memproteksi sistem agan. Banyak IDS yang gratis seperti snort dsb. 

Semoga ada pencerahan yah gan hehe.

Saturday, March 21, 2015

Broadcast Domain Dalam Jaringan Komputer

Pada artikel sebelumnya saya membahas tentang segmentasi jaringan, kali ini mari kita lanjut membahas mengenai apa itu broadcast domain. Dalam real-world scenario, broadcast storm dalam sebuah jaringan adalah salah satu musuh terbesar engineer sebab hal ini dikarenakan broadcast yang tidak terkontrol dapat mempengaruhi performance jaringan menjadi lebih buruk.

Dalam jaringan komputer broadcast itu artinya adalah pengiriman data dari sebuah host/komputer ke seluruh komputer di dalam sebuah jaringan, dan ini sangat mungkin terjadi pada jaringan yang dibentuk dengan menggunakan teknologi ethernet. Broadcast yang berlebihan akan membuat jaringan anda tergradasi dan jatuh performancenya, pada dasarnya broadcast dalam sebuah jaringan tidak dapat dihindari, oleh karna itu segmentasi menjadi penting ketika mendesain sebuah jaringan. Untuk lebih memahami apa itu broadcast dalam sebuah jaringan perhatikan gambar dibawah ini :


Dari gambar diatas terlihat satu komputer melakukan broadcast kepada 3 komputer dalam sebuah jaringan.
Lalu bagaimana bentuk broadcast domain? Bagaimana broadcast terjadi dalam real-world scenario? Nah coba perhatikan topologi dalam jaringan yang jumlah host/komputernya lebih banyak dibawah ini.



Dari gambar diatas terlihat host/komputer A mengirim data dan semua komputer dalam satu jaringan tersebut menerima broadcast dari host/komputer A. Dalam kasus diatas jumlah broadcast domain dalam network tersebut adalah 1 (satu) broadcast domain. Bagaimana contoh sebuah jaringan yang memiliki lebih dari 1 (satu) broadcast domain? Coba perhatikan contoh topologi dibawah ini.


Dari topologi diatas temen-temen bisa lihat ketika komputer A dalam jaringan 1 mengirim data, yang terkena broadcast hanya komputer2 yang ada di jaringan 1 saja, komputer yang ada di jaringan 2 tidak akan terkena broadcast dari komputer A di jaringan 1. Pada kasus diatas, router berperan memecah broadcast domain menjadi 2 (dua)broadcast domain. Meskipun terpisah menjadi jaringan yang berbeda, komunikasi data antara semua komputer diatas masih tetap dapat dilakukan.
Gimana teman-teman? Semoga dapet pencerahan yah setelah membaca ini. 
Semoga berguna yah..

Friday, March 20, 2015

Manajemen Access Control/User Privilege dan Konsep Identity Sources di VMware vCenter Server

Sekedar sharing sebelumnya mungkin ada temen-temen yang belum tau bahwa ketika kita menginstall vcenter server di windows server, pada saat instalasi bagian SSO kamu akan diminta mengisi form username & password dan setelah selesai akan terbuat domain vsphere.local. Nah domain tersebut adalah domain yg digunakan untuk super admin yang memaintain infrastruktur vmware kita dan biasanya digunakan untuk menentukan user privilege tiap2 administrator yang mengakses vcenter.
Nah saya akan coba menjelaskan 2 hal yaitu konsep identity sources dan implementasi manajemen user privilege

Sekilas Tentang Identity Resources 

Sebelumnya saya mau share sedikit arsitektur sederhana yang paling umum digunakan di dunia real.


NOTES :
Meskipun kamu bisa mengakses vcenter dengan vsphere-client namun menggunakan web-browser dan agentnya google-chrome adalah yang paling recommended,  mengapa mengapa lebih baik mengakses vcenter menggunakan web browser? Karna tab fitur yang tampil akan lebih lengkap ketimbang vsphere-client.

Nah balik lagi ke gambar diatas kamu akan mengakses vcenter namun pada proses autentikasinya sebelum kamu berhasil login sebenernya vcenter akan bertanya kepada SSO apakah user yang kamu gunakan untuk login valid atau tidak valid.

Coba perhatikan gambar dibawah ini :


Penjelasan Singkat :
Gambar diatas adalah model paling umum pada infrastruktur yang menggunakan environment vmware, terlihat terdapat 3 buah identity sources yaitu Active Directory Domain, Local User, Vsphere.local.
Nah Local User dan Vpshere.local akan tercipta secara default apabila kamu sudah berhasil menginstall vcenter.

Ketika user mengakses vcenter server, request tsb akan diteruskan ke modul yang menghandel SSO (Single Sign On). Modul inilah yang mengecek ke tiap2 identity sources apakah username dan password yang kamu masukan valid atau enggak. Apabila valid maka user akan berhasil login dan di redirect kehalaman admin home vcenter dan apabila tidak valid maka user tidak bisa login. 

Manajemen User Privilege

Nah apa sih hubungan manajemen user privilege sama identity sources ini? Sebenernya sih cuma biar temen-temen paham aja bahwa user-user yang bisa dikenali oleh vcenter ini sources itu yang paling umum adalah dari 3 tempat tersebut sehingga kamu bisa lebih mempunyai gambaran untuk menentukan privilege dari masing-masing user tsb.

OBJECT ORIENTED ENTITY RESOURCES
Nah balik lagi ke gimana cara manajemen user privilege di vcenter, kelebihan fitur vcenter dalam memanage privilege user adalah kemampuan memanage tiap-tiap resources-nya secara object oriented. Dalam artian seperti ini, ketika kamu mengakses vcenter tentu akan banyak objek contoh seperti dibawah ini :


Penjelasan singkat dari gambar diatas kira-kira seperti ini, Arif sebagai administrator junior bisa saja mengakses semua turunan resources dari Data Center Latihan, namun kita sebagai 'super administrator' juga bisa membuat arif  tidak bisa mengakses VM Prod03-2 misalnya dikarenakan sifatnya yg critical, seperti itulah kira2 gambaran yang saya maksud object oriented.

CONTOH IMPLEMENTASI

Sekarang saya coba kasih contoh manajemen privilegenya yah.
  • Setelah berhasil instalasi Vcenter coba masuk ke vcenter kamu lalu login sebagai administrator@vsphere.local

  • Setelah itu ke tab Administration -> Configuration, di tahap ini kamu bisa liat jumlah identity sources yang environment kamu miliki.





    Keliatan kan kalo di tab environment saya ada 3 identity sources hehe...
  • Setelah tau identity sources nya coba buat group, misal saya buat group namanya Bermain. Sekarang ke tab 'Users and Groups' lalu ketik tombol hijau untuk tambah group dengan nama 'Bermain'



  • Masih di tab yang sama, add member untuk group bermain, di contoh ini saya masukan user dari Identity Source Active Directory.



  • Setelah selesai sekarang saatnya memberi tahu object mana saja yang bisa dimanage oleh group bermain. Sebagai contoh dibawah ini saya akan memberi grup bermain dengan privileges administrator.

    Dari home tekan tab vCenter -> Host and Clusters akan muncul tab seperti dibawah ini, klik kanan pada object tsb. Di contoh ini karna di environment saya belum saya konfig apa2 ya saya beri grup bermain privilege administrator ke object vcenter.arifzulfikar.local









Setelah selesai klik OK maka group bermain dengan anggota arif@arifzulfikar.local dan eci@arifzulfikar.local bisa mengakses semua object di vcenter.arifzulfikar.local dengan privilage Administrator.
Semoga bermanfaat. :)