DIT.web.id

sementara biarlah begini...

Mengubah IP Address Reseller Hosting & Kliennya Secara Otomatis di Server cPanel

Sep 132010

Kisah ini dimulai dari munculnya boks yahu mesenjer staf billing yang berkata, masdit, ini ada akun reseller hosting order dedicated ip, sudah bayar, tolong diubah ya, thx. Seperti biasa, nda langsung saya respon, melainkan langsung periksa dari WHM mencari tahu berapa banyak akun hosting yang harus diproses. Biasanya sih agak banyak. Ya wis, dijawab saja dulu, ya… sambil lihat ternyata ada puluhan akun hosting yang harus dimodifikasi IP address-nya. Kasus tersebut bukan jarang saya jumpai berkaitan dengan pekerjaan. Contoh kasus lain paska relokasi server reseller hosting, biasanya ada beberapa akun yang menggunakan IP address berbeda, jadi harus disesuaikan juga. Nah, mungkin kondisi serupa juga yang sedang Anda hadapi saat ini?

undefined

Analisa

Sepintas memang sederhana, hanya ubah IP address saja kan? Masalahnya sekarang adalah jika berhadapan dengan reseller hosting dengan jumlah klien puluhan atau bahkan ratusan. Ngedit satu-persatu dari shell jelas akan menyita banyak waktu. Belum lagi kasus lain yang terus datang bertubi-tubi continue. Berangkat dari gambaran kejadian tersebut, maka saya pikir diperlukan sebuah skrip bantu agar masalah dapat teratasi dengan cepat. Nda ada jalan lain selain mengubah IP address di tiap file konfigurasi secara otomatis.
Setelah bengong beberapa saat sambil megangin kepala, akhirnya muncul alur [bahasa kerennya algoritma] yang harus dilakukan, yaitu :

  1. Catat semua username akun hosting yang akan diproses.
  2. Ubah IP address lama ke baru di file konfigurasi akun cPanel dan DNS zone.
  3. Rebuild file konfigurasi Apache dan sinkronisasi DNS zone ke semua server.

 

Meramu Skrip

Analisa dadakan sudah menghasilkan 3 buah gambaran langkah, kini tiba saatnya untuk menuangkannya menjadi skrip. Sebagai contoh, kali ini skrip saya beri nama brubah yang nantinya dijalankan via shell.

  1. Kunjungi konsol server dan lakukan validasi akunnya sampai setara root. Setelah itu berpindahlah ke direktori kerja Anda.

    root@jangkrik [/]# cd /home/skatebored
    root@jangkrik [/home/skatebored]# 
  2. Gunakan sembarang editor teks kegemaran Anda, lalu buat file baru bernama brubah dan isikan kode program di bawah ini.

    #!/bin/bash
    # cpanel - batch change ip address [main & sub] and dns zone
    # by : adhitya chrstiawan nurprasetyo [dit]
    # http://dit.web.id
    # keftones14@yahoo.com
    # 13 september 2010 - bingung cari atm bca yang buka...
    # listening : perut - keroncongan.mp3
    
    # ---awal konfigurasi---
    # isikan ip address yang baru di bawah ini
    newip='1.2.3.4'
    
    # isikan username reseller hosting di bawah ini
    owner='siapa'
    # ---akhir konfigurasi---
    
    # catat semua username klien reseller hosting
    for klien in `grep OWNER=$owner /var/cpanel/users/* -l | cut -d"/" -f5`; do echo $klien >> $owner-klien ; done
    
    # proses ubah ip address
    cat $owner-klien | while read user
    do
    
    # inisialisasi variable dinamis
    domain=`grep $user /etc/trueuserdomains | cut -d":" -f1`
    oldip=`grep IP /var/cpanel/users/$user | cut -d"=" -f2`
    domsub=`grep $user /etc/userdomains | cut -d":" -f1 >> domsub.tmp`
    
    # ubah ip address lama semua main domain
    replace $oldip $newip -- /var/cpanel/users/$user /var/cpanel/userdata/$user/$domain
    replace $oldip $newip -- /var/named/$domain.db
    
    # ubah ip address lama addon, parked dan sub domain
    cat domsub.tmp | while read subdom
    do
    replace $oldip $newip -- /var/cpanel/userdata/$user/$subdom
    rm -f domsub.tmp
    done
    
    # sinkronisasi dns zone ke semua server
    /scripts/dnscluster synczone $domain
    
    done
    
    # hapus file bantu
    rm -f $owner-klien
    
    # update konfigurasi apache dan cpanel
    /scripts/updateuserdomains
    /scripts/rebuildhttpdconf
    
    Catatan :
    Ubah nilai variabel newip dengan IP address baru yang ingin diterapkan ke akun reseller hosting.
    Ubah nilai variabel owner dengan username akun reseller hosting.
  3. Keluar dari editor dan simpan pengeditannya. Setelah itu berikan izin akses execute kepada file brubah.

    root@jangkrik [/home/skatebored]# chmod +x brubah

About Time

Analisa cukup matang, skrip pun sudah tertuang, kini tiba saatnya mengeksekusinya. Ikuti beberapa langkah di bawah ini.

  1. Rajang 3 siung bawang merah lalu tumis dengan sedikit minyak goreng.
  2. Tambahkan 2 buah telur ke dalam tumisan bawang merah, lalu aduk [orak-arik] sampai telur matang.
  3. Masukkan 2 piring nasi putih ke dalam wajan dan bumbu nasi goreng yang tadi beli di Alfamart, lalu aduk sampai rata dengan api sedang.
Nda ding, itu skrip nasi goreng ruko… ;))

Masih dari lokasi yang sama dimana skrip berada, piculah skrip di konsol server. Jika akun hosting cukup banyak, ada baiknya diikuti tanda baca [&] agar prosesnya berlangsung di latar [background].

root@jangkrik [/home/skatebored]# ./brubah

Saat proses sudah selesai ditandai dengan muncul-nya kembali prompt shell. Berikutnya Anda bisa segera periksa hasilnya dari WHM, niscaya IP address lama sudah berubah, mulai dari main domain sampai sub domain. Semua berlangsung dengan cepat dan otomatis.

 

Outro

Usai sudah acara pengubahan IP address secara otomatis kali ini. Tentunya dengan skrip sederhana di atas dapat meringankan beban pekerjaan Anda saat diserang beragam kasus web hosting. Skrip tersebut bisa saja dimodifikasi ulang sesuai kebutuhan Anda, misalnya untuk ubah limitasi space, data transfer atau apapun deh. Tinggal gimana meramunya saja. Selamat mencoba.

There are no published comments.

New comment

Atom

morat-marit enterprise - since 2004