Senin, 24 Maret 2014

Mengenal Deep Packet Inspection

DPI atau Deep Packet Inspection adalah suatu teknologi yang diterapkan di Router atau alat pemantau lainnya yang berfungsi untuk memantau aliran data secara realtime dan dapat membuat keputusan terhadap aliran data tersebut.
DPI dapat melakukan pemeriksaan terhadap isi data-data yang dikirim melalui router.
Beberapa fungsi DPI adalah :

1.       Network security
DPI dapat digunakan oleh operator jaringan untuk mendeteksi dan menyaring serangan malware yang menyerang melalui jaringan.

2.        Network management
DPI juga dapat digunakan untuk membloking aliran data yang tidak diinginkan dan dapat juga digunakan untuk mengoptimasi jaringan.

3.        Surveillance
Amerika Serikat memasang peralatan DPI untuk keperluan realtime monitoringyang bekerja sama dengan Badan keamanan nasional. DPI juga digunakan oleh Negara lain untuk memantau internet traffic.

4.        Content regulation
DPI dapat melakukan pemblokiran terhadap website-website yang dianggap memiliki konten berbahaya ataupun situs porno. Dengan kemampuannya melakukan inspeksi terhadap isi keseluruhan paket-paket yang masuk ke ISP, DPI dapat menerapkan string matching dan melakukan pemblokiran.

5.        Copyright enforcement
Dikarenakan banyak pembajakan-pembajakan seperti dalam berbagai media, seperti musik, video dan dokumen, DPI dapaat menjadi solusinya dengan fungsinya yang dapat melakukan penyaringan terhadapa paket-paket yang memiliki hak cipta sebagai perlindungan dari pembajakan.

6.        Ad injection

Fungsi ini digunakan oleh perusahaan-perusahan iklan seperti seperti NebuAd dan paket Phorm yang menawarkan kepada ISP untuk menyuntikkan iklan di website tertentu yang disesuaikan pihak-pihak yang membuka web tersebut.

sumber : http://anthon-23510311.blogspot.com/2011/09/penerapan-teori-graf-pada-algoritma.html

Rabu, 19 Februari 2014

Peer to Peer dan Client Server

Dalam artikel ini kita akan mengenal apa perbedaan dari konsep peer to peer dan client-server pada jaringan komputer. Berikut sedikit penjelasannya :



1. Client-server

Pada konsep ini, dalam sebuah jaringan akan ditemukan beberapa komputer yang memiliki tugas berbeda. Satu komputer akan didedikasikan menjadi sebuah server yang akan melayani permintaan client. Keunggulan dari konsep ini adalah keamanan lebih terjamin. sedangkan kekurangannya adalah proses transfer data akan sedikit lambat dibanding peer to peer, karena harus melalui server.

2. Peer to peer

Pada konsep ini, dalam sebuah jaringan akan mempertemukan dua buah komputer yang saling terhubung secara langsung, sehingga transfer data akan lebih cepat, namun kekurangannya tingkat keamanan lebih rendah ketimbang client server.


Aplikasi Socket Programming menggunakan Java

Sebelumnya kita sudah mencoba aplikasi socket programming dengan menggunakan bahasa dan python, saat ini kita juga akan mencobanya dengan bahasa java.

aplikasi yang akan kita buat adalah aplikasi yang dapat melihat tanggal pada server. berikut langkah-langkahnya :

1. Membuat kodingan server dengan java

import java.net.*;
import java.io.*;
import java.util.*;

class DateServer
{
    publicstaticvoid main(String args[]) throws Exception
    {
        ServerSocket s=new ServerSocket(5217);

        while(true)
        {
            System.out.println("Waiting For Connection ...");
            Socket soc=s.accept();
            DataOutputStream out=new DataOutputStream(soc.getOutputStream());
            out.writeBytes("Server Date" + (new Date()).toString() + "\n");
            out.close();
            soc.close();
        }
        
    }
}

 2. Dan buat pula untuk file client

import java.io.*;
import java.net.*;

class DateClient
{
    publicstaticvoid main(String args[]) throws Exception
    {
        Socket soc=new Socket(InetAddress.getLocalHost(),5217);        
        BufferedReader in=new BufferedReader(
                new InputStreamReader(
                        soc.getInputStream()
                        )
                    );

        System.out.println(in.readLine());
    }    
}


compile file server dan client dengan perintah pada terminal :
javac <nama file>.java

lalu jalankan file server dengan perintah :
java server

dan jalankan file client :
java client

maka lihat hasilnya pada terminal client...

sumber :
http://www.dailyfreecode.com/code/date-server-client-1249.aspx




Aplikasi Socket Programming dengan Python

Pada artikel ini kita akan mencoba membuat salah satu penggunaan dari socket programming yaitu skema pengiriman pesan dari client ke server.

