Pages

Thursday, October 11, 2012

install postfix on centos 6.3

pada dasarnya untuk membuat sebuah mail server kita dapat menggunakan sendmail / postfix dari linux.
dibawah ini adalah step by step konfigurasi mail server dengan menggunakan postfix.


Sebelum melanjutkan terlebih dulu sebaiknya kita uninstall sendmail yang merupakan program default mta bawaan centos

yum remove sendmail

Lalu kita install kebutuhan software kita

yum install postfix dovecot system-switch-mail

setelah selesai menginstall kita dapat mengatur konfigurasi dengan cara:
vi /etc/postfix/main.cf


konfigurasi saya dapat dilihat dibawah:


myhostname = mail.nama-domain.com     //yang dibold sesuaikan dengan domain milik anda
mydomain = nama-domain.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain  // tambahkan $mydomain


relay_domains =
home_mailbox = Maildir/


lalu edit konfigurasi dovecot dengan cara :

vi /etc/dovecot/dovecot.conf

tambahkan protocols = imap imaps pop3 pop3s.

save dan quit.


jalankan program dengan cara :


  1. /etc/init.d/dovecot start
  2. /etc/init.d/postfix start

chkconfig --level 345 dovecot on (optional :   digunakan untuk menyalakan service saat start up server).












Saturday, September 15, 2012

producer consumer marketer and patents

in the end... it's just about functionality... design... information. benefits and  save time...

not what's inside.... consumer didn't really care how "inside works".

the midle man is called marketter.

producer - marketter - consumer

producer:  all process on producing a product.
marketer/affiliater: give information + get benefit from a product
consumer: user of the service / product. mostly comes from marketer because for a producer doesnt have enough time to make and sell at the same time.

producer got so many competition with another producer too... because that consumer didn't really care what's inside. they only know which one have the best benefits... functionality... and other. they also doesnt care about the concept and all process behind the scene.

that's why "patents" comes.



for producer itself must have a influence of social / a group (the example of group can be family, community, teen, student in university and other) to make a success in selling their product. Cause a product will be sold  nicely if only the product got brand / power / credibility among people. In this case a marketter have the big part of the scene.


the example way of bad thing to do is paid some people (the consumer) to make the credibility of a product become down. This can be countered if only the product quality is good. Remember! from good quality of a product / content will produce good rating then if the consumer are happy, they will willing to share with other even they didn't asked to. that make influence on his group.


that's all the thing on my thought today... after reading some people comment, newspaper, tv.


thx for reading.






Monday, September 10, 2012

mail server

Simple Mail Transfer Protocool adalah sebuah protocol / aturan yang digunakan untuk berkirim email dari sebuah mail server ke mail server yang lain. SMTP ini sudah menjadi aturan dasar dalam kegiatan berkirim email. sehingga setiap software yang digunakan untuk berkirim email pasti telah mendukung protokol ini. Terdapat berbagai macam software yg mendukung smtp yang dapat digunakan sebagai mail server program diantaranya:



  • Sendmail
  • Postfix
  • Exim
  • Courier-MTA
  • Qmail
  • Microsoft Exchange Server



Software-software  tersebut lebih sering dikenal dengan sebutan Mail Transfer Agent


Simple Mail Transfer Protocool disini Menggunakan Port 25 Sehingga apabila ingin menggunakan Smtp ini haruslah terlebih dahulu kita memastikan tidak ada yang menggunakan port 25 di server. 





kita dapat menggunakan software seperti nmap yang dapat diunduh di http://nmap.org/ untuk mengecek port-port yang telah digunakan di server.

dibawah ini merupakan contoh penggunaan nmap di sebuah server dengan distro centos 6.3 milik saya.





Dapat terlihat bahwa port 25 disini blm digunakan. Sehingga kita dapat melakukan instalasi program yang telah saya sebutkan diatas (pilih salah satu dari kelima program tersebut). 




Simple Mail Transfer Protocol tidak digunakan untuk Transfer antar e-mail client. SMTP hanya merupakan sebuah protocol yang berjalan untuk sebuah pengiriman email antar mail server. Apabila kita ingin mentransfer e-mail antar client kita dapat menggunakan pop3 / imap,  imaps / pop3s.



