Pada artikel sebelumnya penulis telah membahas sedikit mengenai cloud computing. Pada artikel ini, penulis akan membuat cloud storage sendiri dengan owncloud sehingga bisa diakses oleh siapa pun dan dimana pun dengan ketentuan komputer client terhubung dengan 1 jaringan komputer server. Pada artikel ini akan dibahas bagaimana cara instalasi, konfigurasi owncloud pada laptop masing - masing sehingga laptop anda nantinya akan kita gunakan sebagai server. Nah bagaimana jika kita ingin mengakses lewat aplikasi owncloud melalui mobile ? pastinya kita akan menggunakan provider yang support untuk owncloud.

Apa Itu OwnCloud ?

OwnCloud adalah salah satu CMS(Content Management System) untuk layanan cloud storage seperti google drive, dropbox dan owncloud berbasis layanan model IaaS.

Dengan menggunakan owncloud, kita dapat mengatur layanan cloud storage mulai dari user, group user, limited akses, size quota user dan lain sebagainya. Owncloud bisa kita jadikan sebagai salah satu bahan testing untuk cloud computing dikarenakan owncloud termasuk salah satu kategori dari model layanan cloud computing.

Setup OwnCloud

OwnCloud dibangun dengan menggunakan bahasa pemrograman PHP, bagi yang belum melakukan instalasi php, silahkan lihat di artikel instalasi perlengkapan php untuk coding php. Owncloud support untuk 2 database yaitu mysql/mariadb dan postgresql, pada artikel ini penulis akan menggunakan database postgresql, bagi yang belum melakukan instalasi postgresql, silahkan lihat artikel di instalasi dan konfigurasi PostgreSQL pada linux. Silahkan download owncloud di owncloud, Setelah selesai silahkan extract di dalam folder /var/www/html kemudian berikan hak akses dengan perintah.

