Sabtu, 07 Februari 2015

MEDIABROWSER di FreeBSD solusi cepat membangun Media Server

Tampilan Medibrowser dari browser Firefox
Dengan Mediabrowser server anda dapat mengelola seluruh file media di rumah atau di mana saja, menggunakan perangkat apapun dengan browser web yang modern. Berbagi dengan keluarga dan teman-teman, memonitor aktivitas server Anda, mengelola perpustakaan Anda, dan banyak lagi.Cara instalasinya pun mudah. Kali ini akan saya coba menulis tutorial singkat instalasi Mediabrowser server di FreeBSD server:
  1. Install Mediabrowser dari pkg:
    pkg install mediabrowser
  2. Konfigurasi FFMpeg untuk mengaktifkan mp3 transcoding terlebih dahulu update FreeBSD ports tree:
    portsnap fetch update
     
  3. Remove default FFMpeg package
    pkg delete -f ffmpeg
     
  4. Reinstall FFMpeg dari ports dengan lame option enabled
    cd /usr/ports/multimedia/ffmpeg
    make config
    # pilih opsi lame enable
    make install clean

    agar  MediaBrowser berjalan otomatis saat boot :
    mediabrowser_enable="YES"

    menjalankan Mediabrowser pertama kali:
    service mediabrowser onestart
  5. Setelah Mediabrowser berjalan silahkan akses dari browser anda :
    http://IPSERVER:8096/mediabrowser

  6. Lakukan konfigurasi melalu dashboard di browser anda.
  7. SELESAI

    Selamat mencoba :)

    referensi : http://mediabrowser.tv/community/index.php?/topic/692-server-installation-guide/

Jumat, 06 Februari 2015

Instalasi NGINX web server di FreeBSD (5 menit)

Kali ini saya akan menulis tutorial singkat basic setup nginx di FreeBSD...cukup luangkan waktu 5 menit saja untuk menyelesaikan instalasi nya :
  1. Saya anggap server FreeBSD anda sudah siap
  2. Kita akan melakukan instalasi melalui pkg:
    # pkg install nginx
  3. Ikuti step nya sampai selesai.
  4. Ubah nginx.conf seperti contoh dibawah ini:
    #ee /usr/local/etc/nginx/nginx.conf

    #user  nobody;
    worker_processes  1;
    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;
    #pid        logs/nginx.pid;
    events {
        worker_connections  1024;
    }

    http {
        include       mime.types;
        default_type  application/octet-stream;
        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';
        #access_log  logs/access.log  main;
        sendfile        on;
        #tcp_nopush     on;
        #keepalive_timeout  0;
        keepalive_timeout  65;
        #gzip  on;

        server {
            listen       80;
            server_name  localhost;
           #charset koi8-r;
            #access_log  logs/host.access.log  main;

            location / {
                root   /usr/local/www/nginx;
                index  index.html index.htm;
            }

            #error_page  404              /404.html;
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   /usr/local/www/nginx-dist;
            }
            # proxy the PHP scripts to Apache listening on 127.0.0.1:80
            #
            #location ~ \.php$ {
            #    proxy_pass   http://127.0.0.1;
            #}

            # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
            #
            #location ~ \.php$ {
            #    root           html;
            #    fastcgi_pass   127.0.0.1:9000;
            #    fastcgi_index  index.php;
            #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            #    include        fastcgi_params;
            #}

            # deny access to .htaccess files, if Apache's document root
            # concurs with nginx's one
            #
            #location ~ /\.ht {
            #    deny  all;
            #}
        }

        # another virtual host using mix of IP-, name-, and port-based configuration
        #
        #server {
        #    listen       8000;
        #    listen       somename:8080;
        #    server_name  somename  alias  another.alias;

        #    location / {
        #        root   html;
        #        index  index.html index.htm;
        #    }
        #}

        # HTTPS server
        #
        #server {
        #    listen       443 ssl;
        #    server_name  localhost;

        #    ssl_certificate      cert.pem;
        #    ssl_certificate_key  cert.key;

        #    ssl_session_cache    shared:SSL:1m;
        #    ssl_session_timeout  5m;

        #    ssl_ciphers  HIGH:!aNULL:!MD5;
        #    ssl_prefer_server_ciphers  on;

        #    location / {
        #        root   html;
        #        index  index.html index.htm;
        #    }
        #}
  5. Cek di browser anda dengan memanggil IP SERVER anda.
  6. SELESAI


    Selamat mencoba :)

Selasa, 14 Oktober 2014

Membatasi Akses User Hotspot Yang Belum Bayar Dari Sisi Proxy

Punya user hotspot yang bandel telat bayar bulanan? mau di putusin koneksi tapi tetep bayar meski telat.. mau di kerasin susah juga nanti malah minta cut permanent...mungkin cara ini bisa di coba..batasi aksesnya ke situs2 utama seperti google.com...karena pasti mereka butuh yang namanya googling..

caranya :
1. Punya proxy server, squid atau lusca sama saja.
2. Punya local web server...main package saja..gak perlu install modul2 yang lain..default saja.
3. Edit squid.conf dengan tambahan option seperti berikut :

acl banned_clients src 192.168.168.30  #ip yang di blok
acl banned_url dstdomain .google.com .google.co.id #url yang diblock utk ip bersangkutan
http_access deny banned_clients banned_url
deny_info http://saveourgen.org/peringatan.txt banned_clients banned_url #web info banned

buat file peringatan.txt di web server nya .. pastikan bisadi buka dengan mengetikan http://ipserver/peringatan.txt

reconfigure ulang : squid -k reconfigure

