Rabu, 22 Desember 2010

laporan linux - modul 10


LAPORAN
PRAKTIKUM LINUX

MODUL X
FIREWALL DASAR




Miko Dewi Hatmanti
123090061
Plug 11

Ass    : I Putu Jistha M



JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “V” YOGYAKARTA





BAB I
DASAR TEORI

Firewall atau tembok-api adalah sebuah sistem atau perangkat yang mengizinkan lalu lintas jaringan yang dianggap aman untuk melaluinya dan mencegah lalu lintas jaringan yang tidak aman. Umumnya, sebuah tembok-api diterapkan dalam sebuah mesin terdedikasi, yang berjalan pada pintu gerbang (gateway) antara jaringan lokal dan jaringan lainnya. Tembok-api umumnya juga digunakan untuk mengontrol akses terhadap siapa saja yang memiliki akses terhadap jaringan pribadi dari pihak luar. Saat ini, istilah firewall menjadi istilah lazim yang merujuk pada sistem yang mengatur komunikasi antar dua jaringan yang berbeda. Mengingat saat ini banyak perusahaan yang memiliki akses ke Internet dan juga tentu saja jaringan berbadan hukum di dalamnya, maka perlindungan terhadap modal digital perusahaan tersebut dari serangan para peretas, pemata-mata, ataupun pencuri data lainnya, menjadi hakikat.

Jenis-jenis Firewall
Firewall terbagi menjadi dua jenis, yakni sebagai berikut
  • Personal Firewall: Personal Firewall didesain untuk melindungi sebuah komputer yang terhubung ke jaringan dari akses yang tidak dikehendaki. Firewall jenis ini akhir-akhir ini berevolusi menjadi sebuah kumpulan program yang bertujuan untuk mengamankan komputer secara total, dengan ditambahkannya beberapa fitur pengaman tambahan semacam perangkat proteksi terhadap virus, anti-spyware, anti-spam, dan lainnya. Bahkan beberapa produk firewall lainnya dilengkapi dengan fungsi pendeteksian gangguan keamanan jaringan (Intrusion Detection System). Contoh dari firewall jenis ini adalah Microsoft Windows Firewall (yang telah terintegrasi dalam sistem operasi Windows XP Service Pack 2, Windows Vista dan Windows Server 2003 Service Pack 1), Symantec Norton Personal Firewall, Kerio Personal Firewall, dan lain-lain. Personal Firewall secara umum hanya memiliki dua fitur utama, yakni Packet Filter Firewall dan Stateful Firewall.
  • Network Firewall: Network ‘‘’’Firewall didesain untuk melindungi jaringan secara keseluruhan dari berbagai serangan. Umumnya dijumpai dalam dua bentuk, yakni sebuah perangkat terdedikasi atau sebagai sebuah perangkat lunak yang diinstalasikan dalam sebuah server. Contoh dari firewall ini adalah Microsoft Internet Security and Acceleration Server (ISA Server), Cisco PIX, Cisco ASA, IPTables dalam sistem operasi GNU/Linux, pf dalam keluarga sistem operasi Unix BSD, serta SunScreen dari Sun Microsystems, Inc. yang dibundel dalam sistem operasi Solaris. Network Firewall secara umum memiliki beberapa fitur utama, yakni apa yang dimiliki oleh personal firewall (packet filter firewall dan stateful firewall), Circuit Level Gateway, Application Level Gateway, dan juga NAT Firewall. Network Firewall umumnya bersifat transparan (tidak terlihat) dari pengguna dan menggunakan teknologi routing untuk menentukan paket mana yang diizinkan, dan mana paket yang akan ditolak.




BAB II
PEMBAHASAN

      Kita akan mulai menyiapkan, menyalakan dan mematikan iptables. Iptables merupakan penyaring paket yang masuk, keluar dan melewati komputer kita. Untuk mengecek apakah computer kita sudah memiliki iptables atau belum, gunakan perintah sudo dpkg –l | grep iptables.
Disini kita perlu mengaktifkan ip_forwarding. Pengaktifan bias dilkukan dengan perintah sudo echo “1” > /proc/sys/net/ipv4/ip_forward

