Rabu, 23 Januari 2013

Creating Contact Sheet For TimeSlider Tooltip Plugin (LINUX)

Objective : 

Creating video preview picture and contact sheet that can be used for JW Player and Time Slider Tooltip Plugin under linux environment (console) . 



Tools : 
  1. FFMPEG
  2. IMAGEMAGICK
First we'll extract thumbnail from the video using ffmpeg, then those images combined in 5x5 tiles that produce 25 pictures in single canvas using montage from imagemagick (without frame etc). Each tumbnails are 108x60, these combination will produce 540x300 canvas.

How to Use :

# sh ./thumbgen.sh convert_me.mp4 1 120

convert_me.mp4 --> file name
1 --> create video tumbnails every 1 sec
120 --> create video preview image at 120 sec

these are the commands :


#!/bin/sh
# Script untuk membuat preview image dan contact sheet image dari video 
# untuk digunakan di JW Player dan Tooltip Plugin
# digitalismic.blogspot.com | modification are welcome
file=$1
# membuang ekstension sehingga nama file dapat digunakan sebagai identifikasi unik 
# setiap file yang digenerate
file_name=`echo "$file" | sed 's/....$//'`
# membuat preview image pada detik x (input ke-3), dengan ukuran 854x480
ffmpeg  -y -itsoffset -$3  -i $file -vcodec mjpeg -vframes 1 -an -f rawvideo -s 854x480 preview-$file_name.jpg
# membuat thumbnails temporary untuk membuat contact sheet dengan ukuran 108x60 
ffmpeg  -i $file -vcodec mjpeg -vf fps=fps=1/$2 -s 108x60 thumb-$file_name-%05d.jpg 
echo
echo "---------------------------------------"
count_thumbs=`find ./ -name "thumb-$file_name-*" | wc -l`
echo Finish Generate prewiew image at position $3-sec
echo Finish Generating $count_thumbs Tumbnails
echo Now Start To Create Contact Sheet "(5x5)"
echo "---------------------------------------"
# membuat contact sheet dengan ukuran 5x5
montage thumb-$file_name-*.jpg -tile 5x5 -geometry 108x60+0+0 contact-sheet-$file_name-%05d.jpg
echo Removing Generated Tumbnails
# karena sudah tidak diperlukan, maka semua file thumbnail di delete
rm -f thumb-$file_name-*.jpg
echo Finished


example result (contact sheet): 


example result (preview image):


Selasa, 17 Juli 2012

Apa Itu MYSQL Cluster ?





Cluster adalah sistem tunggal yang terbentuk dari sistem yang lebih kecil. Sistem yang lebih kecil ini bisa terbentuk dari resource yang saling berbagi atau  independen. Contoh dari sistem yang berbagi adalah node cluster yang dibentuk dalam lingkungan system virtual. Sedangkan yang independen yaitu sistem yang dibentuk dengan resource hardware sendiri dan tidak dibagi dengan sistem lain.


Lalu apa itu MYSQL cluster ?, Mysql cluster adalah kumpulan node mysql yang mereplikasi secara singkron diantara node-nodenya. Berbeda dengan proses replikasi biasa yang asyncronious, pada sistem mysql cluster data yang terdapat node-node dapat digunakan secara simultan. 

Berikut adalah perbedaan antara clustering database dengan replikasi biasa.

Keterangan : Disini dapat dilihat perbedaan dimana node-node dalam Cluster Mysql dapat digunakan dan data didalam databasenya saling singkron antar node-nya. Hal ini berbeda dengan replikasi yang hanya mengandalkan master untuk update database.

Ada 3 hal penting dalam cluster mysql :
  1. NDBD / NDB (Node Database Daemon), adalah layer dimana proses syncronious  data replicaton antar node dilakukan.
  2. NDBD_MGMD / MGM (Node Database Daemon Management), adalah daemon didalam cluster yang memiliki fungsi utama melakukan fungsi management seperti membuat, menghapus, merestart dan memlakukan proses backup dari node-node yang terdapat di cluster.    
  3. MYSQLD / API, adalah interface yang digunakan oleh pogram untuk terkoneksi kedalam database yang terdapat pada node.

Dalam post berikutnya saya akan membagi cara proses instalasi dari MYSQL CLUSTER.

Senin, 19 Maret 2012

Vbulletin Malware dan cara mengatasinya



Sudah 2 kali dalam 3 bulan terakhir forum yang menggunakan vbulletin diserang oleh malware yang berdasarkan sucuri.net dikenal dengan MW:IFRAME:HD202


Belum diketahui bagaimana malware ini bisa masuk kedalam .php maupun database, tetapi berikut ini adalah cara untuk mengatasinya :

- backup database anda terlebih dahulu
  1. Update vbulettin anda ke versi terbaru dan cara untuk mengupdatenya bisa ikuti langka2x di link ini
  2. Search didatabase vbulletin anda, kebetulan saya menggunakan phpmyadmin, masuk ke tab search pada database vbulletin anda, kemudian masukan kata %sti.php% dan search all tables . Pada kasus saya, ditemukan 6 entry yang mengandung kata sti.php , yaitu pada table template dan table templatehistory. Hapus karakter seperti pada gambar dari tiap-tiap field (note:gunakan fungsi find pada browser untuk memudahkan pencarian)











