Senin, 23 Mei 2016

NAT (Network Address Translation)

Internet merupakan sebuah jaringan yang menghubungkan seluruh pengguna komputer di seluruh dunia. Untuk menghubungkan setiap komputer tersebut digunakan sebuah pengenal komputer yang disebut dengan IP Address. Satu IP Address hanya dapat digunakan oleh satu komputer, dalam satu jaringan tidak diperbolehkan adanya IP Address yang sama. Sedangkan jumlah IP Address yang tersedia tidak sebanding dengan jumlah pengguna yang akan terhubung dengan jaringan internet. Untuk mengatasi semua itu, disiasatilah dengan diciptakanya protocol bernama NAT (Network Address Translation). Apa Itu NAT, dan apa fungsinya?

Pengertian NAT (Network Address Translation)

NAT adalah sebuah metode untuk menghubungkan lebih dari satu komputer ke jaringan internet menggunakan satu IP Public. Dengan demikian keterbatasan ketersediaan IP Address untuk pengguna komputer dapat diatasi. Dengan NAT, satu IP Public tersebut mewakili IP Address komputer dalam jaringan tersebut. Sesuai dengan namanya, Network Address Translation menerjemahkan atau mengubah IP address pada jaringan privat menjadi IP Public untuk terhubung dengan jaringan internet.
NAT biasanya dipasang pada router, untuk menggabungkan dua jaringan berbeda menjadi satu kemudian menerjemahkan IP Address dari jaringan itu ke IP Public yang memiliki hak legal untuk mengakses jaringan internet.

Fungsi NAT (Network Address Translation)

  • Menerjemahkan IP Address komputer menjadi IP Public yang memiliki hak akses ke jaringan Internet
  • Menghemat IP Legal yang dibutuhkan oleh Internet Service Provider
  • Menghindari pengulangan pengalamatan ketika jaringan berubah
  • Mengurangi duplikat IP Address
  • Meningkatkan fleksibilitas jaringan

Jenis-Jenis NAT (Network Address Translation)

1. NAT Statis

NAT Statis adalah yang menggunakan tabel routing tetap, alokasi yang diberikan ditetapkan sesuai dengan alamat asal ke alamat tujuan. Jadi komputer tidak dapat melakukan transaksi data apabila belum didaftarkan dalam tabel NAT. Penerjemahan dilakukan ketika sebuah IP Address lokal dipetakan dalam IP Public, alamat tersebut dipetakan satu lawan satu secara static. NAT akan melakukan data request dan data sent sesuai dengan aturan yang telah ditetapkan dalam tabel NAT.

2. NAT Dinamis

NAT dinamis menggunakan logika balancing, yaitu dimana pada tabel NAT ditanamkan logika kemungkinan dan pemecahan dari suatu alamat. Ada 2 jenis NAT dinamis, yaitu NAT System Pool dan NAT System Overload.
 
Sumber :  http://www.tutorialkomputerlengkap.com/2015/12/pengertian-nat-network-address.html

Proxy Server

Pengertian proxy adalah server yang menyediakan suatu layanan untuk meneruskan setiap permintaan user kepada server lain yang terdapat di internet. Atau definisi proxy server yang lainnya yaitu suatu server atau program komputer yang mempunyai peran sebagai penghubung antara suatu komputer dengan internet.