Pada contoh diatas terdapat perintah cat yang digunakan untuk menampilkan apakah ip_forward sudah aktif atau belum. Bila muncul angka 1 (bernilai true) maka ip_forwardnya sudah aktif.

Sekarang kita akan mulai menolak  semua paket yang masuk dengan menambah aturan ke dalam chains input untuk men-DROP semua paket.


Pada gambar diatas ketika kita memasukkan perintah ping maka proses pinging tidak akan berjalan karena sudah diblok.

Sedangkan untuk menolak semua paket yang keluar kita bisa menggunakan perintah  sudo iptables –A output –j DROP atau sudo iptables –A output –j REJECT



Untuk menolak paket berdasarkan protocol dan port bisa menggunakan perintah sudo iptables –A input –p tcp -j DROP.
Untuk melihat daftar protocol kita dapat melihatnya pada file /etc/protocol sedangkan unutk melihat daftar port ada di file etc/service dengan perintah cat.




Pada gambar di atas terdapat perintah sudo iptables –L maksudnya adalah menghapus aturan berdasarkan urutan agar computer tidak terblok lagi..




BAB III
KESIMPULAN

Firewall adalah sebuah sistem atau grup sistem yang menjalankan kontrol akses keamanan diantara jaringan internal yang aman dan jaringan yang untrusted seperti internet.Firewall didesain untuk mengijinkan trusted data atau data yang dipercaya lewat, menolak layanan yang mudah diserang, mencegah jaringan internal dari serangan  luar yang bisa menembus firewall setiap waktu.

Fungsi Firewall

  • Mengatur dan mengontrol lalu lintas jaringan
  • Melakukan autentikasi terhadap akses
  • Melindungi sumber daya dalam jaringan privat
  • Mencatat semua kejadian, dan melaporkan kepada administrator

laporan linux - modul 9

LAPORAN
PRAKTIKUM LINUX

MODUL IX
ROUTING




Miko Dewi Hatmanti
123090061
Plug 11

Ass    : I Putu Jistha M



JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “V” YOGYAKARTA




BAB I
DASAR TEORI

Routing adalah proses dimana suatu router memforward paket ke jaringan yang dituju. Suatu router membuat keputusan berdasarkan IP address yang dituju oleh paket. Semua router menggunakan IP address tujuan untuk mengirim paket. Agar keputusan routing tersebut benar, router harus belajar bagaimana untuk mencapai tujuan. Ketika router menggunakan routing dinamis, informasi ini dipelajari dari router yang lain. Ketika menggunakan routing statis, seorang network administrator mengkonfigurasi informasi tentang jaringan yang ingin dituju secara manual.
Jenis-jenis routing adalah :
  • Routing statis
  • Routing default
  • Routing dinamis

Proses Routing IP
Proses routing IP dapat dijelaskan dengan menggunakan gambar berikut ini :


Default gateway dari host 172.16.10.2 (Host_A)  dikonfigurasi ke 172.16.10.1. Untuk dapat mengirimkan paket ini ke default gateway, harus diketahui dulu alamat hardware dari interface Ethernet 0 dari router (yang dikonfigurasi dengan alamat IP 172.16.10.1 tersebut). Mengapa demikian? Agar paket dapat diserahkan ke layer Data Link, lalu dienkapsulasi menjadi frame, dan dikirimkan ke interface router yang terhubung ke network 172.16.10.0. Host berkomunikasi hanya dengan alamat hardware pada LAN lokal. Penting untuk memahami bahwa Host_A, agar dapat berkomunikasi dengan Host_B, harus mengirimkan paket ke alamat MAC dari default gateway di jaringan lokal.


Routing statis terjadi jika Admin secara manual menambahkan route-route di routing table dari setiap router.
Routing statis memiliki kentungan-keuntungan berikut:
  • Tidak ada overhead (waktu pemrosesan) pada CPU router (router lebih murah dibandingkan dengan routeng dinamis)
  • Tidak ada bandwidth yang digunakan di antara router.
  • Routing statis menambah keamanan, karena administrator dapat memilih untuk mengisikan akses routing ke jaringan tertentu saja.