langkah pertama adalah membuat file server.py yang berlaku sebagai server dan client.py yang berlaku sebagai client. berikut kodingannya :

kodingan server :

# basic-socket-server.py
import socket                        # import modul socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)    # membuat objek socket
s.bind(('167.205.88.123', 1234))            #menyambungkan ke port
s.listen(5)                        # port menunggu koneksi dari client
while 1:
    connection, addr = s.accept()            # menetapkan koneksi dengan client
    print 'connected to client', addr         # mencetak ip dan port yang digunakan client
    connection.send('connected to server, quit or exit for close') # mengirimkan pesan ke client
    while 1:
        data = connection.recv(1024)        # method menerima pesan
        print '<client> ',data             # mencetak data
        if ( data == 'quit' or data == 'exit' ):
            break
    connection.close()
    break



kodingan client :

# basic-socket-client.py
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)    # membuat object socket
s.connect(('167.205.88.123', 1234))            # menyambungkan ke port server
data = s.recv(1024)                    # method menerima pesan
print data                        # mencetak pesan
while 1 :
    data = raw_input('<pesan> ')            # input isi pesan
    s.send(data)                    # kirim pesan ke server
    if ( data == 'quit' or data == 'exit' ):
        break
s.close()

lalu keduanya di save.

setelah itu, aplikasi bisa dicoba melalui terminal, menggunakan perintah
python <nama file>.py


Referensi

    http://www.tutorialspoint.com/python/python_networking.htm

Membuat aplikasi chat sederhana dengan Bahasa C

Dalam postingan ini kita akan belajar tentang penggunakaan socket programming, contoh yang kita pakai disini adalah aplikasi chatting, dengan menggunakan bahasa C,
pertama adalah buat file C yang akan menjadi server dan client. berikut kodingnya :

koding untuk server :




        #include<stdio.h>

        #include<netinet/in.h>

        #include<sys/types.h>

        #include<sys/socket.h>

        #include<netdb.h>

        #include<stdlib.h>

        #include<string.h>

        #define MAX 80

        #define PORT 43454

        #define SA struct sockaddr

        void func(int sockfd)

        {

        char buff[MAX];

        int n;

        for(;;)

        {

        bzero(buff,MAX);

        read(sockfd,buff,sizeof(buff));

        printf("From client: %s\t To client : ",buff);

        bzero(buff,MAX);

        n=0;

        while((buff[n++]=getchar())!='\n');

        write(sockfd,buff,sizeof(buff));

        if(strncmp("exit",buff,4)==0)

        {

        printf("Server Exit...\n");

        break;

        }

        }

        }

        int main()

        {

        int sockfd,connfd,len;

        struct sockaddr_in servaddr,cli;

        sockfd=socket(AF_INET,SOCK_STREAM,0);

        if(sockfd==-1)

        {

        printf("socket creation failed...\n");

        exit(0);

        }

        else

        printf("Socket successfully created..\n");

        bzero(&servaddr,sizeof(servaddr));

        servaddr.sin_family=AF_INET;

        servaddr.sin_addr.s_addr=htonl(INADDR_ANY);

        servaddr.sin_port=htons(PORT);

        if((bind(sockfd,(SA*)&servaddr, sizeof(servaddr)))!=0)

        {

        printf("socket bind failed...\n");

        exit(0);

        }

        else

        printf("Socket successfully binded..\n");

        if((listen(sockfd,5))!=0)

        {

        printf("Listen failed...\n");

        exit(0);

        }

        else

        printf("Server listening..\n");

        len=sizeof(cli);

        connfd=accept(sockfd,(SA *)&cli,&len);

        if(connfd<0)

        {

        printf("server acccept failed...\n");

        exit(0);

        }

        else

        printf("server acccept the client...\n");

        func(connfd);

        close(sockfd);

        }




koding untuk client :



        #include<stdio.h>

        #include<netinet/in.h>

        #include<sys/types.h>

        #include<sys/socket.h>

        #include<netdb.h>

        #include<string.h>

        #include<stdlib.h>

        #define MAX 80

        #define PORT 43454

        #define SA struct sockaddr

        void func(int sockfd)

        {

        char buff[MAX];

        int n;

        for(;;)

        {

        bzero(buff,sizeof(buff));

        printf("Enter the string : ");

        n=0;

        while((buff[n++]=getchar())!='\n');

        write(sockfd,buff,sizeof(buff));

        bzero(buff,sizeof(buff));

        read(sockfd,buff,sizeof(buff));

        printf("From Server : %s",buff);

        if((strncmp(buff,"exit",4))==0)

        {

        printf("Client Exit...\n");

        break;

        }

        }

        }


        int main()

        {

        int sockfd,connfd;

        struct sockaddr_in servaddr,cli;

        sockfd=socket(AF_INET,SOCK_STREAM,0);

        if(sockfd==-1)

        {

        printf("socket creation failed...\n");

        exit(0);

        }

        else

        printf("Socket successfully created..\n");

        bzero(&servaddr,sizeof(servaddr));

        servaddr.sin_family=AF_INET;

        servaddr.sin_addr.s_addr=inet_addr("127.0.0.1");

        servaddr.sin_port=htons(PORT);

        if(connect(sockfd,(SA *)&servaddr,sizeof(servaddr))!=0)

        {

        printf("connection with the server failed...\n");

        exit(0);

        }

        else

        printf("connected to the server..\n");

        func(sockfd);

        close(sockfd);

        }