Cara kerja Proxy server
Bagaimanakah proxy bekerja? Sebenarnya prinsip kerja proxy server sangatlah sederhana, saat user menggunakan layanan suatu proxy lalu meminta file atau data yang terdapat di public server (internet) maka proxy akan meneruskannya ke internet jadi seolah-olah proxy tersebut yang memintanya. Dan saat proxy server telah mendapatkan apa yang diminta oleh user, proxy akan memberikan respon kepada user jadi seolah-olah dialah public servernya.
Apa itu proxy server?
Apa itu proxy server?
Fungsi proxy
Berikut di bawah ini adalah beberapa fungsi proxy:
1. Fungsi conecting sharing
Salah satu fungsi proxy adalah sebagai connecting sharing yaitu sebagai penghubung atau perantara pengambilan data dari suatu alamat IP dan diantarkan ke alamat IP lainnya ataupun kepada IP komputer user.
2. Fungsi filtering
Terdapat beberapa proxy yang dilengkapi dengan firewall yang dapat memblokir beberapa atau sebuah alamat IP yang tidak diinginkan, sehingga beberapa website tidak dapat diakses dengan memakai proxy tersebut. Itulah salah satu fungsi dari proxy sebagai filtering. Baca juga: Pengertian firewall dan fungsinya terlengkap.
3. Fungsi caching
Dan fungsi proxy yang lainnya yaitu sebagai fungsi caching, disini maksudnya proxy juga dilengkapi dengan media penyimpanan data dari suatu web, dari query ataupun permintaan akses user. Misalnya permintaan untuk mengakses suatu web dapat lebih cepat jika telah ada permintaan akses ke suatu web pada pemakai proxy sebelumnya. Itulah fungsi proxy sebagai chacing.
Hal-hal yang dapat dilakukan oleh web proxy
Web proxy adalah komputer server yang bertindak sebagai komputer lainnya berfungsi untuk melakukan request terhadap kontent dari suatu jaringan internet ataupun jaringan intranet. Adapun hal-hal yang dapat dilakukan oleh web proxy diantaranya sebagai berikut ini:
  • Dapat menyembunyikan alamat IP address.
  • Dapat dipakai untuk mengakses suatu website yang telah di blok oleh ISP (Internet service provider) atau oleh suatu organisasi. Baca juga: Pengertian, contoh dan fungsi ISP (Internet Service Provider).
  • Dapat di gunakan untuk men-blok beberapa atau sebuah website yang nantinya didak dapat diakses.
  • Dapat men-filter cookies yang tidak di inginkan dan seluruh cookies yang tersimpan di encrypt.
  • Dan dapat meningkatkan keamanan privacy pengguna.

Minggu, 22 Mei 2016

FTP Server

Diawali dengan penginstallan paket proftpd
server-debian:~# apt-get install proftpd 


FTP1

Pada Package Configuration pilih standalone karena server yang dibuat berdiri sendiri dan tekan enter untuk melanjutkan proses instalasi
Lalu atur hak akses dari folder setiap user yang ada
server-debian:~# chmod 777 /home/namauser
Lakukan Restart layanan proftpd
[root@admin ~]# /etc/init.d/proftpd restart

FTP2

Terakhir lakukan pengetesan FTP Server yang sudah dikonfigurasi
server-debian:~# ftp ftp.linuxdebian.or.id


FTP3

Mail Server

Untuk membuat sebuah Mail Server maka hal pertama yang dilakukan adalah menginstall paket postfix, courier-imap dan squirrelmail
server-debian:~# apt-get install postfix courier-imap squirrelmail
Pada Package Configuration “Configuring courier-base” akan terdapat pesan “Create directories for web-based administration?” pilih <Yes>.
Pada Package Configuration “Postfix Configuration” tekan enter (OK) untuk melanjutkan proses instalasi. Lalu pilih Internet Site dan enter(OK). Masukkan nama domain pada System mail name yang berfungsi sebagai alamat email dari mail server yang dibuat dan tekan enter untuk melanjutkan instalasi.
Lakukan pengeditan pada file /etc/postfix/main.cf
server-debian:~# vim /etc/postfix/main.cf

Mail1

Dilanjutkan dengan setting squirrelmail server-debian:~# /etc/squirrelmail/conf.pl


Mail2