Routing statis memiliki kerugian-kerugian berikut:
  • Administrasi harus benar-benar memahami internetwork dan bagaimana setiap router  dihubungkan untuk dapat mengkonfigurasikan router dengan benar.
  • Jika sebuah network ditambahkan ke internetwork, Administrasi harus menambahkan sebuah route kesemua router—secara manual.
  • Routing statis tidak sesuai untuk network-network yang besar karena menjaganya akan menjadi sebuah pekerjaan full-time sendiri.
Routing Default
Routing default digunakan untuk mengirimkan paket-paket secara manual menambahkan router ke sebuah network tujuan yang remote yang tidak ada di routing table, ke router hop berikutnya. Bisanya digunakan pada jaringan yg hanya memiliki satu jalur keluar.

Routing Dinamis
Routing dinamis  adalah ketika routing protocol digunakan untuk menemukan network dan melakukan update routing table pada router. Dan ini lebih mudah daripada menggunakan routing statis dan default, tapi ia akan membedakan Anda dalam hal proses-proses di CPU router dan penggunaan bandwidth dari link jaringan

Routed dan Routing Protocol
Protocol tidak lain deskripsi formal dari set atau rule-rule dan konversi yang menentukan bagaimana device-device dalam sebuah network bertukar informasi. Berikut dua tipe dasar protocol.
  • Routed protocol
Merupakan protokol-protokol yang dapat dirutekan oleh sebuah router. Routed protocol memungkinkan router untuk secara tepat menginterpretasikan logical network.  Contoh dari routed protocol : IP, IPX, AppleTalk, dan DECnet.
  • Routing protocol
Protokol-protokol ini digunakan untuk merawat routing table pada router-router. Contoh dari routing protocol diantaranya OSPF, RIP, BGP, IGRP, dan EIGRP
RIP            Routing Information Protocol.  Distance vector protocol – merawat daftar jarak tempuh ke network-network lain berdasarkan jumlah hop, yakni jumlah router yang harus lalui oleh paket-paket untuk mencapai address tujuan. RIP dibatasi hanya sampai  15 hop. Broadcast di-update dalam setiap 30 detik untuk semua RIP router guna menjaga integritas. RIP cocok dimplementasikan untuk jaringan kecil.
OSPF        Open  Shortest Path First. Link state protocol—menggunakan kecepatan jaringan berdasarkan metric untuk menetapkan path-path ke jaringan lainnya. Setiap router merawat map sederhana dari keseluruhan jaringan. Update-update dilakukan via multicast, dan dikirim. Jika terjadi perubahan konfigurasi. OSPF cocok untuk jaringan besar.
EIGRP      Enhanced Interior Gateway Routing Protocol. Distance vector protocol—merawat satu set metric yang kompleks untuk jarak tempuh ke jaringan lainnya. EIGRP menggabungkan juga konsep link state protocol. Broadcast-broadcast di-update setiap 90 detik ke semua EIGRP router berdekatan. Setiap update hanya memasukkan perubahan jaringan. EIGRP sangat cocok untuk jaringan besar.
BGP          Merupakan distance vector exterior gateway protocol yang bekerja secara cerdas untuk merawat path-path ke jaringan lainnya. Up date-update dikirim melalui koneksi TCP.




 BAB II
PEMBAHASAN

1.      Pertama kita membuat dulu IP address dengan perintah sudo ifconfig eth0. Untuk mengecek apakah komputer kita sudah memiliki alamat IP dengan perintah ifconfig.

2.      Kemudian kita memberikan ip alias untuk nama device eth0:1, eth0:2 dan seterusnya sesuai network yang ada.


3.      Lalu kita mulai bias melihat table routing dengan perintah sudo route –n

4.      Kemudian mengubah nilai default dari file /proc/sys/net/ipv4/ip_forward yang semula 0 menjadi 1 dengan perintah sudo echo “1” > /proc/sys/net/ipv4/ip_forward


5.      Lalu kita harus me-route-kan host network dengan perintah sudo route add default gw 192.168.123.4



6.      Untuk mengeceknya bisa kita gunakan perintah ping untuk setiap ip yang dibuat.





BAB III
KESIMPULAN