ketika sudah dibuat saatnya menguji dengan menggunakan terminal, buka 2 terminal. jalan kan server di satu terminal dan client di terminal lain.
jalan kan dengan perintah :
gcc -o <nama aplikasi> <nama file c>.c
./<nama aplikasi>

setelah keduanya dijalankan, maka coba mengirim pesan.
kalau anda berhasil maka akan penampilannya akan seperti gambar berikut :


source : http://mcalabprogram.blogspot.com/2012/01/tcp-sockets-chat-applicationserver.html

Rabu, 05 Februari 2014

Setting SSL

SSL adalah kependekan dari Secure Sockets Layer, sebuah protokol yang dikembangkan oleh Netscape untuk komunikasi dokumen yang membutuhkan privasi melalui Internet. SSL menggunakan suatu sistem enkripsi yang menggunakan dua kunci untuk melakukan enkripsi data.

    SSL terdiri dari 4 jenis, yaitu:
·         SSL web server certificate with EV
·         SSL web server certificates
·         SGC SuperCerts   
·         SSL 123 Certificate

Langkah-langkah mengsetting SSL pada linux

1.     Pastikan laptop terhubung kedalam jaringan
2.     Buka terminal dan masuk ke akses root (masuk dengan perintah sudo du)
3.     Ketikan perintah apt-get install openssl
4.     Tunggu sampai instalasi berhasil
5.     Cek dengan merestart xampp untuk melihat ssl sudah terpasang atau belum

    


Sumber :

http://www.pasarhosting.com/informasi/knowledge-base/detail/page/1/back_to/kb-trial/content/secure-socket-layer-ssl/



Setting SSH

SSH adalah aplikasi pengganti remote login seperti telnet, rsh dan rlogin yang jauh lebih aman.Fungsi utama
aplikasi ini adalah untuk mengakses mesin secara remote. Bentuk akses remote yang dipakai adala pada 
mode teks maupun grafis. Dengan menggunakan SSH semua percakapan antara klien dan server 
dienkripsi, hal ini mengakibatkan jika percakapan disadap maka sulit unutk mengartikannya. Pada
Ubuntudikenal openSSH, yaitu versi bebas dari keluarga SSH.

Berikut cara instalasi SSH pada Ubuntu

1.      buka terminal dan masuk ke akses root



2.      ketikan perintah apt-get install openssh-server
3.      tunggu sampai insatalasi berhasil

4.      jika sudah, ketikan perintah ssh pada terminal, lihat hasilny
d

sumber
http://rinalty.wordpress.com/tugas-semester4/lap2-manajemen-jaringan/


s

Setting Jaringan Komputer (LAN)

sekarang kita kang mengenal setting Jaringan Komputer (LAN) pada linux. sebelumnya sambungkan Laptop anda dalam sebuah jaringan komputer. kemudian ikuti langkah-langkah berikut :

1. Ketikan perintah ifconfig pada terminal, amati hasilnya


2. ketikkan perintah cat /etc/resolv.conf. perhatikan alamat DNS nya 


3. Ketikkan perintah ifconfig eth0 192.168.1.x netmask 255.255.255.0 ( x disini dapat bernilai berapapun, sebagai contoh disini diisi 1)




4. Ketiikan perintah sh -c "echo nameserver 8.8.8.8 > /etc/resolv". kemudian ketik perintah cat /etc/resolv.conf. amati output nya



1.     
-          Ifconfig : perntah untuk mengetahui alamat – alamat yang terdapat pada jaringan yang sedang kita pakai
-          cat /etc/resolv.conf : perintah untuk menuliskan isi file dari resolv.conf dilayar yang berisikan alamat DNS sistem
-          ifconfig eth0 192.168.1.30 : mengubah default gateway menjadi alamat yang di isikan (192.168.1.30 pada contoh)
-          echo “nameserver 8.8.8.8“ > /etc/resolv.conf dan cat /etc/resolv.conf : perintah yang digunakan untuk mengubah nilai DNS pada resolv.conf