prinsip utama cara kerja mail server ialah menerima email dari local user yang berada didalam sebuah domain tertentu , dan meneruskannya ke email server yang lain. 






Saturday, August 25, 2012

perbedaan wireless distribution system / wds dan repeater

wds / wireless distribution system adalah sebuah mekanisme dimana router/access point  bertindak sebagai penerus sinyal dan pendistribusian wireless tanpa membutuhkan adanya kabel lan yang terhubung pada 2 router /access point tersebut. Dari gambar dibawah ini kita bisa melihat sistem cara kerja wds itu sendiri.

access point 1 memancarkan gelombang radio ke access point 2, dan access point 2 menangkap dan memancarkan lagi ke area yang dapat dicapai oleh access point 2. sehingga area yang awalnya tidak tercapai oleh access point pertama sekarang dapat tercapai.



sekilas fungsi wds sendiri dapat dikatakan sama dengan fungsi wireless repeater yaitu melanjutkan sinyal wifi ke area lain sehingga cakupannya bertambah luas....  namun yang membedakan antara wireless repeater dengan wds ialah... ketika ap diset menjadi wireless repeater maka port kabel jaringan pada access point akan berubah menjadi status disabled. dimana pada wds port jaringan kabel tetap dapat digunakan selagi menangkap dan memancarkan wifi. 




Untuk gambar dibawah ini, biasanya digunakan untuk memperluas area jaringan wifi tanpa sistem wds (menggunakan kabel). access point 1 mendapatkan internet dari port wan, disebarkan via wifi di area access point 1. Lalu untuk memperluas kita hubungkan dengan menggunakan kabel lan ke access point 2 (dimasukkan ke port wan-nya  access point 2) sehingga access point 2 sekarang mendapatkan koneksi internet dan dapat disebarkan via wifi / kabel di area yang dicakupi ap ke 2.





terlihat bukan perbedaannya? dimana dalam sistem wds tidak membutuhkan lagi kabel. Tetapi kita harus menset kedua access point tersebut dengan channel yang sama, metode enkripsi / keyword yang sama.
oiya, metode wds memiliki kelemahan throughput yang dapat dilalui antar jaringan biasanya hanya setengahnya dari total throughput keseluruhan dikarenakan access point tersebut bekerja 2x (mengirim dan menerima paket apabila ada request dari klien 1 ke klien lain atau ke internet).

dan 1 lagi... koneksi antar client yang terhubung apabila dalam keadaan wds, menggunakan mac address sebagai target tujuan. bukan berdasarkan ip address.




Wednesday, August 8, 2012

cara install openvpn di VPS dengan centos 6.3 agustus 2012

disini saya akan memberi tahu cara untuk menginstall openvpn di centos terbaru yaitu centos 6.3

sebelumnya kita harus mengetahui apa yang dimaksud dengan  epel / extra package untuk linux enterprise.


epel merupakan repository 3rd party yang dapat digunakan oleh centos. Repository ini merupakan repository tidak resmi yang dibuat oleh komunitas /group yang terdiri dari orang2 fedora agar bisa digunakan oleh operating system yg lain selain fedora.Untuk selebihnya bisa dibaca di:

http://fedoraproject.org/wiki/EPEL/FAQ



pertama-tama kita download dulu packet yang dibutuhkan yaitu dengan cara:

 cd /usr/local/src/

wget http://epel.repo.unpas.ac.id//6/x86_64/epel-release-6-7.noarch.rpm  (untuk os 64 bit)


wget http://epel.repo.unpas.ac.id//6/i386/epel-release-6-7.noarch.rpm (untuk os  32 bit)


lalu kita install dengan cara

rpm -Uvh [nama paket]

maksud dari command diatas ,

-vh = menampilkan dimonitor proses instalasi dengan menggunakan tanda pagar # sebagai simbol download.