Routing digunakan untuk proses pengambilan sebuah paket dari sebuah alat dan mengirimkan melalui network ke alat lain disebuah network yang berbeda.
Jika network Anda tidak memiliki router, maka jelas Anda tidak melakukan routing.
Untuk bisa  melakukan routing paket, ada hal-hal yang harus diketahui :
  • Alamat tujuan
  • Router-router tetangga dari mana sebuah router bisa mempelajari tentang network remote
  • Route yang mungkin ke semua network remote
  • Route terbaik untuk setiap network remote
Router menyimpan routing table yang menggambarkan bagaimana menemukan network-network remote.


Sabtu, 18 Desember 2010

tugas java 2 - modul 3


TUGAS
PRAKTIKUM JAVA II

MODUL III
EVENT HANDLING

 

Miko Dewi Hatmanti
123090061
Plug 10


                                         Ass           :  Shiddieqy Y. Katili


JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “V” YOGYAKARTA
2010


TUGAS 1

1.            import java.awt.event.*;
2.            import javax.swing.*;
3.            import java.awt.*;

4.            class pButtonAction extends JFrame{
5.         public JButton bOK, bCAncel;
6.         public JLabel luser, lpass;
7.         public JTextField tuser, tpass;
8.         String nama_user;
9.         String nama_user_pokok = new String ("123090061");
10.      String password ;
11.      String password_pokok = new String ("java");

12.      public pButtonAction(){
13.        bOK = new JButton("OK");
14.                  bCAncel = new JButton("Cancel");

15.        luser = new JLabel("User");
16.        lpass = new JLabel("Password");

17.        tuser = new JTextField(10);
18.        tpass = new JPasswordField(10);

19.        setDefaultCloseOperation(3);
20.        setSize(300, 200);
21.        setVisible(true);
22.        setTitle("Login");
23.        setLayout(new GridLayout(3, 2, 20, 20));

24.        add(luser);
25.        add(tuser);
26.        add(lpass);
27.        add(tpass);
28.        add(bOK);
29.        add(bCAncel);

30.        tuser.addKeyListener(new KeyListener() {
31.            public void keyPressed(KeyEvent ke) {
                   if (ke.getKeyChar()==KeyEvent.VK_ENTER){
                      tpass.requestFocus();
                   }
               }
32.            public void keyTyped(KeyEvent ke) {

               }
33.            public void keyReleased(KeyEvent ke) {

               }
           });

34.                    bOK.addActionListener(new ActionListener() {
35.             public void actionPerformed(ActionEvent ae) {
                  nama_user = tuser.getText();
                  password = tpass.getText();
                  if(ae.getSource() == bOK){
                     if(nama_user_pokok.equals(nama_user)&&
                         password_pokok.equals(password))
                         {
                           JOptionPane.showMessageDialog(null, "Login sukses",
                           "Pesan",JOptionPane.INFORMATION_MESSAGE);
                         }
 
                     else
                         {
                           JOptionPane.showMessageDialog(null, "Login gagal",
                           "Pesan",JOptionPane.INFORMATION_MESSAGE);
                         }
                  }
             }
        });

36.     bCAncel.addActionListener(new ActionListener() {
37.         public void actionPerformed(ActionEvent e) {
                     JOptionPane.showMessageDialog(null, "Tombol Cancel di klik",
                     "Pesan",JOptionPane.INFORMATION_MESSAGE);
                     tuser.setText(null);
                     tpass.setText(null);
            }
        });
      }
    }

38. public class Login {
39.     public static void main(String[] args) {
40.         new pButtonAction();
        }
    }



Output