Tekan 2 dan enter untuk masuk pada server setting. Lalu pilih 1 untuk memasukkan nama domain dan tekan R untuk kembali pada menu utama.
Pada menu utama pilih D (Set pre-defined setting for spesific IMAP servers) dan pilih courier IMAP server dengan cara mengetik courier.
Tekan S dan enter untuk menyimpan semua pengaturan dan keluar dari squirrelmail configuration
Membuat Directory Maildir untuk menyimpan e-mail yang masuk pada directory /etc/skel
server-debian:~# maildirmake /etc/skel/Maildir
Buat symlink untuk squirrelmail yang sudah dikonfigurasi
server-debian:~#
ln –s /etc/squirrelmail/apache.conf /etc/apache2/conf.d/squirrelmail.conf
Lakukan edit pada file /etc/apache2/conf.d/squirrelmail.conf
server-debian:~# vim /etc/apache2/conf.d/squirrelmail.conf
Lalu edit /squirrelmail menjadi /webmail
Alias /webmail /usr/share/squirrelmail

Mail3

Lakukan Restart pada layanan postfix, courier-imap dan apache2
server-debian:~# /etc/init.d/postfix restart
server-debian:~# /etc/init.d/courier-imap restart
server-debian:~# /etc/init.d/apache2 restart
Buat sebuah user baru yang nantinya akan digunakan untuk mencoba
mail server yang sudah terkonfigurasi.
server-debian:~# adduser guest
Lakukan pengetesan Mail Server

Sumber : SMK Negeri 1 Purwosari "Modul Debian 5.0 Konfigurasi Server Linux Debian 5.0"

Aplikasi Server-Client, GETIP, GETNAME, IPTONAME, NSLOOKUP, IP dan Nama IP

Aplikasi Server-Client dengan Java
1. Buat program server terlebih dahulu seperti di bawah ini, simpan dengan nama simpleServer.java





Listing diatas digunakan untuk membuat server dengan mengimport package java.io yang digunakan untuk input dan output. Disini class nya diberi namaa simpleServer. Port yang digunakan port 5000. jika aplikasi dijalankan akan muncul kalimat "Aplikasi Server hidup...". Jika pesan yang diterima adalah "salam" maka server akan mengirimkan pesan "salam juga" kepada client, selain daripada pesan "salam" maka server akan membalas "Maaf, saya tidak mengerti".

2. Buat program Client, simpan dengan nama simpleClient.java



Program ini berhubungan dengan program Server diatas dengan menggunakan package yang sama dan port yang sama.  blok program try  pertama digunakan untuk membuka koneksi ke server pada port REMOTE_PORT. Kemudian blok program try kedua digunakan untuk menulis ke server, program Client akan meminta untuk memasukkan kata kunci yaitu "salam", jika salah akan ada pesan error. blok program try ketiga digunakan untuk menerima tanggapan yang diberikan oleh server. Jika memasukkan kata kunci "salam" maka akan muncul "Dari server : salam juga, selain pesan "salam" maka akan tercetak "Dari server : Maaf, saya tidak mengerti".

3. Compile kedua program diatas dengan mengetikkan perintah
 javac simpleServer.java
 javac simpleClient.java

4. Jalankan kedua program tersebut dikomputer anda. Pertama jalankan server, (buka
jendela console shell lebih dulu), dan tunggu koneksi client
java simpleServer
Untuk menjalankan program client buka jendela console shell baru dan ketikkan
java simpleClient <nama_komputer_server> 
Output :
  
 
 GET IP


1. Buat file .java pada notepad

2. Ketikan program di bawah ini
import java.net.*;
public class getip {
          public static void main(String args[]) throws Exception {
          InetAddress host = null;
          host = InetAddress.getLocalHost();
          byte ip[] = host.getAddress();
                 for (int i=0; i<ip.length; i++) {
                     if (i > 0) {
                     System.out.print(".");
                     }
                 System.out.print(ip[i] & 0xff);
                 }
          System.out.println();
          }
}

3. Setelah selesai save dengan nama getip.java
4. Logika Program GETIP
Program ini menggunakan package java.net.*. Nama classnya yaitu getip. Pertama-tama InetAddress host nya dideklarasikan null, kemudian untuk host nya didapat dari InetAddress.getLocalHost, memanggil LocalHost nya. byte ip memanggil host.getAddress. Kemudian pada output akan tertera ip komputer yang digunakan.
5. Kemudian compile pada cmd sehingga akan tampil ip yang digunakan
 
 
GET NAME

