Server Management & Source Control dengan Puppet

| Posted in Other, Project, Puppet

Seminggu lalu aku mulai menekuni Puppet, dan ingin menjadi Puppet Master. Puppet adalah pahlawan bagi system admin, friendly tools, and my best friend. Puppet merupakan software open source yang dapat berjalan pada cross platform baik unix,linux,windows,mac,sun solaris. Puppet merupakan open source data center automation and configuration management framework. Jika saya mempunyai ratusan server di data centre atau ratusan pc desktop, kita cukup mengontrol semuanya dengan puppet. Anda bisa mengatur perubahan system,konfigurasi,troubleshoot,maintain,deploy dari satu titik menggunakan puppet. Puppet digunakan juga oleh Twiter, Sun Microsystems, Google Office,dsb.  Pada Sun Microsystems mereka menggunakan puppet untuk 650 Sun servers di seluruh U.S. data centers yaitu Menlo Park, CA, San Francisco, CA dan Las Vegas, NV.  dan bertanggung jawab juga untuk konfigurasi  software dan operating system server termasuk Internet domains pada sun.com, java.com, mysql.com, openoffice.org

Saya memakai puppet untuk konfigurasi beberapa server di data centre IIX, dan sebelum ke server produksi saya habiskan berjam-jam untuk mencoba pada test server saya. Berikut instalasi dan konfigurasi basic saya dalam memulai berkenalan dengan puppet :

Test Server :

Fedora 13 : puppet-master.gtoms.lab (192.168.1.75)
Ubuntu 10.4 : puppet-client.gtoms.lab (192.168.1.71)

INSTALL PUPPET MASTER :

[root@gtoms gtoms]# uname -a
Linux gtoms.lab 2.6.33.5-124.fc13.i686 #1 SMP Fri Jun 11 09:48:40 UTC 2010 i686 i686 i386 GNU/Linux

127.0.0.1       gtoms.lab       localhost.localdomain   localhost
192.168.1.75    puppet-master.gtoms.lab  puppet-master
192.168.1.75    puppet.gtoms.lab  puppet
::1             localhost6.localdomain6 localhost6

Read the rest of this entry »

Linux APC UPS with apcupsd

| Posted in CentOS, Other, Project

Saya punya APC Back-UPS CS 650 digunakan pada salah satu server virtual untuk kebutuhan sehari-hari.  Sebagai tools power management dan controlling UPS saya menggunakan apcupsd APC UPS software yang bisa diinstall pada linux Centos 5.4, dengan apcupsd saya dapat mengetahui masalah seperti power failure,battery dan sebagainya.

Berikut proses instalasi dan konfigurasi apcupsd pada Linux Centos 5.4 :

yum install apcups*

vi /etc/apcupsd/apcupsd.conf
UPSCABLE usb
UPSTYPE usb
DEVICE
LOCKFILE /var/lock
SCRIPTDIR /etc/apcupsd
PWRFAILDIR /etc/apcupsd

Read the rest of this entry »

Interview kedua dengan Google

| Posted in Google Inc., Other

Setelah menunggu seminggu, akhirnya saya diberitahu untuk masuk ke tahap II interview dengan perusahaan GOOGLE. Selanjutnya melalui email disepakati tanggal dan jamnya, dan aku punya waktu 3 hari mempersiapkannya dimana materi interview tahap II akan lebih banyak ke pertanyaan technical. Pihak recruiter juga memberitahukan materi pertanyaan akan seputar :

TCP/IP, UNIX, LINUX, System Administrator, Math, Data-Structures, Algorithms, C++, JAVA, perl, bash, mysql.

Kalau dilihat dari materi diatas cukup banyak dan wajar Google mengklaim karyawannya adalah expert dan Guru di bidangnya masing-masing. Untuk  materi TCP/IP, UNIX, LINUX, System Administrator, perl, bash, mysql, Math, Data-Structures saya memiliki basic yang kuat, tetapi untuk materi Algorithms, C++, JAVA saya tidak pernah berkutat didalamnya jadi perlu belajar lagi. Proses interview tahap kedua hanya 60 menit dan waktu saya hanya 3 hari untuk mempersiapkannya.  Waktu singkat saya pakai mempelajari dasar Algorithms, C++, JAVA dan Data-Structures.

Akhirnya hari interview tahap II tiba, dengan kemampuan dan usaha saya coba jawab satu persatu pertanyaan mereka. Ada banyak sekali pertanyaan sekitar 25 question lebih ditanyakan, kalau saya jawabnya benar pasti reaksi mereka bilang ‘Great’ atau ‘Good’ nah kalau jawabnya kurang benar keluar suara ‘hmmm’ atau diam saja melanjutkan ke pertanyaan selanjutnya.  Pertanyaan TCP/IP, UNIX, LINUX, System Administrator, perl, mysql relatif bisa saya jawab benar ada pertanyaan basic dan ada pertanyaan advanced, hampir semua pertanyaannya pernah saya pelajari dan bagian dari job pekerjaan saya selama ini,  jadi pengalaman memang penting dan menjadi guru yang utama. Jika anda belum pernah jadi system administrator unix/linux selama lebih dari 3 tahun jangan harap bisa menjawab pertanyaan mereka.