-U =upgrade uninstall paket lama dan install versi baru. bila tidak ditemukan versi lama maka otomatis rpm melakukan instalasi



karena operating system yg saya gunakan ialah versi 64 bit maka saya jalankan

rpm-Uvh http://epel.repo.unpas.ac.id//6/x86_64/epel-release-6-7.noarch.rpm

tunggu beberapa saat hingga proses instalasi selesai,, lalu lanjutkan dengan mengetikkan

#yum repolist

 (agar repository kita terupdate dan menggunakan repository milik epel)


setelah itu ketik yum install openvpn untuk menginstall openvpn yang terdapat di repository milik epel.


well done.... easy isnt it...


untuk confignya akan dibahas di post saya selanjutnya.




Tuesday, July 31, 2012

Contoh Penulisan Object di dalam bahasa pemrograman php


contoh penulisan object di php

class orang{

var $nama="";
var $jk="";
var $tgllahir="";
var $tptlahir="";


    tampilkan(){
    echo "<br>    nama".this ->nama;
    echo "<br>    nama".this ->jk;
    echo "<br>    nama".this ->tgllahir;
    echo "<br>    nama".this ->tptlahir;
   
    }


}

$orang1 = new orang();

$orang1 -> nama="toro";
$orang1 -> jk="pria";
$orang1 -> tgllahir="1998-12-24";
$orang1 -> tptlahir="jogjakarta";
$orang1 -> tampilkan();


$orang2 = new orang();

$orang2 -> nama="doni";
$orang2 -> jk="wanita";
$orang2 -> tgllahir="1998-11-12";
$orang2 -> tptlahir="makasar";
$orang2 -> tampilkan();

//tinggal tambahin sebanyak apapun**
// function bisa pake kembalian / return





Friday, July 27, 2012

starting building remote desktop application with java

java merupakan bahasa pemrograman yang cukup sering digunakan pada saat ini. Java dikenal dengan pemrogramannya yang cukup handal dalam menangani garbage collector yaitu selalu memproteksi kode2 pemrograman yang sekiranya setelah selesai digunakan lgsung di tangani/ditutup secara khusus sehingga tidak menciptakan memory leak / digunakan oleh orang2 yang tidak berwenang untuk digunakan dalam berbagai hal seperti exploitasi program, mencari data2 berharga yang dapat digunakan untuk menjebol sebuah server, mengirimkan ddos hingga pengambilan alih pc.

java juga dikenal dengan write once run everywhere. jadi kita tidak perlu takut program yang kita jalankan hanya bisa dijalankan di windows saja. compiler java akan mengubah program kita (class) menjadi byte2 yang akan ditranslasikan di masing2 os seperti linux, mac, windows,dll. Sehingga program kita dapat berjalan di mana saja. jadi pengguna dari program kita tidak hanya terbatas 1 vendor saja. that's why nowdays java very popular.  <3


dibawah ini merupakan program yang sedang saya kembangkan untuk membuat remote desktop berbasis java. Untuk langkah awal server hanya bisa menangkap layar desktopnya lalu mengirimnya ke client sehingga dapat dilihat langsung tampilan dekstopnya oleh client.





/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ServerClient;

import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.imageio.ImageIO;

/**
 *
 * @author admin
 */
public class Server {
    private ServerSocket Server;
    private Socket socket ;
   
    private Rectangle UkuranKotak;
    private BufferedImage image;
    private Robot robot;
   
    private OutputStream out;
   
    //constructor
   
    Server () {
        bikin_server(777);
       Cek_Ukuran_Desktop();
       Capture_Gambar();
       Kirim_Gambar();
       TutupServer();
               
            }
   
   
   
   
    //end of constructor
    public Rectangle Cek_Ukuran_Desktop(){
       
    UkuranKotak = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());   
    
