Sunday, January 1, 2017

How make DNS Server with DNSMASQ Centos 7.x 64bit Linux

Posted by Willy Ivan
hi i want to share a little configuration if u want build dns server powerfull. yess that'is a dnsmasq..

first we install dnsmasq in your server

yum install dnsmasq

then we add a new configuration in folder /etc/dnsmasq.d/dns.conf

add code below like this

listen-address=YOUR-IP-ADDRESS
port=53
bind-interfaces
user=dnsmasq
group=dnsmasq
pid-file=/var/run/dnsmasq.pid
log-facility=/var/log/dnsmasq.log
log-queries
domain-needed
bogus-priv
no-hosts
dns-forward-max=500
cache-size=1000
#no-negcache
neg-ttl=3600
resolv-file=/etc/resolv.dnsmasq
no-poll


finish we save, then we add more configuration for dns cache query with filename /etc/resolv.dnsmasq

nameserver 8.8.8.8
nameserver 8.8.4.4

save.

last we add a host to direct ip to domain name like this.
192.168.1.10 learnbybit.com
192.168.1.11 mail.learnbybit.com

save.


we can restart service like this
service dnsmasq restart..

done ... u can try. :)


Read More
-- WARNING --

Thanks for visit my blog. i hope you're enjoy.

Want more tutorial ??? keep shared to another ^~^

contact me : learnbybit@gmail.com


Tuesday, October 4, 2016

Install Graylog , Mongodb, Elasticsearch in Centos 7 Latest Version

Posted by Willy Ivan
pertama kita coba install graylog
banyak pilihan yang bisa digunakan untuk install graylog. sesuaikan pilihan
untuk dokumentasi ini saya implementasikan di mesin sebagai berikut
- Centos 7.2 amd64
- Openjdk 1.8
- Mongodb v3.2.9
- Elasticsearch 2.4.0
- Graylog 2.1
syarat agar graylog dapat terinstall yakni mongodb, elasticsearch dan openjdk
pertama kita lakukan instalasi openjdk

sudo yum install epel-release java-1.8.0-openjdk-headless.x86_64
[root@graylog ~]# java -version
openjdk version "1.8.0_101"
OpenJDK Runtime Environment (build 1.8.0_101-b13)
OpenJDK 64-Bit Server VM (build 25.101-b13, mixed mode)


instalasi mongodb 3.2
vi /etc/apt/source.list

[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc

yum update
sudo yum install -y mongodb-org
sudo chkconfig --add mongod
sudo systemctl daemon-reload
sudo systemctl enable mongod.service
sudo systemctl start mongod.service

[root@graylog ~]# mongod -v
2016-09-19T13:47:23.327+0700 I CONTROL [initandlisten] MongoDB starting : pid=14066 port=27017 dbpath=/data/db 64-bit host=graylog.web
2016-09-19T13:47:23.328+0700 I CONTROL [initandlisten] db version v3.2.9
[root@graylog ~]# netstat -tulpn | grep mongo
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 2287/mongod


instalasi elasticsearch 2.4.0

wget  https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/rpm/elasticsearch/2.4.0/elasticsearch-2.4.0.rpm
rpm -i elasticsearch-2.4.0.rpm
systemctl enable elasticsearch
service elasticsearch start
[root@graylog ~]# curl -X GET localhost:9200 {
"name" : "Matsu'o Tsurayaba",
"cluster_name" : "graylog2",
"version" : {
"number" : "2.4.0",
"build_hash" : "ce9f0c7394dee074091dd1bc4e9469251181fc55",
"build_timestamp" : "2016-08-29T09:14:17Z",
"build_snapshot" : false,
"lucene_version" : "5.5.2"
},
"tagline" : "You Know, for Search"
}
vi /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog2

install graylog 2.1.x
sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-2.1-repository_latest.rpm
sudo yum update
sudo yum install graylog-server

tambahkan auth pada konfigurasi graylog.