Jika langkah-langkah diatas telah dilakukan, maka scan web anda dengan online website scanner. Jika tidak ada langkah yang terlewat, maka hasil scanner tidak akan mendeteksi malware tersebut.

Senin, 12 September 2011

SSH ssh only allowing a specific command to be run

If you're a system administrator wanting to limit a specific command to a specific user, you can apply these lines to your sshd_config files


case : user monkey only allowed to use mongodb


--- edit sshd config file & adding rule ---

$ sudo nano /etc/ssh/sshd_config

Match User monkey
ForceCommand mongo localhost:27017/db

--- restart ssh service ---

$ sudo service sshd restart


NOW try login as user : monkey, you will be automatically execute mongodb. So user monkey endup logged via ssh to use mongodb and served a mongo prompt

$ ssh monkey@10.10.10.10
ssh monkey@10.10.10.10 password :
Could not chdir to home directory /home/laparlagi: No such file or directory
MongoDB shell version: 1.2.2
url: localhost:27017/db
connecting to: localhost:27017/db
type "exit" to exit
type "help" for help
>

--- if you type exit, then ssh connection will be terminated --

Rabu, 10 November 2010

Mengaktifkan SSL (https) Pada Web Server

SSL (Secure Sockets Layer) adalah sebuah protokol pengamanan komunikasi jaringan. Protokol ini bekerja pada layer aplikasi dimana paket end-to-end dienkripsi dan di dekripsi dengan menggunakan public key untuk mengantisipasi hacking method "man in the middle attack". Public key ini bisa digenerate menggunaka SSL key generator atau menggunakan jasa verified pubic key/ root certificate semisal verisign, thawte, godaddy dan lainnya.

Implementasi Pada web server
OS : Ubuntu LTS 10.04
Apache : apache2 2.2.14-5ubuntu8.2

how to : klik disini

hal yang penting dalam config ssl adalah bagian-bagian dibawah ini

NameVirtualHost *:443 --> jika menunjuk alamat tertentu sesuaikan tanda "*"
--> jika menunjuk alamat tertentu sesuaikan tanda "*"
ServerAdmin webmaster@localhost
SSLEngine On        
 SSLCertificateFile /etc/apache2/ssl/apache.pem --> menunjuk pada file certificate
DocumentRoot /var/www/ --> Dokumen root yang apan diimplementasikan ssl

Jika shared hosting, /etc/apache2/sites-available/ssl dapat dibuat beberapa contoh ssl-web1 , ssl-web2 (ingat sesuaikan config dengan catatan-catatan yang saya buat diatas ) kemudian implementasikan howto diatas.

Senin, 25 Oktober 2010

Backup database Mysql di Linux


code :
mysqldump -u username -ppassword databasename | gzip > directoryhere/backup_`date +%F`_` date +%T`.sql.gz

date +%F = full date; same as %Y-%m-%d
date +%T = time; same as %H:%M:%S
untuk format date yang dapat dipilih, selengkapnya dapat dibaca disini.
contoh implementasi :
Untuk membackup database dengan nama data_mahasiswa dengan username dan password mysql masing-masing root dan root1234 ke directory /home/backup maka perintah di console yang diketikan adalah sebagai berikut :

mysqldump -u root -proot1234 data_mahasiswa | gzip > /home/backup_`date +%F`_` date +%T`.sql.gz

file yang dihasilkan adalah = backup_2010-10-25_09:03:38.sql.gz

Untuk otomatisasi, dapat dikombinasikan dengan fasilitas cron

Selasa, 31 Agustus 2010

Sender Policy Framework (SPF), untuk menghindari email SPAM

Apa itu SPF ?

adalah sistem validasi email yang dilakukan untuk memerangi spam. SPF ini dideploy oleh admin dari suatu domail dengan memaskan record dns yang diperbolekan untuk mengirim email dengan menggunakan nama domain tertentu. Email yang telah diterima oleh server-server pernerima email kemudian akan mencocokan email yang diterima dengan source tertentu pada record DNS di internet pada domain yang bersangkutan.


domain administrator BELUM mensetting record SPF-nya, header email akan tampak seperti ini :
pada kondisi tertentu, provider email akan secara otomatis memasukan email dengan SPF seperti ini kedalam kategori SPAM !. Jika seorang email server administrator memperhatikan kondisi ini dan memasukan record SPF dengan benar kedalam record DNS-nya, maka header email akan tampak sebagai berikut :

Disini tampak bahwa "received-SPF: pass" artinya email ini secara sah dan meyakinkan, dikirim oleh server yang benar, sesuai dengan yang tercatat di record DNS.

Bagaimana Caranya Mendaftarkan record-SPF ?

Caranya mudah, silakan gunakan wizard pada alamat ini, kemudian masukan kedalam record dns anda. Hasilnya jika di cek pada who.is akan tampak seperti ini :

facebookmail.comTXT30 minutesv=spf1 ip4:69.63.178.128/25 ip4:69.63.184.0/25 ip4:66.220.144.128/25 -all