Selesai..setiap kali user dengan ip yang tercantum mencoba googling akan langsung di deny dan di redirect ke web local yang bisa anda isi pesan semisal... WOIIII BAYAR DULU WOIII !!! :)

Minggu, 16 Maret 2014

SCRIPT AUTOSHUTDOWN SERVER, COCOK BAGI PENGGUNA UPS KEROYOKAN


Masalah kecukupan daya backup listrik akhir-akhir ini cukup menghantui saya, ups cuman ada sebiji itu pun di utamakan untuk beberapa perangkat akses point, sedangkan mesin server mengalah tanpa ups sehingga ketika terjadi loss power dari PLN tamat lah sudah riwayat nya.

Akhirnya terpikir untuk mengikutkan mesin server di ups juga, yang sudah di pakai untuk backup daya modem, mikrotik dan akses point. Tanpa mesin server yang ikut mengambil daya, ups mampu bertahan sekitar 3 jam, karena kebutuhan daya dari akses point, modem dan mikrotik tidak terlalu besar. Kira kira kalau mesin server ikut mengambil daya paling Cuma bertahan 15 menitan. Ini yang tidak boleh terjadi. Akhirnya saya berpikir paling tidak mesin server tidak mati secara tiba-tiba ketika loss power untuk menghindari kerusakan hardware server dan daya ups tetep prioritas sebagai backup utama modem, mikrotik dan akses point.

Maka saya mencoba membuat script autoshutdown, script autoshutdown.sh ini akan mengecek ketersediaan listrik dari PLN dengan cara ping ke device yang tersambung langsung ke listrik PLN, jadi ketika loss power terjadi ping akan no reply dan mesin server menjalankan perintah shutdown. Device yang di gunakan untuk cek ping bisa apa saja yang penting berdaya rendah sehingga hemat energi. Disini saya menggunakan modem bekas yang butuh daya dari adaptor 9v saja. Pada kali ini modem yang akan  dijadikan device cek ping di beri ip 192.168.50.250

Berikut script autoshutdown.sh :
#!/bin/sh
IP_CHECK='192.168.50.250'

JIKA_NYALA=0
for IP in $IP_CHECK; do
ping -c 1 -s 1 -t 10 $IP
if [ $? -eq 0 ]; then
JIKA_NYALA=1
echo "$IP menjawab, PLN  status OK: $(date)" >> /var/log/shutdown.log
break
fi
done

if [ $JIKA_NYALA -eq 0 ]; then
echo "PLN status KO! Shutdown NOW: $(date)" >> /var/log/shutdown.log
/sbin/shutdown -p now
fi

letakan file ini di tempat yang anda suka misal /usr/local/etc/shutdown/autoshutdown.sh, kita akan jalankan file ini per  3 menitan melalui crontab. Sebelumnya rubah dulu permission nya:

#chmod +x /usr/local/etc/shutdown/autoshutdown.sh

Setelah itu kita tambahkan cronjob pada crontab:

#ee /etc/crontab
# check ping to 192.168.50.250 for auto shutdown script
*/3    *       *       *       *       root    /usr/local/etc/shutdown/autoshutdown.sh

Simpan dan selesai. Untuk mencoba script apakah sudah berjalan normal, anda bisa mencoba mematikan device cek ping yang di set tadi, jika berjalan sempurna maka maksimal mesin server hanya menggunakan 3 menit daya ups  selanjutnya akan melakukan shutdown sendiri. Mesin server aman dari gangguan kerusakan hardware dan daya ups bisa di hemat seefisien mungkin.

SELAMAT MENCOBA

Jumat, 01 November 2013

NFS (Network File System) di FreeBSD untuk source media XBMC Media Center



NFS atau Network File System memberikan kemudahan kepada kita untuk berbagi direktori dan file-file dengan pihak lain melalui sebuah network. Dengan menggunakan NFS, pengguna atau sebuah program dapat mengakses file secara remote seperti layaknya mengakses ke local file mereka. Bukan hanya HDD yang bisa di share..dengan NFS removable device pun bisa di share semisal CDROM, sehingga meminimalkan pengadaan removable media pada jaringan Anda.Di FreeBSD NFS ini sudah siap digunakan tanpa perlu instalasi, hanya perlu untuk mengaktifkan daemon saat startup dan mengatur bagian direktori mana yang akan di share dengan berbagai pilihan opsi.Disini saya menggunakan NFS sebagai source untuk media share dengan menggunakan program XBMC Media Center, jadi NFS server akan diakses oleh program untuk mengeksekusi file media yang ada..langsung saja ya:

1. edit /etc/rc.conf dengan menambahkan :
nfs_server_enable="YES"
rpcbind_enable="YES"
mountd_flags="-n" #Allow non-root mount requests to be served.
nfs_reserved_port_only="NO"   #Allow for insecure ports to be used by NFS.
nfs_server_flags="-u -t -n 4"     #Serve UDP and TCP with 4 servers.

2. edit /etc/exports
karena akan diakses melalui 2 network maka saya tidak memakai nama host tapi alamat networknya:
/var/boxmovie -alldirs,quiet -ro -mapall=root -network 192.168.10.0 -mask 255.255.255.0
/var/boxmovie -alldirs,quiet -ro -mapall=root -network 192.168.50.0 -mask 255.255.255.0
sebelumnya buat dulu direktori dan ubah permisinya:mkdir /var/boxmovie
chmod -R +x /var/boxmovie

3. SELESAI :D reboot...dan saya coba akses dari XBMC media center dapat diakses dengan baik dan lancar. SELAMAT MENCOBA!!!