[root@graylog ~]# echo -n yourpassword | sha256sum
e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951 (tambahkan ke server.conf)
[root@graylog ~]# pwgen -N 1 -s 96
UbmISdMtk1veg7o3oZICXFiT9MtzOxqYTH7vGIWWnZfKu24qfmFb9x1ffS413siW8S8wADVdjtP4l83wHv7dtQmGz6nMjH5T
vi /etc/graylog/server/server.conf
root_password_sha2 = 65c3f75641b22925c737ca657b126cd68c39e423349d43031cf9a3b9a18cee1f
password_secret = UbmISdMtk1veg7o3oZICXFiT9MtzOxqYTH7vGIWWnZfKu24qfmFb9x1ffS413siW8S8wADVdjtP4l83wHv7dtQmGz6nMjH5T
cluster.name: graylog2 (samakan dengan cluster.name di elasticsearch)
rest_listen_uri = http://0.0.0.0:9000/api/
web_listen_uri = http://0.0.0.0:9000/
elasticsearch_max_docs_per_index = 20000000
elasticsearch_shards = 4
elasticsearch_replicas = 0
elasticsearch_index_prefix = graylog
elasticsearch_discovery_zen_ping_unicast_hosts = 127.0.0.1:9300 (mengikuti listen dari elasticsearch)
simpan lalu start server
service graylog-server start

[root@graylog ~]# netstat -tulpn | grep java
tcp 0 0 0.0.0.0:9000 0.0.0.0:* LISTEN 1155/java


selesai untuk instalasi sesuai dengan requirement di atas.
Read More

Monday, August 29, 2016

Install module NGX_PAGESPEED di nginx update 2016 !!!

Posted by Willy Ivan
halo bro.. apa kabar langsung aja mau share install ngx_pagespeed di nginx lo masing2. supaya wuzz wuzz ...

ane pake centos 7.2 lastest stable version 64bit . cara yg ane pake compile dari source. kenapa ? karena compile bisa meminimalkan module yg digunakan di nginx. hemat resource juga. by default klo kita install dari package atau rpm sudah beberapa module yang terinstall.

pertama download dulu nginx

www.nginx.org/en/download

cari yg stable version .. yang sekarang 1.10.1
wget http://nginx.org/download/nginx-1.10.1.tar.gz
tar -zxvf nginx-1.10.1.tar.gz

lalu kita download module ngx_pagespeednya. untuk versi lastest stable kita kunjungi githubnya.
git clone https://github.com/pagespeed/ngx_pagespeed.git

kita extract
unzip master.zp
mv ngx_pagespeed_module ngx_pagespeed

lalu kita copy atau move (bebas)

mv ngx_pagespeed ../nginx-1.10.1/src/http/module/

untuk module ngx_speed dibutuhkan module psol
kita download didalam direktori ngx_pagespeed
wget https://dl.google.com/dl/page-speed/psol/1.11.33.3.tar.gz
tar -zxvf 1.11.33.3.tar.gz

cd nginx-1.10.1
sudo ./configure  --prefix=/apps/ --add-module=/root/nginx-1.10.1/src/http/modules/ngx_pagespeed/ --user=nobody --group=nobody --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --with-http_ssl_module --with- --with-http_gzip_static_module --with-http_realip_module

untuk module yg dibutuhkan kemari saja
http://nginx.org/en/docs/configure.html

make && make install ..

untuk direktori path ane ada di /apps/
untuk service ada di /apps/sbin/nginx
check command bisa ketik nginx -h

ane dapet script supaya dapat menjalankan sebagai service.

lalu tambahkan di nginx.conf bagian


http {

pagespeed on;
pagespeed FileCachePath /cache/ngx_pagespeed_cache;

}


lalu ane buat virtualhost di bagian

