I'm a DarkStar

January 18, 2009

Install Shorewall di Ubuntu server 8.04

Filed under: linux server — chott @ 11:03 am
Tags: , , , ,

Shorewall… salah satu alternatif firewall yang cukup mudah dibanding dengan iptables. Mudah di gunakan tapi bikin nggak paham bahasanya …hehe…tapi akan saya coba jelaskan konfigurasinya :-) . Di sini, saya install Shorewall di web server

install Shorewall dari apt:

jangan lupa jadi root

 root@chic# apt-get install -y shorewall

Shorewall sudah terinstall, tinggal konfigurasi, sebelum konfigurasinya selesai, shorewall tidak bisa di aktifkan.
Konfigurasi yang di perlukan antara lain:

  • policy ,yaitu peraturan secara general. Di sini defaultnya drop semua dan buka yang diperlukan.
  • rules, nah… untuk membuka yang diperlukan, atur di sini. Lebih aman dari “buka semua drop yang diperlukan kan^^”
  • sedangkan konfigurasi lainnya mengenai pengaturan mekanisme jaringan ataupun sistemnya antara lain di default shorewall dan shorewall.conf
  • Mulai konfigurasi…

    Untuk konfigurasi tinggal gunakan editor, misalnya medit atau nano atau pico untuk mempermudah daripada pake vi :-p… jadi misalya ketikkan
    “mcedit /etc/default/shorewall”
    untuk edit konfigurasi di /etc/default/shorewall

    konfigurasi di /etc/default/shorewall
    cukup ganti :

    startup = 0

    jadi

    startup = 1

    agar setiap mesin nyala, shorewall juga ikut aktif.

    konfigurasi /etc/shorewall/shorewall.conf
    Di konfigurasi ini, isi saja yang diperlukan, yang sebagian sudah terisi biasanya tidak perlu di ubah.

    Lengkapnya…

    bla… bla..

    ###############################################################################
    #		       S T A R T U P   E N A B L E D
    ###############################################################################
    #agar aktif saat startup
    
    STARTUP_ENABLED=YES
    
    ###############################################################################
    #		              V E R B O S I T Y
    ###############################################################################
    #menampilkan proses
    
    VERBOSITY=1
    
    ###############################################################################
    #                              C O M P I L E R
    #      (setting this to 'perl' requires installation of Shorewall-perl)
    ###############################################################################
    #karena tidak ada yang perlu di compile, kosongkan saja
    
    SHOREWALL_COMPILER=
    
    ###############################################################################
    #			       L O G G I N G
    ###############################################################################
    #bagian ini, tidak ada yang diubah, periksa dulu tapinyaaa
    
    LOGFILE=/var/log/messages
    
    LOGFORMAT="Shorewall:%s:%s:"
    
    LOGTAGONLY=No
    
    LOGRATE=
    
    LOGBURST=
    
    LOGALLNEW=
    
    BLACKLIST_LOGLEVEL=
    
    MACLIST_LOG_LEVEL=info
    
    TCP_FLAGS_LOG_LEVEL=info
    
    RFC1918_LOG_LEVEL=info
    
    SMURF_LOG_LEVEL=info
    
    LOG_MARTIANS=No
    
    ###############################################################################
    #	L O C A T I O N	  O F	F I L E S   A N D   D I R E C T O R I E S
    ###############################################################################
    #pada bagian ini, yang sebelah kanan setelah "=" berisi letak direktori file
    #sebelah kiri yang sudah terisi tidak perlu di ubah, yang belum dan kalo akan
    #digunakan cari dulu filenya, kemudian copy paste letak direktorinya.
    
    #IPTABLES kosongkan, karena kita sudah jadikan shorewall sebagai firewall
    
    IPTABLES=
    
    PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
    
    SHOREWALL_SHELL=/bin/sh
    
    SUBSYSLOCK=/var/lock/subsys/shorewall
    
    MODULESDIR=/lib/modules/2.6.24-19-server/kernel/net/netfilter
    
    CONFIG_PATH=/etc/shorewall:/usr/share/shorewall
    
    RESTOREFILE=
    
    IPSECFILE=zones
    
    LOCKFILE=
    
    ###############################################################################
    #		D E F A U L T   A C T I O N S / M A C R O S
    ###############################################################################
    #tak perlu ada yang diubah
    
    DROP_DEFAULT="Drop"
    REJECT_DEFAULT="Reject"
    ACCEPT_DEFAULT="none"
    QUEUE_DEFAULT="none"
    
    ###############################################################################
    #                        R S H / R C P  C O M M A N D S
    ###############################################################################
    #ini juga... biarkan
    
    RSH_COMMAND='ssh ${root}@${system} ${command}'
    RCP_COMMAND='scp ${files} ${root}@${system}:${destination}'
    
    ###############################################################################
    #			F I R E W A L L	  O P T I O N S
    ###############################################################################
    # konfigurasi yang biasanya digunakan...
    
    IP_FORWARDING=On
    
    ADD_IP_ALIASES=Yes
    
    ADD_SNAT_ALIASES=No
    
    RETAIN_ALIASES=No
    
    TC_ENABLED=Internal
    
    TC_EXPERT=No
    
    CLEAR_TC=Yes
    
    MARK_IN_FORWARD_CHAIN=No
    
    CLAMPMSS=No
    
    ROUTE_FILTER=No
    
    DETECT_DNAT_IPADDRS=No
    
    MUTEX_TIMEOUT=60
    
    ADMINISABSENTMINDED=Yes
    
    BLACKLISTNEWONLY=Yes
    
    DELAYBLACKLISTLOAD=No
    
    MODULE_SUFFIX=
    
    DISABLE_IPV6=Yes
    
    BRIDGING=No
    
    DYNAMIC_ZONES=No
    
    PKTTYPE=Yes
    
    RFC1918_STRICT=No
    
    MACLIST_TABLE=filter
    
    MACLIST_TTL=
    
    SAVE_IPSETS=No
    
    MAPOLDACTIONS=No
    
    FASTACCEPT=No
    
    IMPLICIT_CONTINUE=Yes
    
    HIGH_ROUTE_MARKS=No
    
    USE_ACTIONS=Yes
    
    OPTIMIZE=1
    
    EXPORTPARAMS=No
    
    ###############################################################################
    #			P A C K E T   D I S P O S I T I O N
    ###############################################################################
    #yang ini juga nggak perlu ada yang diubah
    
    BLACKLIST_DISPOSITION=DROP
    
    MACLIST_DISPOSITION=REJECT
    
    TCP_FLAGS_DISPOSITION=DROP
    
    #LAST LINE -- DO NOT REMOVE

    konfigurasi /etc/shorewall/policy
    Bagian ini bersifat umum, berlaku unruk keseluruhan.

    bla.. bla..

    #pada baris pertama berarti dari firewall atau dari net yang berarti dari
    #server kita menuju keluar atau ke net di ACCEPT semua... masa di larang!?
    
    #pada baris kedua yang masuk dari net ke firewall kita di DROP semua
    
    #pada baris ketiga saya tambahkan agar jika dari jaringan masuk ke server kita
    #DROP dulu semuanya
    ###############################################################################
    #SOURCE		DEST		POLICY		LOG LEVEL	LIMIT:BURST
    $FW		net		ACCEPT
    net		$FW		DROP		info
    net		all		DROP		info
    # The FOLLOWING POLICY MUST BE LAST
    all		all		REJECT		info
    #LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE

    konfigurasi /etc/shorewall/rules
    Bagian ini merupakan pengecualian dari kongigurasi policy

    bla.. bla…

    #######################################################################################
    #ACTION	   SOURCE    DEST          PROTO     DEST	SOURCE
    ORIGINAL   RATE	    USER/  MARK
    #					     PORT       PORT(S)
    DEST	   LIMIT     GROUP
    
    # Reject Ping from the "bad" net zone.. and prevent your log from being flooded..
    
    Ping/ACCEPT	net		$FW
    
    # Permit all ICMP traffic FROM the firewall TO the net zone
    
    #pada baris pertama berarti membolehkan semua dari server keluar atau ke net melalui icmp
    #biar bisa ssh,treceroute,...etc kemana-manaaa
    
    #pada baris kedua berarti kita membolehkan user dari net melakukan koneksi melalui tcp
    #tepatnya port 22 ya... biar server kita bisa di kendalikan dengan ssh dari komp lain,
    #setujui saja 
    
    #pada baris ketiga berarti memperbolehkan server kita diakses lewat browser, yaitu port 80
    #karena kebetulan firewall saya pasang di webserver^^
    
    ACCEPT		$FW		net		icmp
    ACCEPT		net		$FW		tcp       22
    ACCEPT          all             $FW             tcp       80
    
    #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

    konfigurasi /etc/shorewall/interfaces

    bla..bla..

    #hmmm... yang ini nggak perlu ada yang diubah
    ###############################################################################
    #ZONE	INTERFACE	BROADCAST	OPTIONS
    net     eth0            detect          dhcp,tcpflags,logmartians,nosmurfs
    #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

    Beuh.. beres juga, tinggal aktifkan Shorewallnya

    root@chic# /etc/init.d/shorewall start

    Semoga berguna… trim’s :-)

    12 Comments »

    1. nice

      Comment by FWT — January 28, 2009 @ 5:20 am | Reply

    2. kaLo paz pengaktifan(/etc/init.d/shorewall start) reportnya maLah not done,,, itu gmn y???
      apa ada yg saLah kah???

      buat cek kalo konfigurasi seluruhnya (policy&ruLes) udah bener2 berez,,, gimmanna bung??

      makasih

      Comment by rhindhi — June 8, 2009 @ 8:51 am | Reply

      • wah2.. klo not done ada yg g bner tuh konfigurasinyah…
        coba cek lognyah pake :

        # tail -f /var/log/shorewall-init.log

        terus baca erornya dimana dah…

        kalo cek jalan atow nda…
        coba2 ajah…
        misalnya pas udah jalan tuh kan baik2 ajah… bisa di browse webnya…
        trus ubah bagian rules:

        ACCEPT all $FW tcp 80

        jadi :

        DROP all $FW tcp 80

        trus restart lg shorewallnya…
        klo gag bisa d browse.. brarti shorewallnya jalan kan… kira2 bgitu..

        trims yah..

        Comment by cica — June 9, 2009 @ 8:51 am | Reply

    3. Bung,
      kalo di combine dengan squid bisa ga’?
      gimano caranyo yao ?
      tengkiu lah yao

      Comment by budi — July 11, 2009 @ 6:56 pm | Reply

    4. bisa .. bisa …
      hmm… ak blun pernah klo bikin s cumi… :p

      saran ak si baca manual d situs shorewallny resmi.. enak kok .. :)
      hehe… muup yo.. drpd drimu ak ssatkan.. :p

      http://www.shorewall.net/Shorewall_Squid_Usage.html

      Comment by chott — July 12, 2009 @ 2:31 am | Reply

    5. Oyi Boss tak liak-liak nya dulu, kamsia

      Comment by budi — July 12, 2009 @ 3:18 am | Reply

    6. Saya pilih posting ini, sy tautkan posting ini dalam komentar blog saya di Cara Instal WordPress di Komputer Sendiri.
      Ping bakal dikirim segera :)

      Comment by Agus Suhanto — August 24, 2009 @ 9:35 pm | Reply

    7. [...] WordPress 2.8.4: Security Release (Aug 12, 2009) » Aplikasi Tersembunyi Di Komputer » Install Shorewall di Ubuntu server 8.04 » Mengenal Windows Registry » Membuat LiveUSB Ubuntu 8.10 » Java: Contoh Aplikasi [...]

      Pingback by Cara Instal WordPress di Komputer Sendiri « Agus Suhanto — August 24, 2009 @ 10:06 pm | Reply

    8. haha… sip2,, ayo qta sharing2 ,, :D

      Comment by chott — August 28, 2009 @ 1:57 pm | Reply

    9. thanks banget mas atas referensinya, mau nanya nih kenapa ya saat aku mau upgrade dari ubuntu fietsy versi 7 ke ubuntu versi 9.04 sulit banget nyari repositorinya ……?

      Comment by alfinfanther — September 12, 2009 @ 7:49 pm | Reply

    10. haha.. alhamdulillah kl gt :)
      tp jgn panggil mas,, ~_~

      klo loncat gtu riskan fin ,, pasti crash ..
      mending satu2..
      km update lewat internet kan ?
      kalo mo aman step by step
      dari 7 ke 7.04 trus ke 8 trus k 8.04 trus k 9 baru ke 9.04
      :)
      mending install ulang aj gmn ??
      kalo km ska ganti2 gtu mending bikin partisi home terpisah biar user2nya tetep ad ..
      itu saran ak ,, INSTALL ULANG .. :D

      klo mo tetep upgrade2 ..
      ia .. tinggal masukkin di source.list semuanya ,, yg sekarang ma versi yg akan datang ,, gtu ..
      bertahap .. biar g komplikasi ,, klo langsung gtu ,, d jamin crash .. :D

      Comment by chott — September 14, 2009 @ 11:01 am | Reply


    RSS feed for comments on this post. TrackBack URI

    Leave a comment

    Blog at WordPress.com.