Untuk materi Math, Data-Structures, Algorithms, sepertinya tidak terlalu baik menjawabnya. Contoh dari Big-O notation, sorting, balance, integers, tree, Hashtables, n-choose-k problems, dan lainnya agak sulit dan saya cenderung bingung.

Untuk materi C++,bash, dan Java tidak ditanyakan sampai akhir interview tahap II, Recruiter Google mengatakan akan memberitahukan hasilnya seminggu setelah pembicaraan dengan management.

Saat artikel ini saya tulis saya sudah mendapat jawabannya dan pihak Google dan akan melanjutkan interview tahap III, seminggu kemudian dengan tambahan media menggunakan Google Docs dan Gtalk.  Materi  C++,bash, dan Java juga akan diikutkan disini. Perjalanan menuju Silicon Valley- Mountain View CA sudah setengah jalan, pengalaman baru bagi saya di interview perusahaan sebesar GOOGLE.  Karena Tahap III merupakan tahap akhir yang menentukan  untuk calon karyawan diluar USA, sebelum diberangkatkan ke kantor pusat mereka untuk test tahap akhir.

Interview pertama dengan Google

| Posted in Google Inc., Other

Setelah email-emailan dengan Google People Operations, disepakatin tanggal dan jam interview pertama dengan mereka, posisi yang mereka tawarkan adalah System Engineer-Unix System/Applications Administrator, Google.com – Mountain View.

Responsibilities:

-Be involved in every facet of Google’s production site.
-From design issues to troubleshooting, from performance analysis to capacity planning, from DNS to networking to application [mis]behavior, you will be ultimately responsible for making sure that Google always works.
-Wear many hats: first responder, performance analyst, service architect, system/database administrator, capacity planner, tools developer, monitoring expert, and technical evangelist, for Google’s entire production site.

The role:

As a seasoned Unix jockey, database wizard, performance specialist, networking guru and code slinger you will work to solve the next cool problem in a fast-paced and engineering-driven environment. You will be challenged to write scripts which perform practically the entire job you once held earlier in your career. In this role you must possess the ability to handle periodic on-call duty as well as out-of-band requests.

Persiapan interview pertama saya lebih banyak berlatih berbicara dalam bahasa Inggris, menjelang jam yang ditentukan saya save nomer telepon Google untuk memastikan adalah benar kantor Google yang menelpon.  Saya siapkan juga berkas CV,Project, dan laptop terkoneksi ke internet. Akhirnya telepon saya berdering dan muncul Google, berarti benar kantor Google yang menelpon dan tepat pukul 24:00 wib, di California pukul 10:00 AM PDT, yang menelpon ramah banget dan mengenalkan diri terlebih dahulu.  Phone interview pertama hampir 1 jam lebih banyak bertanya keingintahuan Google tentang saya, khususnya dari pengalaman pekerjaan, belum ada pertanyaan teknis atau skill.

Read the rest of this entry »

Google Engineering Opportunity

| Posted in Google Inc., Other

Seperti biasa saya selalu memeriksa email di account GMAIL. Ada beberapa email yang masuk dan saya baca satu persatu secara cepat.  Ada email masuk dengan subject “Google Engineering Opportunity”, baca sekilas lalu saya tutup lagi, dan membaca email yang lain.  Balik ke email  dengan subject “Google Engineering Opportunity” saya belum terlalu percaya sehingga berasumsi itu semacam email spam jadi saya abaikan saat itu. Lagipula saya tidak pernah kirim(apply)  Curriculum Vitae(CV) saya ke perusahaan sebesar GOOGLE Inc.

Berselang beberapa hari ketika saya hendak mencek email yang lama saya tergerak untuk membaca kembali email berjudul  “Google Engineering Opportunity”, dan ternyata email itu benar dari  Engineering Staff (Recruiter) nya Google Inc.,  Saya pastikan emailnya menggunakan domain google.com,  dan dikirim melalui account Linkedin saya. Dari body sebenarnya cukup meyakinkan ini bukan email spam. Nomer telepon juga saya cek benar dimiliki Google Inc.  Saya sempat terdiam  dan garuk-garuk kepala, balas gak yah ?

Read the rest of this entry »

Setup Certification Authority dengan EJBCA,OCSP,JBOSS,Java,OpenLDAP