server {

        location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; }
        location ~ "^/ngx_pagespeed_static/" { }
        location ~ "^/ngx_pagespeed_beacon" { }
}


 #!/bin/sh  
 #  
 # nginx - this script starts and stops the nginx daemin  
 #  
 # chkconfig:  - 85 15  
 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \  
 #        proxy and IMAP/POP3 proxy server  
 # processname: nginx  
 # config:   /etc/nginx/nginx.conf  
 # pidfile:   /var/run/nginx.pid  
 # user:    nginx  
 # Source function library.  
 . /etc/rc.d/init.d/functions  
 # Source networking configuration.  
 . /etc/sysconfig/network  
 # Check that networking is up.  
 [ "$NETWORKING" = "no" ] && exit 0  
 nginx="/apps/sbin/nginx"  
 prog=$(basename $nginx)  
 NGINX_CONF_FILE="/apps/conf/nginx.conf"  
 lockfile=/var/run/nginx.lock  
 start() {  
   [ -x $nginx ] || exit 5  
   [ -f $NGINX_CONF_FILE ] || exit 6  
   echo -n $"Starting $prog: "  
   daemon $nginx -c $NGINX_CONF_FILE  
   retval=$?  
   echo  
   [ $retval -eq 0 ] && touch $lockfile  
   return $retval  
 }  
 restart() {  
   configtest || return $?  
   stop  
   start  
 }  
 reload() {  
   configtest || return $?  
   echo -n $"Reloading $prog: "  
   killproc $nginx -HUP  
   RETVAL=$?  
   echo  
 }  
 force_reload() {  
   restart  
 }  
 configtest() {  
  $nginx -t -c $NGINX_CONF_FILE  
 }  
 rh_status() {  
   status $prog  
 }  
 rh_status_q() {  
   rh_status >/dev/null 2>&1  
 }  
 case "$1" in  
   start)  
     rh_status_q && exit 0  
     $1  
     ;;  
   stop)  
     rh_status_q || exit 0  
     $1  
     ;;  
   restart|configtest)  
     $1  
     ;;  
   reload)  
     rh_status_q || exit 7  
     $1  
     ;;  
   force-reload)  
     force_reload  
     ;;  
   status)  
     rh_status  
     ;;  
   condrestart|try-restart)  
     rh_status_q || exit 0  
       ;;  
   *)  
     echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"  
     exit 2  
 esac  


Hasilnya adalah



ada header X-Page-Speed sesuai dengan versi psol nya dari google


thanks dan selamat mencoba :)

Read More

Wednesday, June 15, 2016

Installation SNMP With Observium Monitoring Centos 6/7 Update 2016 !!!

Posted by Willy Ivan




Halo Guys sedikit berbagi apa yang sudah dikerjakan saja. untuk kali ini install observium sebagai monitoring server cloud dan sebagainya. kenapa observium ? karena mudah digunakan dan fitur yang ditawarkan sangat menarik ada geo locationnya juga yang terintegrasi dengan google maps, jadi kita bisa tau posisi server kita ada di negara mana. ahhahahaha

untuk instalasi kali ini agar dapat termonitoring semua tools monitoring pasti membutuhkan protokol snmp sebagai pengirim informasi ke aplikasi monitoring tersebut. saya menggunakan centos 7 64bit dengan kernel 3.x dan ini sangat berjalan sangat baik sekali.

pertama kita install snmp terlebih dahulu

 yum install epel-release -y && yum update -y && yum -y install net-snmp net-snmp-utils  


setelah sukses  lakukan backup file asli sebagai jaga2 apabila ada kesalahan konfigurasi, jadi kita dapat membackupnya.


 cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.origin  
 touch /etc/snmp/snmpd.conf  &&  vi /etc/snmp/snmpd.conf  


Tambahkan script dibawah, sebagai referensi ada 2 jenis akses yang dapat difenisikan. apabila server monitoring observium ingin memonitoring server localhost. maka kita buat grup localhost, tetapi apabila kita ingin memonitoring diluar localhost entah itu vps dsb maka kita definisikan network/ip server tsb. berikut listing yg sudah sy coba