Pembahasan :
·         Baris 1,2 dan 3 : Menyertakan semua class dalam paket java.awt.event untuk menyediakan penanganan event, java.awt dan javax.swing.
·         Baris 4 : Mendefinisikan class dengan nama pButtonAction yang merupakan turunan dari class JFrame (ditandai dengan statement extends JFrame) dan mengimplementasi interface ActionListener dan Key Listener. Class JFrame diperlukan untuk membuat window/frame. Dalam aplikasi java Swing, umumnya terdapat satu class yang merupakan turunan dari JFrame.
·         Baris 5..11 : Inisialisasi objek komponen – komponen yang akan digunakan untuk mengisi frame.
·         Baris 12 : Merupakan sebuah constructor dari class pButtonAction yang nantinya akan akan dijalankan saat objek dari class pButtonAction terbentuk.
·         Baris 13..18 : Inisialisasi komponen frame.
·         Baris 9..18 : Merupakan inisialisasi objek dari komponen Swing yang akan digunakan dalam program ini. Komponen tersebut adalah button (tombol) sebanyak 2 buah, label sebanyak dua buah dan dua buah text field.
·         Baris 19 : Method setDefaultCloseOperation(EXIT_ON_CLOSE) digunakan untuk membersihkan buffer program/aplikasi setelah user menutup aplikasi dengan menekan tombol Close frame.
·         Baris 20 : Method setSize() digunakan untuk mengatur ukuran frame. Dalam program ini frame akan berukuran panjang 300 pixel dan lebar 200 pixel.
·         Baris 21 : Method setVisible (true) akan menampilkan frame ke layar. Jika method ini tidak digunakan ataupun nilai Boolean-nya false maka frame tidak akan tampil.
·         Baris 22 :  Method setTitle digunakan untuk mengatur judul frame. Untuk mengatur judul bisa juga menggunakan perintah super() yang artinya akan mengirim parameter ke konstruktor class JFrame.
·         Baris 23 : Method setLayout() merupakan perintah pengaturan layout untuk frame. Layout area frame menggunakan metode grid layout dengan membagi area panel menjadi 3 baris dan 2 kolom dengan ukuran yang sama serta spasi kolom dan baris sebesar 20 pixel.
·         Baris 24..29 : Perintah add() digunakan untuk meletakkan komponen – komponen pada frame. Pada program ini komponen yang diletakkan adalah semua komponen yang sudah diinisialisasi sebelumnya.
·         Baris 30: Komponen text field user diberi event handling agar aksi dari keyboard bisa ditangani.
·         Baris 31 : Merupakan method implementasi dari interface KeyListener yang digunakan untuk memberi aksi ketika tombol keyboard ditekan. Jika keyboard yang ditekan adalah ENTER maka secara otomatis kursor edit akan pindah ke text field berikutnya.
·         Baris 32 : Merupakan method implementasi dari interface KeyListener yang digunakan untuk memberi aksi ketika tombol keyboard diketikkan, alias ditekan kemudian dilepaskan. Method ini dipanggil jika tombol yang ditekan mempunyai representasi karakter unicode, seperti tombol angka dan tombol huruf. Sedangkan penekanan tombol modifiers seperti ALT, CTRL, ARROW, CAPSLOCK, NUMLOCK, INS dan lainnya tidak akan mengakibatkan method ini  dipanggil. Jika keyboard yang ditekan adalah ENTER maka secara otomatis kursor edit akan pindah ke text field berikutnya.
·         Baris 33 : Merupakan method implementasi dari interface KeyListener yang digunakan untuk memberi aksi ketika tombol keyboard dilepaskan.
·         Baris 34 : Komponen tombol OK diberi event handling agar aksi ketika tombol di-klik bisa ditangani.
·         Baris 35 : Merupakan method implementasi dari interface ActionListener yang digunakan untuk memberi aksi tertentu pada tombol yang sudah ditambahkan event handling. Jika user mengisi text field nama user dan password dengan benar dan meng-klik tombol OK maka akan muncul kotak dialog “Login Sukses”, namun jika user memasukkan inputan yang salah maka akan muncul kotak dialog “Login Gagal”.
·         Baris 36 : Komponen tombol Cancel diberi event handling agar aksi ketika tombol di-klik bisa ditangani.
·         Baris 37 : Jika user meng-klik tombol Cancel maka akan muncul kotak dialog “Tombol Cancel di-klik dan secara otomatis semua text field akan kosong.
·         Baris 38 :  Mendefinisikan main class dengan nama Login. Main class ini digunakan untuk menjalankan program karena terdapat method main dalam class tersebut.
·         Baris 39 :  Merupakan method main yang berfungsi memanggil method lain yang kan dijalankan.
·         Baris 40 : Perintah untuk menjalankan constructor yang ada di class pButtonAction.


 
TUGAS 2


1.           import java.awt.event.*;
2.           import javax.swing.*;