sudo chmod -R 777 /var/www/html/*

Setelah selesai, selanjutnya kita akan membuat database owncloud di postgresql, silahkan buka terminal lalu jalankan perintah berikut.

createdb -h localhost -U postgres -E utf-8 -O postgres owncloud

Perintah diatas akan membuat sebuah database dengan nama owncloud. Tahap selanjutnya silahkan akses owncloud melalui browser pada url http://127.0.0.1/owncloud/ maka akan muncul gambar seperti berikut.

Screenshot from 2016-03-05 09:16:12.png

Silahkan isi form yang telah disediakan berdasarkan konfigurasi yang anda inginkan, disini penulis menggunakan database postgresql. Jika telah selesai, maka akan muncul halaman seperti berikut.

Screenshot from 2016-03-05 09:18:10.png

Gambar diatas adalah halaman default admin.

Membuat User Baru

Secara default, owncloud hanya membuat user untuk admin. Untuk membuat user baru silahkan pilih panel admin, lalu pilih menu users. Silahkan tambahkan group baru terlebih dahulu, misalnya grup nya adalah user. Setelah selesai lalu silahkan buatlah user baru untuk dapat megakses cloud storage nya sendiri, misalnya username : mufrizal, password : rizki dan group : user. Setelah selesai, anda juga dapat memilih quota nya, berikut adalah contoh user yang telah dibuat.

Screenshot from 2016-03-05 09:28:25.png

Untuk melakukan akses berdasarkan user tersebut, silahkan logout dan login kembali dengan user yang telah anda buat tadi.

Instalasi Dan Konfigurasi Client Desktop OwnCloud

Owncloud telah menyediakan sebuah aplikasi client berbasis desktop yang dapat kita gunakan untuk mengakses cloud storage yang telah kita buat. Untuk melakukan instalasi client desktop owncloud, silahkan jalankan perintah berikut.

sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Ubuntu_16.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list"

Perintah diatas berfungsi untuk menambah repository ppa yang kita butuhkan untuk instalasi client desktop owncloud. Langkah selanjutnya adalah melakukan import key dengan perintah.

wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Ubuntu_16.04/Release.key
sudo apt-key add - < Release.key

Setelah selesai, lakukan update dan instal aplikasi dengan perintah berikut.

sudo apt-get update
sudo apt-get install owncloud-client

Silahkan buka aplikasi yang telah diinstall, kemudian isikan server address dengan url berikut.

http://127.0.0.1/owncloud

Setelah selesai, klik next maka akan muncup form input untuk username dan password. Silahkan masukkan username dan password yang telah anda buat. Lalu klik next, jika autentikasinya berhasil maka akan muncul window selanjutnya yang berisi tentang konfigurasi folder owncloud. Secara default, folder owncloud client berada di /home/nama user/owncloud. Setelah melakukan semua konfigurasi, kita dapat melakukan upload file. Cara melakukan upload file sama halnya seperti dropbox, yaitu silahkan copy kan file yang ingin kita upload ke dalam folder owncloud yang telah kita konfigurasikan tadi. Penulis melakukan konfigurasi folder owncloud di /home/rizki/owncloud, misalnya kita akan melakukan upload file Belajar-OwnCloud.md, silahkan buat sebuah file dengan nama Belajar-OwnCloud.md lalu tulisakan beberapa baris text, setelah selesai silahkan copy file tersebut ke dalam folder owncloud maka secara otomatis aplikasi client desktop owncloud akan melakukan sinkronisasi antara folder owncloud dengan folder yang ada di server.

Bagaimana kita tahu bahwa file tersebut telah berhasil di upload atau tidak ? caranya sangatlah mudah yaitu kita dapat melihat file tersebut di dalam folder aplikasi owncloudnya atau aplikasi web owncloudnya. Karena file - file tersebut hanya bisa diakses oleh root maka kita harus menjalankan nautilus dengan hak akses root. Silahkan jalankan perintah berikut untuk menjalakan nautilus dengan root.

sudo nautilus

Setelah selesai, silahkan buka folder /var/www/html/owncloud. Di dalam folder tersebut terdapat sebuah folder yaitu namanya adalah folder data. Folder data ini berisi file - file yang telah di upload oleh user, dan file - file tersebut dikelompokkan berdasarkan folder user nya sehingga nama foldernya akan disesuaikan dengan nama user. Berikut adalah gambar - gambar folder tersebut.

Screenshot from 2016-03-05 21:20:35.png

Jika ingin melihat filenya ada di dalam folder nama user owncloud/files, berikut adalah gambar dari file Belajar-OwnCloud.md yang telah kita upload tadi.

Screenshot from 2016-03-05 21:21:43.png

Instalasi Dan Konfigurasi OwnCloud Pada Provider OpenShift

Mengapa kita menggunakan provider ? karena kita ingin agar owncloud dapat diakses melalui internet :D. Salah satu provider yang dapat kita gunakan adalah openshift :). Jika anda ingin menggunakan provider lain, bisa dilihat di owncloud provider. Untuk tool client openshift sendiri kita akan menggunakan The OpenShift Client Tools (rhc). Untuk melakukan instalasi rhc, anda diharuskan melakukan instalasi ruby dan git, bagi yang belum melakukan instalasi ruby bisa di lihat pada artikel instalasi perlengkapan coding ruby dan untuk git bisa dilihat di artikel belajar git. Silahkan jalankan perintah berikut untuk instalasi rhc.

gem install rhc

Setelah selesai, lakukan setup account pada komputer anda dengan perintah rhc setup. Kemudian isikan username berserta password anda sehingga rhc akan secara otomatis melakukan autentikasi pada pc anda. Tahap selanjutnya adalah kita melakukan konfigurasi ssh key. Ssh key ini juga sama hal nya dengan di github. Jalankan perintah berikut untuk melakukan copy isi dari file id_rsa.pub.

xclip -sel clip < ~/.ssh/id_rsa.pub

Silahkan login ke web openshift, Kemudian pilih menu setting maka akan muncul gambar seperti berikut.

Screenshot from 2016-03-05 21:45:11.png

Silahkan paste tepat di dalam text box tersebut kemudian simpan key tersebut. Key ini merupakan public key yang merupakan pasangan dari private key. Private key berada pada komputer kita sendiri, sedangkan public key bisa dibagikan kepada aplikasi yang lain. Fungsinya adalah untuk keamanan data ketika adanya pertukaran data antar 2 komputer, algortima yang digunakan adalah RSA dengan konsep asymmetric algorithm. Tahap selanjutnya jangan lupa membuat domain, dimana domain ini berfungsi untuk mengelompokkan aplikasi yang akan kita buat.

Tahap selanjutnya adalah kita akan melakukan setup software yang dibutuhkan untuk owncloud dan membuat sebuah gear atau aplikasi. Lalu silahkan jalankan perintah berikut.

rhc app create owncloud php-5.4 postgresql-9.2 cron-1.4

Perintah diatas akan membuat sebuah gear atau aplikasi dengan nama owncloud, dimana di dalam gear atau aplikasi tersebut akan diinstall php, database postgresql dan cron. Jika berhasil maka outputnya seperti berikut.

RSA 1024 bit CA certificates are loaded due to old openssl compatibility
Application Options
-------------------
Domain:     mufrizal
Cartridges: php-5.4, postgresql-9.2, cron-1.4
Gear Size:  default
Scaling:    no

Creating application 'owncloud' ... done

  PostgreSQL 9.2 database added.  Please make note of these credentials:

   Root User: adming8aaee8
   Root Password: entGcfXWyG-_
   Database Name: owncloud

Connection URL: postgresql://$OPENSHIFT_POSTGRESQL_DB_HOST:$OPENSHIFT_POSTGRESQL_DB_PORT


To schedule your scripts to run on a periodic basis, add the scripts to 
your application's .openshift/cron/{minutely,hourly,daily,weekly,monthly}/
directories (and commit and redeploy your application).

Example: A script .openshift/cron/hourly/crony added to your application
         will be executed once every hour.
         Similarly, a script .openshift/cron/weekly/chronograph added
         to your application will be executed once every week.

Waiting for your DNS name to be available ... done

Cloning into 'owncloud'...
The authenticity of host 'owncloud-mufrizal.rhcloud.com (54.173.52.16)' can't be established.
RSA key fingerprint is cf:ee:77:cb:0e:fc:02:d7:72:7e:ae:80:c0:90:88:a7.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'owncloud-mufrizal.rhcloud.com,54.173.52.16' (RSA) to the list of known hosts.

Your application 'owncloud' is now available.

  URL:        http://owncloud-mufrizal.rhcloud.com/
  SSH to:     56daf3ba2d5271009000002c@owncloud-mufrizal.rhcloud.com
  Git remote: ssh://56daf3ba2d5271009000002c@owncloud-mufrizal.rhcloud.com/~/git/owncloud.git/
  Cloned to:  /home/rizki/programming/gitclone/owncloud

Run 'rhc show-app owncloud' for more details about your app.

Kemudian silahkan akses folder project yang telah di clone tadi dengan terminal. Kemudian jalankan perintah berikut untuk clone repository dari openshift karena secara default owncloud yang disediakan openshift masih versi lama.

git remote add upstream -m master git://github.com/openshift/owncloud-openshift-quickstart.git
git pull -s recursive -X theirs upstream master

Setelah selesai, lakukan push kembali dengan perintah.

git push

Jika berhasil maka outputnya seperti berikut.

Counting objects: 18671, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (11694/11694), done.
Writing objects: 100% (18671/18671), 61.18 MiB | 15.00 KiB/s, done.
Total 18671 (delta 6083), reused 18663 (delta 6080)
remote: Stopping PHP 5.4 cartridge (Apache+mod_php)
remote: Waiting for stop to finish
remote: Waiting for stop to finish
remote: Stopping Postgres cartridge
remote: Stopping Cron cartridge
remote: Building git ref 'master', commit 9b06956
remote: Starting pre_build...
remote: Completed pre_build.
remote: Checking .openshift/pear.txt for PEAR dependency...
remote: Starting build...
remote: ownCloud not yet installed...
remote: Downloading https://download.owncloud.org/community/owncloud-8.2.0.tar.bz2...
remote: Verifying md5...
remote: Extracting owncloud-8.2.0.tar.bz2...
remote: Setting current version to 8.2.0...
remote: Completed build.
remote: Preparing build for deployment
remote: Deployment id is a7a899c4
remote: Activating deployment
remote: Starting Postgres cartridge
remote: Postgres started
remote: Starting Cron cartridge
remote: Starting deploy...
remote: Copying to /var/lib/openshift/56daf3ba2d5271009000002c/app-root/data/current...
remote: Linking the instalation with the repo dir...
remote: Completed deploy.
remote: Starting PHP 5.4 cartridge (Apache+mod_php)
remote: Application directory "php/" selected as DocumentRoot
remote: Starting post_deploy...
remote: Requesting index.php to trigger autoconfig...
remote: CLIENT_RESULT: 
remote: CLIENT_RESULT: ownCloud configured successfully.
remote: CLIENT_RESULT: Take note of the default admin credentials:
remote: CLIENT_RESULT: 
remote: CLIENT_RESULT:       Username: admin
remote: CLIENT_RESULT:       Password: piGayRDPVGZ5
remote: CLIENT_RESULT: 
remote: CLIENT_RESULT: Don't forget to change your admin password!
remote: CLIENT_RESULT: 
remote: /var/lib/openshift/56daf3ba2d5271009000002c/app-root/runtime/repo/php /var/lib/openshift/56daf3ba2d5271009000002c
remote: Persisting configuration...
remote: /var/lib/openshift/56daf3ba2d5271009000002c
remote: Completed post_deploy.
remote: -------------------------
remote: Git Post-Receive Result: success
remote: Activation status: success
remote: Deployment completed with status: success
To ssh://56daf3ba2d5271009000002c@owncloud-mufrizal.rhcloud.com/~/git/owncloud.git/
   5e8d216..9b06956  master -> master

Setelah selesai, silahkan akses web nya berdasarkan nama domain anda, berikut adalah contoh nya

http://owncloud-$yourdomain.rhcloud.com

Seperti kita lihat pada task sebelumnya, pada saat push atau deploy ke openshift, owncloud secara otomatis melakukan konfigurasi ke database, konfigurasi ini sendiri sebenarnya telah disediakan pada repository openshift. Setelah melakukan akses web silahkan login dengan username dan password yang telah digenerate oleh owncloud, username dan password bisa dilihat pada task push ke openshift. Username dan password bisa dilihat pada baris.

remote: CLIENT_RESULT:       Username: admin
remote: CLIENT_RESULT:       Password: piGayRDPVGZ5

Jika berhasil login, maka akan muncul halaman home. Dan tidak ada perbedaan antara owncloud yang telah kita buat di komputer pribadi dengan yang ada di provider, perbedaanya hanyalah akses jaringan melalui internet. Berikut adalah gambar owcloud pada openshift.

Screenshot from 2016-03-05 23:21:35.png

Instalasi Dan Konfigurasi Client Mobile oCloud

Jika sebelumnya kita telah menggunakan client desktop owncloud untuk pc, pada bagian ini kita akan coba menggunakan mobile. Untuk mobile, kita bisa menggunakan OCloud, silahkan cari di playstore. Jika melalui web, aplikasinya bisa dilihat di play store.

Setelah selesai melakukan instalasi aplikasi tersebut, silahkan anda buat username dan password untuk user baru pada owncloud yang ada di openshift, tujuannya adalah kita ingin melakukan akses user tersebut melalui aplikasi mobile.

Setelah membuat user baru, silahkan buka aplikasi tersebut. Isikan server address dengan url web owncloud anda, lalu masukkan username dan password berdasarkan user yang telah anda buat. Berikut adalah gambar melalui aplikasi mobile ocloud.

Screenshot from 2016-03-05 23:40:56.jpg

Jika berhasil login, maka anda dapat melakukan upload melalui mobile :D. Silahkan upload file melalui aplikasi ocloud, jika telah selesai maka akan muncul file yang telah di upload melalui aplikasi mobile dan anda juga dapat melakukan pengecekan langsung melalui web onwcloud pada openshift.

Bagaimana agar kita mengetahui bahwa file tersebut benar - benar telah di upload ke server openshift ? caranya yaitu dengan menggunakan akses ssh. Silahkan jalankan perintah berikut untuk akses ssh ke server openshift.

rhc ssh -a owncloud

Maka secara otomatis anda masuk ke terminal server openshift. Kemudian jalankan perintah berikut untuk masuk ke folder root project.

cd app-root/

Setelah selesai, silahkan jalankan lagi perintah berikut untuk akses folder data.

cd data/

Jika kita gunakan perintah ls maka secara otomatis terminal akan menampilkan folder - folder user. Dimana folder - folder user ini berisi file yang telah di upload. Disini penulis menggunakan user rizki, maka penulis mengakses folder rizki dan folder files dengan perintah.

cd rizki/files/

Kemudian tampilkan seluruh file yang ada di dalam folder tersebut dengan perintah ls maka hasilnya adalah seperti berikut.

[owncloud-mufrizal.rhcloud.com files]\> ls
Documents  Photos  Screenshot_2016-03-05-23-43-11.jpg

Bisa kita lihat bahwa file Screenshot_2016-03-05-23-43-11.jpg telah berhasil di upload ke server openshift :D. Sekian artikel mengenai belajar membuat cloud storage dengan owncloud dan terima kasih :).

Pada zaman sekarang, perkembangan teknologi sangatlah pesat. Perkembangan tersebut dapat kita lihat dari lahir nya berbagai teknologi - teknologi baru seperti ada nya smartphone, penyimpanan secara online, perkembangan virtual reality dan sebagainya. Perkembangan teknologi ini sering sekali dikaitkan dengan komputasi modern, mengapa demikian ? dikarenakan pada zaman sekarang banyak sekali perkembangan teknologi khususnya di bidang komputerisasi.

Apa Itu Cloud Computing ?

Cloud Computing adalah sebuah model untuk kenyamanan, akses jaringan on-demand untuk menyatukan pengaturan konfigurasi sumber daya komputasi (seperti, jaringan, server, media penyimpanan, aplikasi, dan layanan) yang dapat dengan cepat ditetapkan dan dirilis dengan usaha manajemen yang minimal atau interaksi dengan penyedia layanan [1].

Jika kita lihat dari pengertian diatas, cloud computing merupakan salah satu contoh dari komputer modern dimana jika kita melihat ke bagian user, cloud computing ini akan menyediakan storange dimana user dapat melakukan akses dimana dan kapan saja. Tidak hanya menyediakan storange, cloud computing juga berfungsi dalam hal deployment sebuah aplikasi, kita misalkan penulis mempunyai sebuah aplikasi web dimana aplikasinya akan di deploy ke sebuah server. Server yang digunakan untuk menjalankan aplikasi web telah dirancang sedemikian rupa sehingga sesuai dengan definisi cloud. Penulis memberikan contoh, misalkan server yang kita gunakan memiliki ram hanya 2 gb, ketika si aplikasi hanya menggunakan ram sebanyak 1 gb maka secara otomatis server akan menurunkan ram secara otomatis menjadi 1 gb. Bagaimana dengan ram yang 1 gb lagi ? ram tersebut akan di share ke pengguna lain yang membutuhkan ram lebih, misalnya aplikasi yang kita deploy tiba - tiba membutuhkan ram sebanyak 3 gb dikarenakan beban akses yang terlalu banyak maka secara otomatis ram akan ditambahkan.

Dari pembahasan diatas dapat kita lihat bahwa sebuah server cloud sangat lah berbeda dengan server hosting. Dimana jika kita menggunakan hosting maka automatic task seperti diatas tidak dapat dilakukan, berbeda dengan cloud computing yang dapat menjalankan secara otomatis.

Apa Saja Model Layanan Cloud Computing ?

Jika dilihat dari segi model layanan, cloud computing terdapat 3 model yaitu : [2]

  1. Software As A Service (SaaS) yaitu sebuah layanan yang dapat langsung diakses oleh user biasanya sudah dalam bantuk aplikasi. Contohnya adalah gmail, google docs, drop box dan sebagainya.
  2. Platform As A Service (PaaS) yaitu pada layanan ini, semua kebutuhan user akan aplikasi sudah tersedia misalkan seperti instalasi sistem operasi, web server, database server dan lain - lain sehingga pada layanan ini, user hanya akan melakukan konfigurasi pada level aplikasi. Contohnya adalah openshift, Google App Engine dan lain - lain.
  3. Infrastructure As A Service (IaaS) yaitu pada layanan ini, hampir semua bisa level bisa dipilih kecuali level hardware. Pada level ini, user dapat memilih sistem operasi, alokasi memory dan sebagainya. Contohnya adalah Digital Ocean, Microsoft Azure IaaS dan lain - lain.

Berikut adalah gambar dari ketiga model layanan tersebut.

Screenshot from 2016-03-03 17:09:20.png

Apa Hubungan Heroku Dengan Komputasi Modern ?

Heroku adalah adalah salah satu web hosting berbasis cloud, biasanya heroku digunakan untuk mengembangkan aplikasi web dengan berbagai bahasa pemrograman seperti java, ruby, python, node js, php dan lain - lain.

Berikut adalah gambar web dari heroku.

Screenshot from 2016-03-03 16:37:28.png

Jika kita lihat dari definisinya, dapat dilihat bahwa heroku mempunyai keterkaitan yang sangat erat dengan komputasi modern. Berikut adalah beberapa faktor bahwa heroku mempunyai hubungan dengan heroku.

  1. Heroku adalah salah satu web hosting berbasis cloud sehingga dapat diakses dimana dan kapan saja sehingga sesuai dengan kriteria komputasi modern.
  2. Heroku termasuk ke dalam kriteria Platform As A Service (PaaS), sehingga bagi anda yang ingin melakukab deploy aplikasi ke heroku cukup hanya dengan melakukan konfigurasi aplikasi yang ingin di deploy.
  3. Heroku dapat memanage sistem operasi, ram, hardisk dan sebagainya secara otomatis sehingga heroku juga dapat mendeteksi bahasa apa yang digunakan oleh sebuah aplikasi.
  4. Aplikasi web yang ada di heroku hanya berjalan selama 18 jam dalam sehari, otomatisasi task tersebut adalah sebuah proses scheduling sehingga dapat dikatakan heroku adalah komputasi modern.
  5. Heroku dapat melakukan deploy secara otomatis terhadap aplikasi yang kita upload melalui tool git.

Dari faktor - faktor diatas dapat disimpulkan bahwa heroku merupakan salah satu contoh dari komputasi modern.

Kesimpulan

Cloud computing adalah salah satu dari contoh komputasi modern. Cloud computing terdapat beberapa model layanan yaitu IaaS, PaaS dan IaaS. Heroku adalah salah satu web hosting berbasis cloud computing dan heroku menerapkan model PaaS sehingga heroku adalah salah satu contoh web dari komputasi modern.

Daftar Pustaka

  • [1] Mell, Peter and Grance, Tim, 2011,The NIST Definition of Cloud Computing, National Institute of Standards and Technology (NIST), http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf (diakses 3 Maret 2016)
  • [2] Ahmad Ashari, Herri Setiawan, 2011, Cloud Computing : Solusi ICT ?
  • [3] Erick Kurniawan, 2015, Penerapan Teknologi Cloud Computing Di Universitas, Studi Kasus: Fakultas Teknologi Informasi UKDW

Pada tutorial sebelumnya kita telah membahas bagaimana cara instalasi dan konfigurasi dns pada debian server, kali ini penulis akan melanjutnya artikel mengenai bagaimana konfigurasi DHCP dan web server pada debian :).

Apa Itu DHCP ?

DHCP (Dymanic Configuration Protocol) adalah sebuah sistem dimana sistem tersebut dapat memberikan IP secara otomatis kepada komputer yang meminta.

DHCP sangatlah berguna, terutama ketika jumlah komputer yang akan kita berikan IP berjumlah sangat banyak. Dengan adanya DHCP, kita juga dapat memberikan range IP berdasarkan jumlah komputer yang tersedia.

Berikut adalah gambar dari activity diagram untuk DHCP

Screenshot from 2016-03-02 19:12:42.png

Berikut adalah penjelasan mengenai activity diagram diatas.

  1. Komputer client melakukan request IP kepada komputer server, dimana komputer client bertindak sebagai DHCP client sedangkan komputer server bertindak sebagai DHCP server.
  2. Komputer server akan melakukan pengecekan IP yang terdapat di dalam database DHCP, jika IP masih tersedia atau IP masih belum dicoret maka komputer server akan meminjamkan IP tersebut kepada komputer client dan mencoret IP tersebut dari database DHCP sehingga IP tidak akan ada yang duplicate atau double.
  3. Jika IP tidak tersedia atau seluruh IP telah dicoret maka komputer client tidak akan mendapatkan IP sehingga komputer client tidak dapat mengakses jaringan tersebut.

Apa Itu Web Server ?

Web Server adalah suatu perangkat lunak yang bertanggung jawab untuk menerima request dan memberikan response dari pada client melalui protokol http (hypertext transfer protocol).

Pada zaman sekarang ada banyak sekali web server yang dapat kita gunakan. Masing - masing bahasa pemrograman yang support untuk membuat web mempunyai web server tersendiri, berikut adalah contoh web server.

  • Apache Web Server : biasanya digunakan sebagai web server untuk php
  • Nginx : biasanya digunakan sebagai web server untuk php dan hhvm
  • Apache Tomcat : biasanya digunakan sebagai web server untuk java web
  • Jetty : biasanya digunakan sebagai web server untuk Java web
  • GlassFish Server : biasanya digunakan sebagai web server untuk Java EE
  • Wildfly Server : biasanya digunakan sebagai web server untuk Java EE
  • WEBrick : biasanya digunakan sebagai web server untuk ruby
  • Dan lain - lain

Berikut adalah gambar dari deployment diagram untuk web server.

Screenshot from 2016-03-02 19:42:33.png

Berikut adalah penjelasan dari deployment diagram diatas.

  1. Komputer client berfungsi sebagai node yang pertama, node disini berfungsi sebagai hardware dari bagian client. Begitu pula dengan komputer server yang bertindak sebagai node yang kedua.
  2. browser : adalah component dari pada node komputer client, component adalah representasi dari pada sebuah software. Hal ini juga sama jika kita bandingkan dengan web server sebagai component software yang kedua.
  3. Misalnya user akan melakukan akses sebuah halaman web. Sebuah halaman web biasanya terdiri dari html, css dan js. Ketika user melakukan akses sebuah web melalui browser, maka browser akan melakukan request melalui protokol http berdasarkan URL (uniform resource locator) yang diketikan oleh user. Request tersebut diterima oleh web server yang berada pada komputer server, jika URL sesuai maka web server akan mengembalikan response kepada browser.

Instalasi Dan Konfigurasi DHCP3 Server

Setelah membahas mengenai cara kerja dari dhcp dan web server, sekarang kita akan langsung melakukan instalasi dhcp pada debian server :D.

Untuk melakukan instalasi dhcp3 server, silahkan jalankan perintah berikut.

apt-get install dhcp3-server

Setelah selesai, kita akan melakukan instalasi editor yang baru, jika dulu kita menggunakan nano, maka sekarang kita akan menggunakan editor mcedit, silahkan jalankan perintah berikut untuk melakukan instalasi editor tersebut.

apt-get install mc

Tahap selanjutnya kita akan melakukan konfigurasi dhcp, silahkan jalankan perintah berikut.

mcedit /etc/dhcp3/dhcpd.conf

Maka akan muncul tampilan seperti berikut.

Screenshot from 2016-03-02 20:06:40.png

Kemudian untuk loncat ke baris yang akan kita tuju, silahkan tekan tombol f9, kemudian pindahkan kursor menu commands dengan tombol left, lalu tekan enter dan pilih go to line. Masukkan angka 51 artinya kita akan loncat ke baris 51 kemudian tekan tombol alt + o. Tahap selanjutnya silahkan ubah konfigurasi tersebut seperti ini.

subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.20 192.168.1.40;
    option domain-name-servers 192.168.1.1;
    option domain-name "labti.com";
    option routers 192.168.1.1;
    option broadcast-address 192.168.1.255;
    default-lease-time 7200;
    max-lease-time 7200;
}

Berikut adalah penjelasan dari konfigurasi diatas.

  • subnet : berfungsi sebagai network address
  • range : jarak ip yang akan digunakan pada komputer client
  • option domain-name-servers : berfungsi sebagai IP DNS dari komputer server
  • option domain-name : berfungsi sebagai nama domain
  • option routers : berfungsi sebagai IP dari router atau bisa juga IP komputer server
  • option broadcast-address : berfungsi sebagai broadcast dari IP
  • default-lease-time : berfungsi sebagai waktu tetap untuk peminjaman IP kepada komputer client dari komputer server
  • max-lease-time : berfungsi sebagai waktu maksimal untuk peminjaman IP kepada komputer client dari komputer server

Langkah selanjutnya adalah simpan konfigurasi tersebut dengan menekan tombol f2 maka akan muncul tampilan seperti berikut.

Screenshot from 2016-03-02 22:19:03.png

Kemudian tekan enter, lalu close editor dengan menekan tombol f10. Langkah selanjutnya silahkan restart dhcp3 dengan perintah.

/etc/init.d/dhcp3-server restart

Jika terjadi error seperti ini

Stopping DHCP server: dhcpd3 failed!
Starting DHCP server: dhcpd3.

Maka lakukan restart sekali lagi, jika masih failed maka silahkan lakukan pengecekan konfigurasi pada dhcp nya.

Jika berhasil maka outputnya seperti berikut.

Stopping DHCP server: dhcpd3.
Starting DHCP server: dhcpd3.

Instalasi Dan Konfigurasi Web Server

Setelah berhasil melakukan instalasi dan konfigurasi dhcp, tahap selanjutnya kita akan melakukan instalasi dan konfigurasi web server pada debian server. Pada artikel ini, penulis akan menggunakan apache web server sebagai web server. Web server apache adalah salah satu web server untuk bahasa pemrograman php, maka pada saat proses instalasi, penulis juga melakukan instalasi php versi 5. Untuk melakukan instalasi tersebut silahkan jalankan perintan berikut.

apt-get install apache2 php5

Secara default, web server apache di debian belum dikonfigurasi folder htdocs nya, berbeda dengan ubuntu. Pada ubuntu, apache akan secara otomatis mendeklarasikan bahwa folder /var/www/html adalah sebagai folder htdocs. Folder htdocs sebenarnya berasal dari aplikasi xampp. Untuk melakukan konfigurasi tersebut silahkan jalankan perintah berikut.

nano /etc/apache2/sites-available/default

Kemudian ubah konfigurasinya seperti berikut.

<VirtualHost *:80>
  ServerAdmin admin@labti.com
  DocumentRoot /var/www/html

  <Directory />
    Options FollowSymLinks
    AllowOverride None
  </Directory>

  <Directory /var/www/html>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow, deny
    allow from all
  </Directory>

</VirtualHost>

Setelah selesai, sekarang kita akan membuat folder yang berfungsi sebagai folder htdocs silahkan jalankan perintah berikut.

mkdir /var/www/html

Testing DHCP

Setelah melakukan konfigurasi DHCP, kita akan melakukan testing apakah dhcp tersebut berhasil atau tidak. Bagaimana cara nya ? untuk mempermudah, kita akan gunakan windows sebagai komputer client dan debian sebagai komputer server. Silahkan anda lakukan instalasi windows pada VMware anda, setelah selesai melakukan instalasi windows pada VMware terdapat beberapa langkah yang harus anda lakukan untuk konfigurasi dhcp. Berikut adalah langkah - langkahnya.

  1. Pilih os windows lalu pilih menu edit, pilih virtual network editor
  2. Silahkan pilih vmnet 1 kemudian uncheck list pada use local DHCP service to distribute IP addresses to VMs kemudian isi 192.168.1.0 pada bagian subnet IP` seperti gambar berikut. Screenshot from 2016-03-02 22:48:40.png
  3. Selanjutnya pilih menu vm lalu pilih settings, pilih pada bagian network adapter, lihat pada menu kanannya terdapat radio button yaitu custom: spesific virtual network kemudian pilih /dev/vmnet1 seperti gambar berikut. Screenshot from 2016-03-02 22:54:16.png

Setelah selesai, tahap selanjutnya silahkan jalankan windows anda dikarenakan kita akan melakukan konfigurasi pada bagian windowsnya. Berikut adalah langkah untuk konfigurasi jaringan pada windows.

  1. Silahkan pilih control panel
  2. Pilih menu network and internet
  3. Kemudian pilih network and sharing center
  4. Kemudian pilih menu change adapter settings yang ada di bagian kiri
  5. Selanjutnya klik kanan pada local area connection lalu pilih properties. Klik pada internet protocol version 4(TCP/IPv4) lalu klik menu properties, kemudian ubah menjadi obtain an IP address automatically dan obtain DNS address automatically seperti gambar berikut.

Screenshot from 2016-03-02 23:01:50.png

Setelah selesai, silahkan lakukan pengecekan IP pada windows dengan perintah.

ipconfig

Jika berhasil maka akan muncul output seperti berikut.

Screenshot from 2016-03-02 23:04:37.png

atau bisa juga lakukan ping ke IP server dengan perintah

ping 192.168.1.1

atau bahkan anda bisa juga melakukan ping ke dns server dengan perintah

ping www.labti.com

Jika berhasil maka akan muncul output seperti berikut.

Screenshot from 2016-03-02 23:07:29.png

Testing Web Server

Tahap yang terakhir adalah melakukan testing pada web server, silahkan masuk lagi ke dalam debian, lalu jalankan perintah berikut untuk membuat sebuah halaman html.

nano /var/www/html/index.html

Kemudian masukkan codingan html seperti berikut.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Belajar Web Server</title>
  </head>
  <body>
    <h1>Belajar Web Server</h1> <br />
    <h1>Hello Rizki Mufrizal</h1>
  </body>
</html>

Setelah selesai, silahkan restart apache web server anda dengan perintah.

/etc/init.d/apache2 restart

Kemudian silahkan akses web dengan perintah berikut.

w3m www.labti.com

Jika berhasil maka akan muncul output seperti berikut.

Screenshot from 2016-03-02 23:19:59.png

Untuk keluar dari mode silahkan tekan tombol q. Jika menggunakan windows yang telah kita konfigurasikan tadi silahkan buka browser, kemudian akses www.labti.com maka akan muncul seperti berikut.

Screenshot from 2016-03-02 23:21:12.png

Sekian artikel mengenai instalasi dan konfigurasi dhcp serta web server pada debian server dan terima kasih :).

Apa itu Kotlin ?

Kotlin adalah bahasa pemrograman pragmatis untuk JVM dan Android yang mengkombinasikan Object Oriented (OO) dan fitur fungsional dan fokus pada interoperabilitas, keamanan, kejelasan dan dukungan integrasi dengan berbagai tools major.

Kotlin dikembangankan oleh perusahaan jetbrains sejak tahun 2010 dan diumumkan pada bulan juli 2011. Kotlin telah di open source kan dan direlease diatas lisensi apache 2.

Mengapa disebut pemrograman pragmatis ? dikarenakan kotlin fokus pada interoperabilitas yaitu pengabungan antara project java dan kotlin. Dengan demikian, developer java dapat melakukan coding secara berbarengan dengan kotlin atau dengan kata lain di dalam sebuah project java bisa saja terdapat source code kotlin atau sebaliknya. Kotlin juga terintergrasi oleh tool - tool java seperti IntelliJ IDEA, Eclipse, maven, ant dan gradle.

Instalasi Kotlin

Untuk melakukan instalasi kotlin, kita akan menggunakan SDKMAN (Software Development Kit Manager). Silahkan jalankan perintah berikut untuk instalasi SDKMAN.

curl -s get.sdkman.io | bash

Setelah selesai, kita ingin agar variabel sdkman terbaca oleh terminal, silahkan jalankan perintah berikut.

source "$HOME/.sdkman/bin/sdkman-init.sh"

Untuk melakukan pengecekan versio SDKMAN, silahkan jalankan perintah berikut.

sdk version

maka akan muncul output seperti berikut.

SDKMAN 3.3.2

Tahap selanjutnya kita akan melakukan instalasi kotlin, instalasi kotlin akan dilakukan oleh SDKMAN, silahkan jalankan perintah berikut.

sdk install kotlin

Kotlin yang diinstall adalah kotlin versi terbaru,SDKMAN tidak hanya untuk instalasi kotlin akan tetapi SDKMAN juga dapat melakukan instalasi groovy, grails dan gradle.

Latihan Kotlin

Setelah selesai, kita akan coba latihan untuk belajar bahasa pemrograman kotlin. Silahkan gunakan editor anda, disini penulis menggunakan editor vim. Silahkan jalankan perintah berikut untuk memulai coding kotlin.

vim Belajar.kt

kemudian isikan codingan seperti berikut.

fun main(args: Array<String>) {
    println(hello("rizki"))
}

fun hello(nama: String): String {
    return "hello $nama"
}

berikut adalah penjelasan dari codingan diatas.

  • fun main berfungsi sebagai method main
  • println berfungsi untuk mencetak sama seperti system.out.println di dalam java
  • fun hello adalah method dengan nama hello dengan type data string

Bisa dilihat contoh source code kotlin diatas lebih sederhana dan sangatlah mirip dengan java. Untuk melakukan compile, silahkan jalankan perintah berikut.

kotlinc Belajar.kt -include-runtime -d Belajar.jar

Arti dari perintah diatas adalah :

  • kotlinc Belajar.kt : lakukan compile terhadap file Belajar.kt
  • -include-runtime : jika kita membutuhkan runtime kotlin
  • -d Belajar : hasil compile nya akan berupa file jar yang siap dijalankan

Untuk menjalankannya silahkan lakukan perintah berikut.

java -jar Belajar.jar

Latihan Kotlin Dengan Maven

Jika awalnya kita hanya melakukan compile biasa, sekarang kita akan coba membuat sebuah project dengan maven akan tetapi menggunakan bahasa pemrograman kotlin. Untuk membuat project dengan maven, silahkan jalankan perintah berikut.

mvn archetype:generate \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DgroupId=com.rizki.mufrizal.belajarKotlin \
-DartifactId=Belajar-Kotlin

Silahkan hapus folder src kemudian jalankan perintah berikut untuk membuat folder untuk project kotlin.

mkdir -p src/main/kotlin/com/rizki/mufrizal/belajarKotlin
mkdir -p src/test/kotlin/com/rizki/mufrizal/belajarKotlin

Setelah selesai, lakukan konfigurasi pom.xml seperti berikut.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.rizki.mufrizal.belajarKotlin</groupId>
    <artifactId>Belajar-Kotlin</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>Belajar-Kotlin</name>
    <url>http://maven.apache.org</url>

    <properties>
        <kotlin.version>1.0.0</kotlin.version>
        <junit.version>4.12</junit.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-stdlib</artifactId>
            <version>${kotlin.version}</version>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${junit.version}</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
        <testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>

        <plugins>
            <plugin>
                <artifactId>kotlin-maven-plugin</artifactId>
                <groupId>org.jetbrains.kotlin</groupId>
                <version>${kotlin.version}</version>

                <configuration/>
                <executions>
                    <execution>
                        <id>compile</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>test-compile</id>
                        <phase>test-compile</phase>
                        <goals>
                            <goal>test-compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <phase>test</phase>
                        <goals>
                            <goal>java</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <mainClass>com.rizki.mufrizal.belajarKotlin.BelajarKt</mainClass>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

Setelah selesai, silahkan buat sebuah file Belajar.kt di dalam package com.rizki.mufrizal.belajarKotlin di dalam folder src/main Masukkan codingan seperti berikut.

package com.rizki.mufrizal.belajarKotlin

class Belajar {

    fun hello(nama: String): String {
        return "hello $nama"
    }

    companion object {
        @JvmStatic
        fun main(args: Array<String>) {
            println(Belajar().hello("rizki"))
        }
    }
}

Kemudian buat file BelajarTest.kt di dalam package com.rizki.mufrizal.belajarKotlin di dalam folder src/test untuk kebutuhan testing, Masukkan codingan seperti berikut.

package com.rizki.mufrizal.belajarKotlin

import org.junit.Assert
import org.junit.Test

public class BelajarTest {

    @Test fun helloTest(): Unit {
        Assert.assertEquals("hello rizki", Belajar().hello("rizki"))
    }

}

Codingan diatas berfungsi untuk melakukan testing terhadap method atau function hello, Kemudian jalankan dengan perintah berikut.

mvn clean package

Maka secara otomatis, maven akan melakukan test dan compile terhadap source kotlin, jika berhasil maka akan muncul seperti ini.

[INFO] Module name is Belajar-Kotlin
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ Belajar-Kotlin ---
[INFO] Surefire report directory: /home/rizki/Belajar-Kotlin/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.rizki.mufrizal.belajarKotlin.BelajarTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.065 sec

Results :

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

[INFO] 
[INFO] >>> exec-maven-plugin:1.2.1:java (default) > validate @ Belajar-Kotlin >>>
[INFO] 
[INFO] <<< exec-maven-plugin:1.2.1:java (default) < validate @ Belajar-Kotlin <<<
[INFO] 
[INFO] --- exec-maven-plugin:1.2.1:java (default) @ Belajar-Kotlin ---
hello rizki
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ Belajar-Kotlin ---
[INFO] Building jar: /home/rizki/Belajar-Kotlin/target/Belajar-Kotlin-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.082 s
[INFO] Finished at: 2016-02-28T12:04:42+07:00
[INFO] Final Memory: 29M/304M
[INFO] ------------------------------------------------------------------------

Sekian artikel mengenai instalasi perlengkapan coding kotlin dan terima kasih :).

Apa Itu DNS ?

DNS (Domain Name System) adalah sebuah sistem yang berfungsi untuk menerjemahkan domain name ke IP address ataupun sebaliknya.

Biasanya DNS ini digunakan oleh pengguna internet dikarenakan mengingat sebuah alamat situs lebih mudah dibandingkan dengan menghafal IP dari alamat situs tersebut.

Setup Software

Untuk melakukan instalasi dan konfigurasi DNS, penulis menggunakan beberapa software diantaranya adalah :

  • Konfigurasi Debian 5 : berfungsi sebagai konfigurasi debian 5 pada VMware, bagi yang belum memiliki silahkan donwload di Debian 5.rar.
  • ISO Debian 5 : berfungsi sebagai sistem operasi yang akan kita gunakan, silahkan download ISO nya di debian 5.iso
  • VMware 12 : berfungsi sebagai virtual machine, silahkan download di VMware

Silahkan lakukan instalasi VMware terlebih dahulu, jika telah selesai, silahkan extract file Debian 5.rar di sembarang tempat. Langkah selanjutnya buka VMware anda, yang anda buka adalah VMware Workstation, maka akan muncul halaman seperti berikut.

Screenshot from 2016-02-23 19:12:34.png

Kemudian Open a Virtual Machine, silahkan anda browse file Debian 5.vmx yang ada di dalam folder Debian 5. Maka muncul gambar seperti berikut.

Screenshot from 2016-02-23 19:17:24.png

Tahap selanjutnya, silahkan pilih menu edit virtual machine settings karena kita akan melakukan konfigurasi file iso yang akan digunakan. Kemudian silahkan pilih menu CD/DVD (IDE) seperti gambar berikut.

Screenshot from 2016-02-24 16:56:47.png

Silahkan browse file iso yang telah anda download. Langkah selanjutnya jalankan virtual machine tersebut dengan menekan tombol Start up this guest operating system, jika muncul seperti berikut.

Screenshot from 2016-02-23 19:19:30.png

silahkan pilih I Copied It, silahkan tunggu start up debian hingga selesai. Jika start up telah selesai maka akan muncul gambar seperti berikut.

Screenshot from 2016-02-23 19:21:32.png

Kemudian lakukan login dengan username : root dan password : labti.

Instalasi Bind9

Bind9 atau Berkeley Internet Name Domain Versi 9 adalah salah satu software yang biasa digunakan untuk membuat dan mengatur DNS (Domain Name Server) pada sistem operasi Linux.

Untuk melakukan instalasi bind9 sangatlah gampang, silahkan jalankan perintah berikut.

apt-get install bind9

Membuat Zone Domain

Setelah selesai melakukan instalasi, tahap selanjutnya adalah menentukan nama domain pada debian. Untuk menentukan domain maka kita harus membuat konfigurasi zone domain menggunakan Tld (Top Level Domain). Konfigurasi yang akan kita lakukan adalah konfigurasi forward dan reverse yang ada di dalam file named.conf. Silahkan masuk ke dalam folder /etc/bind/ setelah selesai, jalankan perintah

nano named.conf

kemudian lakukan konfigurasi seperti berikut

// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
// If you just adding zones, please do that in /etc/bind/named.conf.local

include "/etc/bind/named.conf.options";

//prime the server with knowledge of the root servers
zone "." {
    type hint;
    file "/etc/bind/db.root";
};

// be authoritative for the localhost forward and reverse zones, and for
// broadcast zones as per RFC 1912

zone "localhost" {
    type master;
    file "/etc/bind/db.local";
};

zone "127.in-addr.arpa" {
    type master;
    file "/etc/bind/db.127";
};

zone "0.in-addr.arpa" {
    type master;
    file "/etc/bind/db.0";
};

zone "255.in-addr.arpa" {
    type master;
    file "/etc/bind/db.255";
};

//konfigurasi forward
zone "labti.com" {
    type master;
    file "/etc/bind/db.labti"; //lokasi file forward
};

//konfigurasi reverse
zone "1.168.192. in-addr.arpa" {
    type master;
    file "/etc/bind/db.192"; //lokasi file reverse
};

include "/etc/bind/named.conf.local";

Dari codingan diatas dapat dilihat bahwa kita melakukan konfigurasi domain dengan menggunakan zone domain. Dimana zone domain labti.com adalah merupakan konfigurasi dari forward sedangkan zone 1.168.192 adalah konfigurasi reverse, berikut adalah perbedaan antara konfigurasi forward dan reverse.

  • Forward : mengubah nama domain ke IP address di dalam DNS.
  • Reverse : mengubah IP address ke nama domain di dalam DNS.

Membuat File Forward

Untuk membuat file forward silahkan jalankan perintah berikut.

nano db.labti

Kemudian tekan tombol ctrl + R kemudian browse file dengan perintah ctrl + T lalu pilih file db.local lalu tekan enter. Isikan konfigurasi seperti berikut.

;
; BIND data file for local loopback interface
;
$TTL   604800
@      IN       SOA     labti.com. root.labti.com. (
                                2       ; Serial
                           604800       ; Refresh
                            86400       ; Retry
                          2419200       ; Expire
                           604800 )     ; Negative Cache TTL
;
@       IN      NS      labti.com.
@       IN      A       192.168.1.1
www     IN      A       192.168.1.1 

Membuat File Reverse

Silahkan jalankan perintah berikut untuk membuat file reverse.

nano db.192

Kemudian tekan tombol ctrl + R kemudian browse file dengan perintah ctrl + T lalu pilih file db.255 lalu tekan enter. Isikan konfigurasi seperti berikut.

;
; BIND data file for local loopback interface
;
$TTL   604800
@      IN       SOA     labti.com. root.labti.com. (
                                2       ; Serial
                           604800       ; Refresh
                            86400       ; Retry
                          2419200       ; Expire
                           604800 )     ; Negative Cache TTL
;
@       IN      NS      labti.com.
@       IN      A       192.168.1.1
1       IN      PTR     www.labti.com. 

Test DNS Server

Jika telah selesai, langkah selanjutnya silahkan restart bind9 dengan perintah

/etc/init.d/bind9 restart

Setelah selesai, silahkan lakukan uji coba dengan menggunakan perintah berikut.

ping www.labti.com

Jika berhasil maka akan muncul output seperti berikut.

Screenshot from 2016-02-24 18:03:34.png

Sekian artikel mengenai instalasi dan konfigurasi DNS pada debian server dan terima kasih :).