*ip yangdigunakan private. ganti dengan kebutuhan anda.

 #    sec.name source     community  
 com2sec network 10.130.0.0/16    public-nginx01-community  
 com2sec local  localhost      local-nginx01-community  
 #    groupName   securityModel securityName  
 group  rwgroup-network v1      network  
 group  rwgroup-network v2c     network  
 group  rwgroup-local  v1      local  
 group  rwgroup-local  v2c     local  
 #    group     context sec.model sec.level prefix read  write notif  
 access rwgroup-local ""    any    noauth  exact all    all   none  
 access rwgroup-network ""   any    noauth  exact all    all   none  
 ##    sec.name source     community  
 com2sec local   localhost       blaz-nginx01-community  
 com2sec mynetwork 10.130.0.0/16 blaz-nginx01-community  
 ##   group.name sec.model sec.name  
 group MyRWGroup v2c    local  
 group MyROGroup v2c     mynetwork  
 ##      incl/excl subtree             mask  
 view all  included .1                 80  
 syslocation Unknown (edit /etc/snmp/snmpd.conf)  
 syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf)  
 dontLogTCPWrappersConnects yes  

apabila sudah selesai kita restart service nya

 systemctl enable snmpd.service && systemctl start snmpd.service  

apabila konfigurasi berhasil kita lakukan test sebagai pengecekan bahwa konfigurasi sudah benar...

 snmpwalk -v 1 -c local-nginx02-community localhost IP-MIB::ipAdEntIfIndex  

Berikut hasil yang sudah benar.


snmp selesai... untuk instalasi observium saya tidak akan membahasnya disini. tapi saya sarankan untuk merujuk ke website official observium karena disana dijelaskan dengan sangat jelas dan mudah dipahami ... KESINI


Terima Kasih Semoga Bermanfaat... :)
Read More

Friday, June 10, 2016

How To Install NFS Server And Client on Centos 6/7 Update 2016 !!!

Posted by Willy Ivan



NFS Server Centos 7 64bit


IP Server 192.168.100.1
IP Client 192.168.100.2 

Langkah Pertama Lakukan paket instalasi untuk nfs pada masing - masing Server dan Client.

 yum install nfs-utils nfs-utils-lib  

lalu enable setiap service pada nfs agar apabila server reboot/mati pada saat up kembali service nfs akan berjalan otomatis

 systemctl enable|start rpcbind  
 systemctl enable|start nfs-server  
 systemctl enable|start nfs-lock  
 systemctl enable|start nfs-idmap  


On Server
lalukan edit file exports yang terdapat di path /etc/

 vi /etc/exports  

lalu tambahahkan folder yang akan dishare kepada client melalui nfs. (disini saya akan menghsare folder ssd yang terdapat pada path /home/

 /home/ssd/   192.168.100.2(rw,sync,no_root_squash,no_all_squash)  

keterangan :
/home/ssd/ – direktori yang akan dibagikan/share
192.168.100.2/ – ip address pada client
rw – memberikan hak akses read and write pada folder
sync – melakukan hak akses sinkronisasi
no_root_squash – enable root privilege
no_all_squash - enable user auth

 systemctl restart nfs-server  

apabila berhasil dan tidak ada error makan akan muncul seperti gambar dibawah.


On Client

agar server client dapat otomatis mount direktori pada nfs ketika booting lakukan edit pada folder fstab yang berada di path /etc/

 vi /etc/fstab  

tambahkan baris kode dibawah sebagai berikut

192.168.100.1:/home/ssd /home/ssd-client nfs rw,sync,hard,intr 0 0  

Keterangan

192.168.100.1:/home/ssd = mendefinisikan folder root path pada server nfs
/home/ssd-client = folder pada server client untuk mount folder pada nfs server
nfs = method auth pada fstab
rw,sync,hard,intr 0 0  = hak akses pada folder nfs server

apabila sudah selesai ketikan bari kode dibawah

 mount -a  
 df -h 


Selesai NFS server dan client pada Centos 7 64bit selesai ...

Terima kasih :)


Read More

Friday, June 3, 2016

Tutorial Arduino Firmata With Processing Basic RGB LED Update 2016 !!

Posted by Willy Ivan