3.            public class pMotionListener extends JFrame implements MouseMotionListener{

4.         JScrollPane sp;
5.         JTextArea ta;
6.       String text="";

7.       public pMotionListener() {
8.          setTitle("Mouse Motion Listener");

9.          ta=new JTextArea();
10.         sp=new JScrollPane();
11.         sp.setViewportView(ta);

12.         ta.setFont(new java.awt.Font("Times New Roman", 3, 12));

13.         setLayout(null);
14.         add(sp);

15.         sp.setBounds(500, 10, 280, 450);

16.         setSize(500, 200);
17.         setVisible(true);
18.         setDefaultCloseOperation(3);

19.         addMouseMotionListener(this);
         }

20.      public void mouseDragged(MouseEvent me) {
              throw new UnsupportedOperationException("Not supported yet.");
         }

21.      public void mouseMoved(MouseEvent me) {
            try{
                  text=text+"\nKoordinat x: "+getMousePosition().x+" Koordinat y:
                  "+getMousePosition().y;
                  ta.setText(text);
            }catch(Exception e){
           
         }
         }

22.    public static void main(String[] args) {
            new pMotionListener();
      }
    }


Output :

 


Pembahasan :
·         Baris 1 dan 2 : Menyertakan semua class dalam paket java.awt.event untuk menyediakan penanganan event dan javax.swing.
·         Baris 3 : Mendefinisikan class dengan nama pMotionListener yang merupakan turunan dari class JFrame (ditandai dengan statement extends JFrame) dan mengimplementasi interface MouseMotionListener. Class JFrame diperlukan untuk membuat window/frame. Dalam aplikasi java Swing, umumnya terdapat satu class yang merupakan turunan dari JFrame.
·         Baris 4-6 : Inisialisasi objek komponen – komponen yang akan digunakan untuk mengisi frame.
·         Baris 7 : Merupakan sebuah constructor dari class pMotionListener yang nantinya akan akan dijalankan saat objek dari class pMotionListener terbentuk.
·         Baris 8 : Method setTitle() digunakan untuk mengatur judul frame. Untuk mengatur judul bisa juga menggunakan perintah super() yang artinya akan mengirim parameter ke konstruktor class JFrame.
·         Baris 9-10 : Inisialisasi komponen pada frame.
·         Baris 11 : Method untuk mengatur scroll pada text area.
·         Baris 12 : Method setFont() digunakan untuk mengatur ukuran dan jenis font yang akan ditampilkan.
·         Baris 13 : Method setLayout() merupakan perintah pengaturan layout untuk frame. Layout area frame menggunakan metode null yang berarti frame tersebut tersebut tidak memiliki manajemen layout khusus.
·         Baris 14 : Perintah add() digunakan untuk meletakkan komponen – komponen pada frame. Pada program ini komponen yang diletakkan adalah semua komponen yang sudah diinisialisasi sebelumnya.
·         Baris 15 : Method setBounds() digunakan untuk mengatur letak komponen secara manual dengan mengisi koordinat x dan y.
·         Baris 16 : Method setSize() digunakan untuk mengatur ukuran frame. Dalam program ini frame akan berukuran panjang 500 pixel dan lebar 200 pixel.
·         Baris 17 : Method setVisible (true) akan menampilkan frame ke layar. Jika method ini tidak digunakan ataupun nilai Boolean-nya false maka frame tidak akan tampil.
·         Baris 18 : Method setDefaultCloseOperation(3) digunakan untuk membersihkan buffer program atau aplikasi setelah user menutup aplikasi dengan menekan tombol Close frame.
·         Baris 19 : Frame diberi event handling untuk menangani aksi dari mouse.
·         Baris 20 : Merupakan method implementasi dari interface MouseMotionListener yang digunakan untuk memberi aksi ketika mouse didrag.
·         Baris 21 : Merupakan method implementasi dari interface MouseMotionListener yang digunakan untuk memberi aksi ketika mouse berpindah. Ketika mouse berpindah posisi maka koordinat x dan y akan dicatat dan disimpan pada text area dengan menggunakan method getMousePosition().
·         Baris 22 : Merupakan method main yang berfungsi memanggil method lain yang kan dijalankan. Lalu ada inisialisasi untuk menjalankan constructor yang ada di class pMouseListener.