    return UkuranKotak;
       
    }
   
    public void Capture_Gambar(){
        try {
            robot= new Robot();
            image =  robot.createScreenCapture(Cek_Ukuran_Desktop());
        } catch (AWTException ex) {
            Logger.getLogger(Server.class.getName()).log(Level.SEVERE, null, ex);
        }
       
         }
   
    public void Kirim_Gambar(){
        try {
            out = socket.getOutputStream();      
           
            ImageIO.write(image, "png", out);  //kirim bufferedimage ke client
           
            System.out.println("Sent image!");
           
           
        } catch (IOException ex) {
            System.out.println("eror pada saat mengirim gambar" + ex);
        }
       
       
       
    }
   
   
   
   

   
   
   
   
   
   
   
   
    public void bikin_server(int port){
        try {
            Server = new ServerSocket(port);
            socket = Server.accept();
            System.out.println("server telah dibangun di port :" +port);
            
        } catch (IOException ex) {
            System.out.println("terdapat kesalahan di bagian bikin server ,"+ex);
        }

       
    }
   
    void TutupServer(){
        try {
               
            if(out!=null) out.close();
            if (socket != null)    socket.close();
            System.out.println("selesai mengirim gambar, tutup koneksi");


        } catch (IOException ex) {
            System.out.println("tidak bisa menutup socket" + ex);
                    }
   
   }
   
   
   
   
   
    public static void main(String[]args){
       
        Server jalankan = new Server();
       
       
    }
   
   
   
   
   
   
   
   
}


















/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package image;

import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.imageio.ImageIO;
import javax.swing.*;

/**
 *
 * @author admin
 */
public class Client extends JFrame {
   
   
   private Socket socket    =null          ;
   private BufferedImage gambar =null;
   private File out= null;
   private JLabel label1;
  
  
   //constructor
  
  
   public Client(){
   BikinSocketClient("localhost",777);
   DapatkanGambarDariSocket();
   CetakGambarKeFolder();
   // ConvertGambarKeByte();
  
  
   TutupClient();
  
  
  Bikin_Interface();
  
  
  
  
  
   }
  
  
  
  
  
   //end of constructor
  
  
  
  
  public void Bikin_Interface(){
     
       label1 = new JLabel();
   add(label1);
   label1.setIcon(new ImageIcon("c:/berhasilyaaa.png"));
  
  
  
  
  
  
        JScrollPane p = new JScrollPane( label1 );
        getContentPane().add( p );
        setDefaultCloseOperation( EXIT_ON_CLOSE );
        setSize( 300, 300 );

        setVisible( true );
  
     
  }
  
  
  
  public void DapatkanGambarDariSocket(){
        try {
            gambar =ImageIO.read(socket.getInputStream());
           
        } catch (IOException ex) {
            System.out.println("gambar tidak diterima / socket eror"+ex);
        }
       
       
      
  }
  
  
  /* public void ConvertGambarKeByte(){
        try {
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            ImageIO.write(gambar,"png" , baos);
            baos.flush();
            byte[] UkuranImage = baos.toByteArray();
            baos.close();
           
           
        } catch (IOException ex) {
            Logger.getLogger(Client.class.getName()).log(Level.SEVERE, null, ex);
        }
   }
  
   */
  
  
  
  
  
  
   void CetakGambarKeFolder(){

    
        try {
           
            out = new File("c:/berhasilyaaa.png");
           
            ImageIO.write(gambar,"png",out);
        } catch (IOException ex) {
           System.out.println("gambar tidak ditemukan" + ex);
        }

   }

  
  
  
    void BikinSocketClient(String serverName, int ServerPort){
        try {
            socket = new Socket(serverName,ServerPort);
        } catch (UnknownHostException ex) {
            System.out.println("host tidak ditemukan" + ex);
        } catch (IOException ex) {
            System.out.println ("port eror" + ex);
        }
    }
  
  
    void TutupClient(){

        try {
 
            if (socket != null)    socket.close();
            System.out.println("selesai menerima gambar, tutup koneksi");


        } catch (IOException ex) {
            System.out.println("tidak bisa menutup socket" + ex);
                    }
    }
  
  
   public static void main(String[]args){
      
      Client jalankan = new Client();   
      
   }
  

   
   }













klo mau dijalankan di komputer yang berbeda tinggal edit

BikinSocketClient("localhost",777);    -> arahin ke ip server.