halo teman - teman . tutorial kali ini saya akan berbagi sedikit bagaimana melakukan interfacing dengan processing untuk control lampu RGB LED dengan firmata , sebelum nya sudah pada tau apa itu firmata ? hmm. bagi yg belum tau . saya akan jelaskan sedikit. kalau menurut saya firmata itu intinya dimana kita melakukan sebuah pengkodingan pada arduino namun dipindah tempatkan ke sebuah bahasa pemrograman yang mempunyai library arduino. berbeda dengan komunikasi software serial. dimana kita harus memprogram si arduini agar menerima inputan. tetapi dengan firmata kita hanya melakukan upload sketch standard firmata. dan itu sudah mewakili kita melakukan komunikasi serial. hehehe. kalau masih bingung bisa langsung check aja disini apa itu firmata dan software yang mendukung ... DISINI 

langsung saja bagaimana implementasi basic dari firmata dengan interfacing pada processing. untuk kontrol on/off pada lampu led.

hardware yang dibutuhkan
- Arduino UNO R3
- USB Kabel
- RGB Led 1x
- Resistor 220ohm 3x
- Breadboard
- beberapa kabel jumper

setelah itu kita rangkai dengan skema di bawah. 


skema arduino rgb led

langkah selanjutnya ialah kita upload sketch firmata, cara nya adalah pilih menu file -> examples -> firmata -> standardfirmata . kita upload sketch standardfirmata ke arduino . asal kalian tahu. kehebatan firmata ialah upload sketch yang lebih cepat dibandingkan dengan kita melakukan pengkodingan pada IDE arduino. yang baudrate nya setengah dari atmega2560 .

dan terakhir. setelah selesai upload sketch standard firmata. maka kita jalankan IDE Processing. lalu copy paste kode di bawah. bagi yang belum ada library firmata processing bisa di download DISINI ....


 /*  
  created by arduinobyme.blogspot.com  
  Waktu 02.15 AM   
  18 Desember 2013  
  visit us for more tutorial  
 */  
 import org.firmata.*;  
 import cc.arduino.*;  
 import processing.serial.*;  
 int pin[] = {11,10,9};  
 Arduino arduino;  
 void setup(){  
  size(200,200);  
  smooth();  
//arduino.list()[0] yakni serial port arduino yang terhubung. 
  arduino = new Arduino(this, Arduino.list()[0],57600);   
   for(int a=0;a<=2;a++){  
    arduino.pinMode(pin[a], Arduino.OUTPUT);  
   }  
 }  
 void draw(){  
  background(255);  
  fill(255,0,0);  
  rect(width/2-60,height/2-10,25,25);  
  fill(0,255,0);  
  rect(width/2-30,height/2-10,25,25);   
  fill(0,0,255);  
   rect(width/2,height/2-10,25,25);  
 }  
 void mousePressed(){  
   if(mouseX >= width/2-60 && mouseX <= width/2-45 && mouseY >= height/2-10 && mouseY <= height/2+15)  
   {  
     fill(255);  
     arduino.digitalWrite(pin[0], Arduino.HIGH);  
   } else if(mouseX >= width/2-30 && mouseX <= width/2-5 && mouseY >= height/2-10 && mouseY <= height/2+15)  
   {  
     fill(255);  
     arduino.digitalWrite(pin[1], Arduino.HIGH);  
   } else if(mouseX >= width/2 && mouseX <= width/2+20 && mouseY >= height/2-10 && mouseY <= height/2+15)  
   {  
     fill(255);  
     arduino.digitalWrite(pin[2], Arduino.HIGH);  
   }   
   else {  
     for(int a=0;a<=2;a++){  
    arduino.digitalWrite(pin[a], Arduino.LOW);  
   }  
   }  
 }  

apabila kalian berhasil. maka pada saat kita menekan kotak pada setiap warna. maka warna tersebut akan langsung menyala sesuai dengan kotak yang di tekan oleh mouse. program ini bisa di kembangkan dengan pengkontrolan PWM dsb.

sekian semuanya dan terima kasih.
Read More

Installation to Nand Storage Ibox Itead Core A20 using Lubuntu Update 2016

Posted by Willy Ivan

