knockd

knockd itu server port-knock.

Port-knock?
yep arti harfiahnya “ketuk port” (artinya port apa ya? jangan bilang pelabuhan :P )

Gunanya?
knockd berguna sebagai service yang berjalan terus menerus untuk memonitor traffic jaringan ke semua port yang ada. Jika knockd menangkap traffic data ke suatu (atau beberapa) port tertentu (dan dengan urutan tertentu) maka dia dapat mengeksekusi perintah yang didefinisikan pada file konfigurasinya…

Nah, yang menarik adalah fakta bahwa konckd tidak hanya mampu menangkap traffic data pada port-port yang terbuka namun juga port yang tertutup. Dan justru disinilah knockd banyak digunakan. knockd digunakan sebagai gerbang awal perlindungan server. Sebuah server yang menjalankan knockd dapat menutup SEMUA port yang ada dengan firewall lokal sehingga terlindung dari aktvitas abuse seperti portscanning. Nah, ketika seorang yang legitimate (misal admin) ingin mengakses salah satu servis dari server tersebut maka dia harus menjalankan program knock* (client) untuk “mengetuk” beberapa port dari server secara berurutan. Jika benar, maka script yang telah dikonfigurasikan pada server (misal. membuka firewall untuk ip tertentu dan port tertentu) akan dijalankan, dan PORT PUN TERBUKA siap menerima koneksi.

salah satu contoh konfigurasi knockd yang akan membuka port 22 (iptables) ketika portnya diketuk (knocked) dengan urutan UDP[2222], TCP[3333], kemudian UDP[4444]
[options]
logfile = /var/log/knockd.log

[opencloseSSH]
sequence = 2222:udp,3333:tcp,4444:udp
seq_timeout = 15
tcpflags = syn,ack
start_command = /usr/sbin/iptables -A INPUT -s %IP% -p tcp –syn –dport 22 -j ACCEPT
cmd_timeout = 10
stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp –syn –dport 22 -j ACCEPT

*)program client untuk melakukan knocking tidak harus knock, tapi dapat juga menggunakan telnet dll..

Menarik bukan?
Info lengkap dan download:
http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki

Install dan konfigurasi PostgreSQL pada Fedora 8 untuk akses dari komputer lain

Lama tidak menulis di blog. Sedang iseng install postgreSQL sekalian aja ditulis langkah-langkahnya :D Langkah-langkah berikut dilakukan pada Fedora 8 tapi tidak menutup kemungkinan bisa dilakukan pada OS  yang lain. Pertama pastikan login sebagai root atau jalankan semua perintah berikut dengan sudo.

  1. #yum –y install postgresql-server

    Perintah ini akan mendownload semua paket yang dibutuhkan untuk instalasi postgreSQL server dan menginstallnya

  2. #service postgresql initdb

    Perintah ini akan melakukan inisialisasi database postgre, jika tidak dilakukan maka postgreSQL server tidak akan dapat dijalankan

  3. #service postgresql start

    Perintah ini akan menjalankan service postgreSQL pada Fedora, selamat postgreSQL sudah berjalan dengan sangat mudah :D Jika anda ingin agar service postgreSQL berjalan otomatis ketika boot, cukup ketikkan perintah berikut

  4. #chkconfig postgressql on

    Jika anda ingin mengakses postgreSQL dari PgAdmin melalui komputer lain maka lakukan hal berikut

  5. Edit file /var/lib/pgsql/data/postgreSQL.conf
  6. Uncomment baris berikut:

    #listen_addresses = ‘localhost’ dan #port = 5432

  7. Ubah nilai localhost pada baris listen_addresses sehingga menjadi

    listen_addresses = ‘*’

  8. Edit file /var/lib/pgsql/data/pg_hba.conf, tambahkan baris berikut dibawah baris “host all all 127.0.0.1/32 ident sameuser”:

    host all all ipaddress.komputer.pgadmin.anda 255.255.255.255 trust

  9. Restart service postgreSQL dengan perintah

    #service postgresql restart

  10. Pastikan firewall dan SELinux terkonfigurasi untuk membolehkan akses postgreSQL pada port 5432, jika anda tidak yakin bagaimana mengkonfigurasikan SElinux dan firewall, cara tercepat (namun kotor) adalah mematikan keduanya dengan perintah:

    #service iptables stop #setenforce 0

  11. Untuk mematikan firewall dan SElinux setiap boot (sangat tidak direkomendasikan)

    #chkconfig iptables off Edit file /etc/selinux/config Ubah nilai “enforcing” menjadi “permissive”

Selamat mengakses postgreSQL dari pgadmin pada komputer lain :D