| Posted in Certificate Authority, Debian, Other, PKI, Project, Security

Jika diminta membuat Public Key Infrastruktur(PKI) maka saya akan pakai EJBCA(Enterprise Java Bean Certificate Authority) sebagai alternatif pertama dan Dog Tag sebagai alternatif kedua, karena berbasis open sources dapat digunakan pada sistem operasi Linux.  PKI yang berbasis Windows seperti PKI Windows 2003 Server, juga memiliki kelebihan, tapi masih lebih unggul EJBCA karena EJBCA memiliki kelebihan di sisi multiplatform operating system, aspek kriptografis maupun administrasi.

Kali ini tutorial pada salah satu mesin produksi menggunakan EJBCA pada Linux Debian. Adapun requirement yang dibutuhkan dalam instalasi ini adalah :

-Linux Debian 5.0.4
-EJBCA 3.9.6, CA dan OCSP deploy.
-JBOSS 5.1.0
-Java jdk 6 update 19
-JCE Unlimited Strength Jurisdiction Policy Files 6
-Apache Ant 1.7.0
-OpenLDAP: slapd 2.4.11

Instalasi dan Konfigurasi :

Linux Debian 5.0.4 dengan kode Lenny sudah terinstall dengan standart system. EJBCA,JBOSS,JAVA JDK,JCE harus didownload dari situs nya dan diinstall manual di Debian, Untuk Ant,OpenLDAP menggunakan apt-get.

svr:/home/gtoms# wget  http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u19-linux-i586.bin?BundledLineItemUUID=0AdIBe.liu0AAAEnpPtoLfW6&OrderID=kExIBe.lavIAAAEnmftoLfW6&ProductID=8ihIBe.nLjEAAAEnh3cZVnKo&FileName=/jdk-6u19-linux-i586.bin

Read the rest of this entry »

Membuat PKI Certificate Authority(CA)

| Posted in Certificate Authority, Debian, Other, PKI, Security

Setelah cukup lama mengolah server-server linux utuk segmentasi Internet Service Provider/IT seperti DNS,SMTP,Webserver,Radius,Proxy,Mysql,Routing,Bandwidth Management,dsb rasanya perlu dikembangkan ke hal lain yang masih seputar open sources dan bersifat enterprise.

Di Indonesia sedikit rasanya yang bermain dengan Public Key Infrastuktur yang dapat menghasilkan Certificate Authority(CA).  Untuk itu saya kembali berkutat tentang konsep dan teknik kriptografi kunci publik. Tentu hal ini ada motivasinya, kalau tidak dan hanya sebatas riset saja pastilah lupa lagi. Kalau kuliah di Departemen Teknik Informatika ITB materi ini ada pada bahan kuliah Kriptografi. Tapi hanya membahas secara umum definisi dan konsep-konsep saja. Implementasi/instalasinya sangat sedikit di internet, mungkin karena tidak tau manfaatnya atau mahal ilmunya pada sungkan nulis di internet. Untuk itulah saya mencoba berbagi melalui blog ini, apalagi masih berbau linux sangat sedap untuk di deploy pada server testing dan kemudian ke server produksi.

PKI adalah Public Key Infrastructure sebuah infrastruktur sekuriti yang diimplementasikan menggunakan konsep dan teknik kriptografi kunci publik.  Public Key tersebut akan diberikan sertifikat digital  oleh sebuah sistem/perusahaan CA (Certificate Authority) dan merupakan institusi terpecaya. Biasanya situs-situs perbankan seperti klikbca.com ib.bankmandiri.co.id dan lainnya memiliki sistem tersebut. Untuk perusahaan CA yang cukup terkenal seperti verisign.com thawte.com

Nah dalam tuorial ini saya membangun sistem Certificate Authority seperti yang dimiliki verisign.com thawte.com atau lainnnya yang dapat digunakan untuk sebuah perusahaan yang ingin memiliki sistem CA sendiri. Pengembangannya sampai implementasi Online Certificate Status Protocol(OCSP).

Software enterprise untuk PKI Certificate Authority adalah EJBCA (Enterprise Java Bean Certificate Authority) dibangun menggunakan J2EE technology. EJBCA dapat berfungsi sebagai unruk mengauthentikasi user dalam mengakses  intranet/extranet/internet resources, Secure communication with SSL servers and SSL clients, Smart card logon to Windows and/or Linux, Signing and encrypting email,VPN connections by issuing certificates to your VPN routers such as OpenVPN, Cisco, Juniper etc, Client VPN access with certificates in users VPN clients, Single sign-on by using a single certificate to secure logon to web applications, Creating signed documents, Issue citizen certificates for access to government resources, used in passports etc, Create CVCAs and DVs and issue CV certificates (CVC) to Document Verifiers and Inspection Systems for EU EAC ePassports. Konesp jaringannya bisa dilihat di images diatas. Nilai plusnya kita bisa menggunakan smart card pada PKI ini.