ITEAD CORE A20 from ITEAD STUDIO


               Hai semuanya sedikit lagi mau berbagi sebagai bahan dokumentasi pribadi walau isinya bisa dibilang sampah #ups.  kenapa sampah ? ya karena ane kesal sih 2 hari ngoprek nih mini pc dari itead yang minim resources nya bikin pusing kepala muter muter terusss  HAHAHAHA,  at least semuanya baik baik saja. Bagi teman - teman yang belum tau itead core A20 merupakan mini pc jebolan dari itead dengan menggunakan chipset allwinner A20 dengan port ethernet GIGABIT coyy. Tapi yang jadi pertanyaan kenapa gua beli ? anda salah!  gua ga beli tapi diberi boss disuruh installin dan yang paling menjengkelkan adalah harus install ke NAND storage yang merupakan bawaan dari itead core A20 ini. basicly kalau mau install mini pc biasanya kita menggunakan micro sd ? betul ? tetapi ada cara yang lebih advance lagi yaitu memanfaatkan nand storage internal dari mini pc untuk diinstall. kalau boardnya cubieboard sih banyak bertebaran resourcenya tapi ini secara itead gitu lohhh yang ane jarang beli produk dari mereka. ups tidak bermaksud merendahkan sebuah produk cuman ya realistis aja, klo ane ngoprek sesuatu belilah yang bnyk resource supaya memudahkan kita juga. 
               Hal yang perlu diinget ketika menginstal ini mini pc melalui NAND mau jenis apapun jenis mini pc nya itu BISA!!!. Kenapa saya katakan bisa ? karena asal teman - teman tahu semua saya berhasil menginstall ini dengan tutorial flashing dari android yang menggunakan chipset A20. beranjak dari informasi itulah ane putuskan untuk mencoba dan ternyata WORKS!. Dari semua image yang tersedia dan yg sudah di download cuman beberapa yang support NAND. berhati - hati ketika memilih image untuk os yang akan diinstal. langkah untuk melakukan instalasi ke nand storage ialah persiapkan bahan - bahannya

- PhoenixSuit (WINDOWS only DOWNLOAD!! , ane sudah coba untuk versi linux seperti livesuit itu ada error mungkin karena pake debian ane males fixingnya ahahah. tapi teman2 bisa coba bila menggunakan ubuntu sepertinya lancar jaya berikut linknya http://linux-sunxi.org/LiveSuit
- IMG dengan support nand.. ditutorial ini ane pake img dari cubietruck dengan distro lubuntu bisa download disini http://dl.cubieboard.org/software/a20-cubietruck/lubuntu/ ) gunakan yang NAND version. bisa juga menggunakan IMG dari distro yang lain. INGAT setau ane yang bisa dipasang adalah mini pc yang menggunakan CHIPSET A20. 
- kabel USB male to male (seperti ini gambar dibawah, murah cuman 25rb an) 


pertama extract phoenixsuitnya lalu jalankan sehingga muncul tampilan seperti ini ya teman2. 



 apabila sudah sesuai dengan gambar diatas plug ITEAD CORE A20 dengan power sehingga menyala dengan LED warna merah. pada saat akan mencolokkan dengan usb ke komputer. yang harus diperhatikan ialah tekan tombol UBOOT pada itead lalu masukkan kabel usb ke komputer sehingga muncul validasi seperti gambar dibawah . 



TEKAN YES dengan keadaan tombot UBOOT ditekan. apabila progess sudah berjalan seperti gambar dibawah tombol UBOOT bisa dilepas dan tunggu beberapa saat 



apabila sudah selesai dan muncul tampilan seperti gambar dibawah berarti install to nand itead core A20 berhasil 




username dan password : linaro
*perlu diinget ketika sedang proses instalasi harap menyolokkan kabel hdmi ke monitor. kenapa? pada saat flashing berhasil itead core A20 akan otomatis reboot. 
*ketika login dan mengalami hal blank screen gunakan terminal dengan menekan ctrl + alt + f2 






source : 
https://www.itead.cc/blog/ibox-upgrade-guide-phoenixsuit-tool-2
http://linux-sunxi.org/LiveSuit


Read More