1. Buat file .java pada notepad. program ini untuk mengetahui nama dari komputer yang digunakan.

2. Ketikan program di bawah ini
import java.net.*;
public class getName {
          public static void main(String args[]) throws Exception {
          InetAddress host = null;
          host = InetAddress.getLocalHost();
          System.out.println("Nama komputer Anda: " +
          host.getHostName());
         }
}

3. Setelah selesai save dengan nama getName.java
4. Logika program getName
Program ini menggunakan package java.net.*. Nama classnya yaitu getName. Pertama-tama InetAddress host nya dideklarasikan null, kemudian untuk host nya didapat dari InetAddress.getLocalHost. Pada output akan ditampilkan kalimat "Nama komputer Anda : " dan akan ditampilkan nama komputernya.

5. Kemudian compile dan jalankan program diatas.

 
 IPtoName
 1. Buat file .java pada notepad program ini untuk menemukan nama dengan ip

2. Ketikan program di bawah ini
import java.net.*;
public class IPtoName {
public static void main(String args[]) {
if (args.length == 0) {
System.out.println("Pemakaian: java IPtoName <IP address>");
System.exit(0);
}
String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch (UnknownHostException e) {
System.out.println("invalid IP - malformed IP");
System.exit(0);
}
System.out.println(address.getHostName());
}
}

3. Setelah selesai save dengan nama IPtoName.java
4. Logika program 
Pada program diatas digunakan package java.net.*. Class nya diberi nama IPtoName. Pada output akan dicetak kalimat "Pemakaian : java IPtoName <IP address>" disini masukkan IP Address yang sebelumnya telah didapatkan dengan program getip.java. Kemudian dari Ip tersebut akan didapatkan nama komputer yang dipakai.

5. Output
 
 NsLookup
 1. Buat file .java pada notepad

2. Ketikan program di bawah ini
import java.net.*;
public class NsLookup {
public static void main(String args[]) {
if (args.length == 0) {
System.out.println("Pemakaian: <namahost>");
System.exit(0);
}
String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch(UnknownHostException e) {
System.out.println("Unknown host");
System.exit(0);
}
byte[] ip = address.getAddress();
for (int i=0; i<ip.length; i++) {
if (i > 0) System.out.print(".");
System.out.print((ip[i]) & 0xff);
}
System.out.println();
}
}

3.Setelah selesai save dengan nama Nslookup.java
4. Logika Program
Program ini digunakan untuk mendapatkan IP Address dengan menggunkan nama komputer. Pada program digunakan package yang sama seperti sebelumnya yaitu java.net.*. Classnya diberi nama NsLookup. Kemudian pada output akan tampil "Pemakaian : <namahost>". Saaat menjalankan program ketikkan java NsLookup <nama host> kemudian akan ditampilkan IP Address berdasarkan nama hostnya.

5. Output




 IP dan Nama IP Pada Java

 1. Buat file .java pada notepad

2. Ketikan program di bawah ini
import java.net.*;
public class PROGJAR3
{
public static void main(String[] args)
{
try
{
InetAddress address = InetAddress.getByName("nisyhari.blogspot.com");
System.out.println(address);
InetAddress[] addresses = InetAddress.getAllByName("localhost");
for(int i=0;i<addresses.length;i++)
System.out.println(addresses[i]);
InetAddress mesin = InetAddress.getLocalHost();
System.out.println(mesin);
String lokal = mesin.getHostName();
String ip = mesin.getHostAddress();
System.out.println(lokal);
System.out.println(ip);
}
catch (UnknownHostException uhEx){}
}
}

3. Setelah selesai save dengan nama PROGJAR3.java

4. Logika Program
Program ini menggunakan package java.net.*, dengan nama class PROGJAR3. Program ini adigunakan untuk mencari IP pada sebuah alamat web, disini saya menggunakan alamat blog saya. Kemudian akan meminta IP address dari localhost. Kemudian akan tercetak juga IP dan nama host dari komputer yang mengakses halaman web tersebut.

5. Output