Kita mulai instalasi dan konfigurasi, software yang dibutuhkan :
-Sistem operasi Linux GNU Debian
-Java JDK 1.5 – Java 2 Platform Standard Development Kit.
-Apache Ant – Java Build Utility, used to compile and build Java programs.
-JBoss 4.0.5 – J2EE Application Server EJBCA download
-Mysql
-EJBCA dan OCSP external.
-OpenLDAP.
-OpenSSL.
-Apache Project.
-Apache mod_ssl.

Kondisi sistem operasi Linux Debian 5 sudah terinstall dengan update terakhir.

Install JAVA JDK ,Ant

ejbca:/home/gtoms# apt-get install openjdk-6-jdk ant ant-optional

Read the rest of this entry »

Top 5 Best Linux Firewalls

| Posted in Other, Security

TGS

Security Support for Debian GNU/Linux 4.0 to be discontinued

| Posted in Other, Security

Per tanggal 15 februari 2010 pengembang/developer Debian GNU/Linux 4 alias Etch akan menghentikan bantuan security update. Maksudnya adalah Debian GNU/Linux 4 yang sampai sekarang telah berumur 3 tahun akan dihentikan pengembangannya dan update-update terhadap software bug yang ada didalamnya. Hal ini dilakukan karena pengembang sistem operasi Debian GNU/Linux akan fokus pada Debian GNU/Linux 5.0 alias Lenny yang sudah release 14 Februari 2009.  Selanjutnya Debian GNU/Linux Etch akan masuk dalam kategori old distribution.

Jika ada pemakai yang masih menggunakan Debian GNU/Linux 4 segera upgrade menjadi Debian GNU/Linux 5.

Untuk proses upgrade dari Etch ke Lenny bisa dilakukan dengan cara :

Merubah mirror Etch ke Lenny, kalau di Indonesia ambil mirror  yang terdekat saja, edit file /etc/apt/sources.list :

deb http://kambing.ui.ac.id/debian/ lenny main contrib non-free
deb http://kambing.ui.ac.id/debian-security/ lenny/updates main contrib non-free

deb http://security.debian.org/ lenny/updates main
deb-src http://security.debian.org/ lenny/updates main

deb http://volatile.debian.org/debian-volatile lenny/volatile main
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main

Lalu jalankan perintah berikut:

apt-get update
apt-get dist-upgrade

jika ada kegagalan saat menjalankan apt-get dist-upgrade, bisa dicoba dengan apt-get update—fix-missing lalu dilanjutkan kembali dengan apt-get dist-upgrade.

Selesai.

http://security.debian.org/

monitoring

| Posted in Other

Habis sudah masa liburan lebaran. Di Indonesia memang lama sekali liburnya, terlena semua karyawan berlibur.  Tapi tidak semua karyawannya libur seperti di kantorku. Biasanya di perusahaan internet service provider dan telekomunikasi ada karyawan yang tidak libur yaitu bagian Network Operation Centre(NOC) atau Monitoring Team yang siaga 24 jam secara bergilir memonitor jaringan internet. Malam ini aku merampungkan membaca recap semua report harian staff yang bertugas setiap hari berupa masalah / troubleshoot /test apa yang dilakukan dan dialami.  Selama seminggu lalu aku juga bertanggung jawab akan keadaan di NOC, walau libur jauh dari Jakarta tetap juga membantu solving permasalahan yang dihadapi tim di  NOC/Data centre, biasanya aku dapat short report melalui telepon, kadang aku juga call ke NOC untuk memantau situsi disana.  Saat libur kemarin lebih banyak trouble di paket internet rumah(personal broadband) untuk paket corporate/perusahaan tidak ada mungkin juga masih ikut libur.  Disamping itu ada beberapa BTS di Jakarta yang bermasalah dan harus di kunjungi troubleshoot oleh Technical Support Division. Untuk status kantor cabang di luar Jakarta/Jawa tidak terlalu banyak masalah berarti. Besok sudah mulai masuk aktifitas kantor dan client seperti biasa jadi harus lancar semua infrastruktur dan dikarenakan besok aku masih ada urusan keluarga di Medan jadi aku lakukan pengecekan menyeluruh malam ini, semua sistem aku periksan dan optimalkan kembali, kondisi firewall/services setiap server, log, dan sebagainya.  Untuk ini biasanya aku lakukan secara remote ke satu server khusus SSH/Telnet dahulu kemudian dari situ memeriksa puluhan server di data centre baik  cabang dan pusat. Aku pribadi puas dengan report dan kinerja staff monitoring(NOC) selama liburan ini.