2.      Fungsi IP, subnet mask, gateway, dan alamat DNS server
-          IP Address berfungsi sebagai suatu identitas agar dikenali dalam sebuah jaringan.
-         Subnet Mask berfungsi sebagai alamat yang menunjukan identitas computer berada. Subnet mask berisikan suatu nomor yang dikombinasikan dengan IP address.
-          Gateway berfungsi sebagai converting agar dua jaringan komputer yang berbeda dapat berkomunikasi dengan cara memberikan rute untuk paket data sampai di tujuan.
-          DNS Server berfungsi untuk menerjemahkan IP address dijaringan yang menggunakan TCP/IP menjadi nama yang lebih mudah dimengerti dan sebaliknya.



Setting FTP Server



FTP (File Transfer Protocol) adalah sebuah protokol internet yang berjalan didalam lapisan aplikasi yang merupakan standar untuk pengiriman file antar komputer melalui sebuah jaringan.

FTP adalah salah satu protokol yang paling awal dikembangkan dan masih bertahan penggunaannya sampai saat ini baik untuk kegiatan pengunduhan atau pengunggahan file-file.

Setting FTP pada Linux:
  1. Buka terminal
  2. Login sebagai root
  3. Install paket vstpd dengan perintah : yum install vsftpd (untuk fedora) dan sudo apt-get install vsftpd   
                               



     4.   Lalu restart vsftpd dengan perintah sudo /etc/init.d/vsftpd restart



     5.  Coba ketikkan ftp 127.0.0.1 jika connected berarti berhasil



sumber :
http://akhmadsyaiful.com/setting-ftp-server-menggunakan-vsftpd-di-linux-ubuntu-10-04/

Install web Server dan Database Server


1. Web Server dan Database Server
a. Pengertian dan Fungsi Web Server



Web server adalah sebuah aplikasi server yang melayani permintaan HTTP atau HTTPS dari klien melalui browser dan mengirimkannya kembali dalam bentuk halaman-halaman web atau menolak permintaan tersebut jika halaman yang diminta tidak tersedia. Fungsi utama sebuah web server adalah untuk mentransfer berkas atas permintaan pengguna melalui protokol komunikasi yang telah ditentukan. Karena sebuah halaman web dapat terdiri atas berkas teks, gambar, video, dan lain-lain web server juga berfungsi untuk mentransfer seluruh aspek pemberkasan dalam sebuah halaman web yang terkait.

b. Pengertian dan Fungsi Database Server

sebuah layanan yang dapat berupa program komputer yang berfungsi melayanai pengelolaan basis data dan melayani komputer atau program aplikasi basis data yang menggunakan model klien/server.
selain itu, database server juga dapat merujuk kepada sebuah komputer yang memiliki fungsi sebagai server untuk sebuah manajemen basis data dan pada pada umumnya menyediakan fungsi server basis data.sistem ini di kenala sebagai Sistem Manajemen Basis Data (SMBD) contoh aplikasinya MySQK dan sangat bergantung kepada model klien-server.

Dalam artikel ini kita akan mencoba menginstall aplikasi Xampp di Linux, distro yang saya pakai adalah linux sabily

tahap pertama :
tentunya install dulu OS linux di PC/Laptop anda (distro boleh yang mana saja)







tahap kedua :
siapkan installer Xampp untuk linux, bisa di unduh di http://www.apachefriends.org

tahap ketiga :
buka terminal dan ketikan perintah

sudo su (untuk akses ke root) dan masukan password akun (jika diperlukan)

lalu ketikan :


chmod  +x /home/<nama_user>/<namafilexamp>.run
contoh : chmod +x /home/ibnuq/xampp.run


biarkan instalasi beres..
Aktifkan melalui perintah /opt/lampp/lampp start. Amati output yang ditampilkan.
Buka web browser anda. Ketikkan http://127.0.0.1 atau http://localhost.





2. Fitur dan Kelebihan XAMPP
XAMPP adalah sebuah software web server apache yang didalamnya sudah tersedia database server mysql dan support php programming. Selain gratis, Xampp dapat mendukung instalasi di Linux dan Windows. Dengan menginstal satu kali, dalam PC/laptop kita sudah tersedia Apache web server, MySQL Database Server, PHP Support (PHP 4 dan PHP 5) dan beberapa module lainnya.  XAMPP merupakan tool yang menyediakan paket perangkat lunak ke dalam satu buah paket. Dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi dan konfigurasi web server Apache, PHP dan MySQL secara manual. XAMPP akan menginstalasi dan mengkonfigurasikannya secara otomatis.


sumber :
modul-praktikum-jaringan komputer-itb.pdf
http://aslinegeriku.blogspot.com/2013/09/server-dan-aplikasi-server.html
http://www.mlarik.com/2013/07/sekilas-tentang-web-browser-dan-cara-kerjanya.html
http://sitiloners.blogspot.com/2010/07/pengertian-dan-fungsi-xampp.html