Setting Web-Proxy Mikrotik

Sekedar buat pembanding aja benere, antara cache SquidNT  dengan cachenya mikrotik bagusan mana. Yaa.. walaupun menurutku sama bagusnya. 😀

Untuk mengaktifkan web-proxy mikrotik langkahnya sebagai berikut:

1. Buka winbox, pilih new terminal kemudian ketik perintah:

/ip proxy set enabled=yes ———————–> aktif

/ip proxy set parent-proxy-port=3128 ———> port default proxy

/ip proxy set cache-administrator=alwitofanurhudi@yahoo.co.id ———–> silahkan dirubah emailnya

/ip proxy set always-from-cache=yes —————> selalu mengambil dari cache

/ip proxy set cache-on-disk=yes ———————-> meletakkan cache pada hardisk

/ip proxy set cache-drive=primary-master ———> hardisk

/ip proxy> pr     ——————> melihat settingan web-proxy

Maka akan terlihat seperti ini:

enabled: yes
src-address: 0.0.0.0
port: 3128
parent-proxy: 0.0.0.0
parent-proxy-port: 3128
cache-administrator: “alwitofanurhudi@yahoo.co.id”
max-cache-size: unlimited
cache-on-disk: yes
max-client-connections: 1000
max-server-connections: 1000
max-fresh-time: 3d
serialize-connections: no
always-from-cache: yes
cache-hit-dscp: 4
cache-drive: primary-master

2. Buat NAT di firewall tuk share internet:
/ip firewall nat add chain=srcnat action=masquerade out-interface=Speedy (ethernet yang mengarah ke modem)

3. Buat agar tiap koneksi net melewati port 3128 (web-proxy):
/ip firewall nat add chain=dstnat action=redirect to-ports=3128 protocol=tcp
in-interface=lokal dst-port=80 ———-> (ethernet LAN, di sini aku menggunakan IP 10.10.10.1 untuk lokal LAN mikrotik)

4. Lalu kita buat Mangle di firewall buat menandai paket apa saja yang lewat:
/ip firewall mangle add chain=output action=mark-packet new-packet-mark=Proxy-Hit passthrough=no
out-interface=lokal dscp=4

/ip firewall mangle add chain=prerouting action=mark-packet new-packet-mark=Test-Up passthrough=n>
src-address=10.10.10.0/24 in-interface=lokal

/ip firewall mangle add chain=forward action=mark-connection new-connection-mark=Test-Conn
passthrough=yes src-address=10.10.10.0/24

/ip firewall mangle add chain=forward action=mark-packet new-packet-mark=Test-Down passthrough=no
in-interface=Speedy connection-mark=Test-Conn

/ip firewall mangle add  chain=output action=mark-packet new-packet-mark=Test-Down passthrough=no
dst-address=10.10.10.0/24 out-interface=lokal

Bagi temen2 yang kepingin nyoba, silahkan aja tinggal menyesuaikan IP nya.. 🙂

NB:

Untuk melihat apakah cache bekerja silahkan dicoba browsing kemudian perhatikan hit di NAT yang baru aja dibuat keliatan ato nggak. Jika ya, berarti dah bener. Terus, untuk ngelihat cachenya jalan atau nggak, lihat di ip web-proxy status. Jika ada hit di cache used, berarti settingan udah masuk ke cache.

 


SQUID buat Lucid

Setelah kemarin selesai ngoprek squid di windows, sekarang giliran pasang squid di ubuntu lucid. Langsung aja.. 🙂

1. Instal squid dan squid common via terminal/synaptic juga boleh. Aku lebih seneng lewat terminal. Buka terminal & ketik:

sudo apt-get install squid

2. Setelah terinstall, sekarang konfigurasi squidnya. Masih di terminal, ketik:

sudo gedit /etc/squid/squid.conf

Ohya, sebelum kita edit file konfigurasi squidnya, lebih baik kita bikin backupannya dulu. Perintah di terminal:

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.original

Terus set permision pada file backup tersebut:

sudo chmod a-w /etc/squid/squid.conf.original

3. Setelah yakin file konfigurasi terbackup, mari kita mainkan scriptnya.. 🙂

Seperti langkah nomor 2, ketik:

sudo gedit /etc/squid/squid.conf [ENTER]

Maka akan muncul file konfigurasi squid yang sangat panjang, berikut langkah-langkah yang harus diperhatikan….

  1. HTTP Port : Merupakan port yang digunakan untuk menjalankan Squid
    http_port 3128
  2. Visible Host Name : Agar jika terjadi error Squid dapat menemukan hostname yang valid
    visible_hostname [misal] proxsy.comp.system
  3. Cache Manager : Untuk mendefinisikan email address dari Cache Manager Squid
    cache_mgr [misal] alwitofanurhudi@yahoo.co.id
  4. Direktori Cache Squid : Mendefinisikan letak direktori squid beserta besarannya.
    Angka 500 menunjukkan ukuran direktori dalam MB
    Angka 16 menunjukkan jumlah sub direktori tingkat 1
    Angka 256 menunjukkan jumlah subdirektori tingkat 2 dari subdirektori tingkat 1
    Jumlah diatas makin besar makin baik
    cache_dir ufs /var/spool/squid 500 16 256
  5. Atur DNS dengan mencari dns_nameservers. Berhubung aku pake speedy, maka aku gunakan DNS dari speedy, yaitu: dns_nameservers  202.134.1.10 203.130.196.6
  6. Untuk konfigurasi yang lain, bisa dibiarkan default saja dulu. Atau bisa juga liat panduan konfigurasi di sini.
  7. Setelah dirasa cukup, save lalu exitLalu pada command terminal ketikan perintah ;
    # squid -z

    Fungsi : untuk membuat direktori cache yang telah kita buat pada perintah squid.

  8. Dilanjutkan dengan menjalankan squid yang telah kita buat dengan perintah

sudo squid start

Demikian saja dulu..

Konfigurasi di atas masih sangat minim tapi sudah bisa bekerja. Agar bisa lebih optimal, temen2 bisa berkreasi sendiri. Oyiee..?? 😀

Sedikit tambahan, setelah menginstall squid, ada beberapa lokasi direktory penting yang perlu diketahui, yaitu:

/etc/squid                             = Direktori konfigurasi
/etc/squid/squid.conf     = File konfigurasi squid
/usr/share/doc/squid     = Berisi dokumentasi
/usr/lib/squid                     = File2 pendukung
/usr/sbin/squid                  = Squid daemon
/var/log/squid                    = Direktory log/laporan
/var/spool/squid               = Direktory tempat menyimpan cache

Salam.. 🙂



Membuat aplikasi portable dengan Cameyo

Tulisan kali ini dibuat untuk memenuhi janji salah seorang temen yang minta software portable dari OnBelay, yaitu software buat memformat flashdisk maupun MMC yang bermasalah. Seperti pernah aku tulis di artikelku sebelumnya di sini.

Disini tidak aku jelaskan bagaimana cara membuat software portable tersebut. Tapi jangan khawatir, disini ada step-by-stepnya. Dan untuk software OnBelay versi 2 portable yang aku janjikan, silahkan download di sini. Pada saat dijalankan akan dimintai serial number/license key, abaikan saja langsung OK..

Salam.. 🙂


Akses modem di belakang mikrotik melalui internet

Iseng aja sebenere.. coz nggak tahu juga buat apa aku ngremote modemku sendiri. 😀 Tapi siapa tahu nantinya berguna. He.. 😀

Selama ini, aku slalu nggak bisa akses modemku diluar jaringan. Tiap aku tulis alamat IP Address di browser, yang keluar halaman konfigurasi modem, tapi malah webbox mikrotikku seperti ini:

Rules Virtual Server pada NAT di modem aku buat 1 rules dengan tujuan biar mikrotik dapet aku akses diluar jaringan (seperti screnshoot di atas), yaitu:

Otomatis, tiap aku ketikkan alamat IP di browser, aku selalu dibawa ke menu login webbox mikrotik. Nah, sekarang gimana caranya biar bisa masuk ke menu modem sekaligus juga tetep bisa mengakses menu login webbox mikrotik..??

Sederhana saja. Cukup buatkan NAT pada firewall di mikrotik sebagai berikut:

chain=dstnat protocol=tcp  dst-port=8080 action=dst-nat to-addresses=192.168.1.1 to-ports=80

Dimana IP default konfigurasi modem adalah 192.168.1.1 dan port default web/http adalah 80. Sedangkan port 8080 adalah port alternatif dari web/http.

Sekarang tinggal dicoba aja remote kedua-duanya (webbox mikrotik & modem) di luar jaringan. Kalau settingannya bener, maka akan tampak seperti ini:

Rebesss… ^_^


Remote PC dibelakang Mikrotik luar jaringan

Tutor kali ini aku udah tested dan berhasil dengan IP address dynamic:

1. Daftar akun di DynDNS.com
2. Setelah akun aktif, aktifkan fitur DDNS di modem dengan mengisi setiap form sesuai dengan data yang ada pada akun DynDNS.
3. Pada bagian Interface Setup/Internet, pilih PPPoA/PPPoE isi username dan password, NAT jadikan Enable.
4. Pada bagian Advanced Setup/NAT, pilih Virtual Server dan isi seperti berikut:

– Rule Index                     : 1
– Application                   : – / –
– Protocol                           : All
– Start Port Number    : 80 —————> merupakan port HTTP
– End Port Number      : 8291 —————> merupakan port (default) buat masuk mikrotik
– Local IP Address        : 192.168.1.101 ——-> merupakan IP Mikrotik yang terkoneksi dengan modem (192.168.1.100)

5. Save
6. Download DynDNS Updater Configuration tool (ada disitusnya DynDNS) dan install di PC dilanjutkan dengan setting.
7. Buat rule NAT pada mikrotik seperti berikut:
add chain=dstnat protocol=tcp port dst=4899 in interface=dial-speedy action=dst-nat to addresses=192.168.2.1/ip yang akan diremote to ports=4899
* dimana 4899 adalah port default radmin
8. Silahkan coba remote dari luar jaringan.

NB:
Sebelum melakukan remote luar jaringan, test dulu hostname pengganti ip dynamic dari DynDNS dengan melakukan ping, browser, dan cocokkan IP di IPGUE.COM
Misal:
ping proxsy.dyndns.org ———-> dimana proxsy.dyndns.org adalah hostname dari ip dynamic kita.
Pada saat ping kita akan mendapatkan ip kita berapa, kemudian masukkan alamat ip tersebut ke url browser dan lihat apakah masuk ke mikrotik atau tidak.
Jika masuk, berarti berhasil. Tapi jika tidak, coba lihat IP di IPGUE.COM apakah cocok atau tidak IP kita.
Apabila tetep nggak cocok, kemungkinan besar adalah salah setting akun pada saat pengisian IP di DynDNS.com

Good luck..! ^_^


Sedikit tips buat SQUID Proxy

Pada artikel sebelumnya telah aku jelaskan secara sederhana bagaimana install squid proxy di windows. Dan di artikel kali ini, aku mencoba memberikan sedikit penjelasan dan mungkin sedikit tips yang mungkin bermanfaat bagi temen2 yang membutuhkan.

http_port : port squid yang digunakan pada server proxy. Secara default adalah 3128.
dns_nameservers : IP DNS server yang digunakan pada Squid, pada contoh diartikelku sebelumnya, aku menggunakan DNS dari Speedy wilayah jatim. Temen2 juga bisa menggantinya dengan IP DNS dari OpenDNS yang bisa digunakan sebagai filter untuk memblokir akses ke situs situs seperti konten dewasa, kekerasan, pornografi, judi dan sebagainya.
cache_mgr : pengelola Squid server. Misal: admin@network.com
visible_hostname : untuk menampilkan alamat web/host. Misal: asolole.wordpress.com
minimum_object_size : ukuran file minimal yang akan disimpan pada direktori cache Squid
maximum_object_size : ukuran file terbesar yang akan disimpan pada direktori cache Squid
maximum_object_size_in_memory : ukuran file terbesar yang akan disimpan pada memory CPU. Semakin besar file akan semakin menghabiskan kapasitas memory CPU. Lebih baik gunakan ukuran yang kecil, supaya bisa lebih banyak menampung file file berukuran kecil pada memory CPU.
cache_replacement_policy : Penempatan file pada direktori cache Squid. Aku menggunakan LFUDA, karena pada metode ini, akan menghapus file file berukuran kecil dan tetap menyimpan file file berukuran besar pada direktori cache Squid.
memory_replacement_policy : Penempatan file pada memory CPU. Aku menggunakan GDSF, karena akan menghapus file file berukuran besar dan tetap menyimpan file file berukuran kecil.
cache_dir : Letak direktori cache Squid. Jika pada satu komputer terdapat lebih dari satu HDD, letakkan cache direktori pada masing masing HDD. Pada prinsipnya lebih baik menyimpan cache pada banyak HDD dengan kapasitas direktori setiap hdd menjadi kecil kecil, daripada menyimpan cache direktori pada satu HDD dengan ukuran direktori yang besar.
access_log : Untuk menentukan letak file log Squid.

Kiranya demikian saja dulu yang bisa aku sampaikan. Selebihnya, temen2 bisa pelajari sendiri keterangannya pada file squid.conf.default atau bisa juga tanya2 mbah google. 😛


SQUID buat windows

Tiap kita mengakses situs sebenarnya yang kita lakukan adalah mendownload semua data berupa tulisan, link, teks, gambar dan file lain dalam halaman tersebut. Dalam proses standar, semua file ini akan disimpan dalam file temporer browser. Namun pada prakteknya, tiap kita membuka halaman yang sama, kita tetap mendownload file yang sama,berulang kali. Anggap saja suatu halaman web berukuran total 500KB,maka jika kita membuka halaman tersebut sepuluh kali dalam sehari makakita akan menggunakan bandwith sebesar 500KB x 10 = 5MB!

Proxy atau juga yang disebut Squid sebenarnya adalah program yang dikembangkan dalam dunia Linux yang bekerja efektif mengelola file temporer. Di google, kita bisa menemukan SquidNT yang dikembangkan dari versi linuxnya oleh Guido Serassio. Cara kerjanya sama dengan Squid di Linux, yakni dengan otomatis menyimpan semua file yang kita download saat mengakses situs di dalam satu file temporer yang disebut cache. Di sana semua konten, alamat, teks, gambar dan halaman web disimpan. Pada saat kita mengakses situs untuk pertama kali, squid akan secara otomatis menyimpannya dan membuat link bayangan agar saat halaman yang sama dibuka untuk kedua kali, browser tidak langsung mendownload dari situsa slinya. Melainkan mendownload dari cache squid yang notabene ada diPC/LAN. Sehingga halaman web akan lebih cepat terbuka. Jika kita sering membuka halaman yang sama, prosesnya akan jauh lebih cepat saat kedua kali dan seterusnya..

Sekarang kita lihat, berapa perhitungan bandwithnya. Suatu halaman sebesar 500KB, berisi halaman web sederhana dan berbagai gambar. Squid hanya akan mendownload kode HTML nya saja dan menyaring semua informasi yang ada di dalamnya. Jika dalam screening ini semua data pendukung(gambar, skrip, file) sudah ada di cache, bandwith tidak akan lebih besar dari 100Kb bahkan lebih kecil lagi. Anggap saja kita lakukan refresh selama 10 kali maka hasil yang didapat adalah: 100KB x10 =  2MB saja. Kita bisa menghemat bandwith menjadi 1/5 bahkan lebih kecil lagi!

Itulah mengapa aku sengaja sharing tutorial membuat/install Squid di windows. Oke, pertama download filenya di sini atau di sini.

Selanjutnya langkah instalasi:

1. Ekstrak file Squid-2.7STABLE7.bin yang telah didownload. Aku sarankan di ekstrak ke direktory c:\squid\ untuk lebih mempermudah mengikuti tutorial ini.

2. Lihat dan perhatikan isi folder c:\squid\etc\. Disana ada beberapa file konfigurasi default squid sebagai berikut:

– cachemgr.conf.default

– mime.conf.default

– squid.conf.default

– squid_radius_auth.conf.default

Yang perlu kita lakukan adalah, me-rename keempat file tersebut menjadi:

– cachemgr.conf

– mime.conf

– squid.conf

– squid_radius_auth.conf


3. Buka file squid.conf dengan editor teks. Bisa gunakan Notepad, Wordpad atau program pihak ketiga seperti Notepad++. Temukan tulisan TAG: http_port. Pastikan di bagian bawah TAG ini sudah ada tulisan http_port 3128 sehingga tampak seperti berikut:

# TAG: http_port

# Usage: port [options]

# hostname:port [options]

# If you run Squid on a dual-homed machine with an internal

# and an external interface we recommend you to specify the

# internal address:port in http_port. This way Squid will only be

# visible on the internal address.

#

# Squid normally listens to port 3128

http_port 3128

4. Temukan TAG: visible_hostname, tambahkan tulisan visible_hostname localhost di bagian bawah tag ini. Hapus tulisan # none. sehingga tampak seperti berikut:

# TAG: visible_hostname

# If you want to present a special hostname in error messages, etc,

# define this. Otherwise, the return value of gethostname()

# will be used. If you have multiple caches in a cluster and

# get errors about IP-forwarding you must set them to have individual

# names with this setting.

#

#Default:

visible_hostname localhost

5. Temukan http_access allow localnet. Tambahkan http_access allow localhost di bawahnya menjadi:

# Example rule allowing access from your local networks.

# Adapt localnet in the ACL section to list your (internal) IP networks

# from where browsing should be allowed

http_access allow localnet

http_access allow localhost

6. Temukan TAG: cache_mgr kemudian ubah menjadi seperti ini:

#  TAG: cache_mgr
#    Email-address of local cache manager who will receive
#    mail if the cache dies. The default is “webmaster”.
#
#Default:
cache_mgr localhost

#  TAG: mail_from
#    From: email-address for mail sent when the cache dies.
#    The default is to use ‘appname@unique_hostname’.
#    Default appname value is “squid”, can be changed into
#    src/globals.h before building squid.
#
#Default:
email.temen2@nama.domain

Misal: alwitofanurhudi@yahoo.co.id

7. Temukan TAG: dns_nameservers, pada tulisan dns_nameservers. Pada bagian bawah tag ini, isi dengan alamat DNS dari ISP yang digunakan dengan format dns_nameservers [primary DNS] [secondary DNS]. Dalam hal ini aku menggunakan ISP Speedy Wilayah Jatim maka akan tampak sebagai berikut:

# TAG: dns_nameservers

# Use this if you want to specify a list of DNS name servers

# (IP addresses) to use instead of those given in your

# /etc/resolv.conf file.

# On Windows platforms, if no value is specified here or in

# the /etc/resolv.conf file, the list of DNS name servers are

# taken from the Windows registry, both static and dynamic DHCP

# configurations are supported.

#

# Example: dns_nameservers 10.0.0.1 192.172.0.4

#

#Default:

dns_nameservers 202.134.1.10 202.134.0.155

Temen2 bisa temukan DNS yang lebih tepat dengan mencoba alamat DNS dari koleksi Server DNS Speedy (untuk yg menggunakan speedy)

202.134.0.155nsjkt1.telkom.net.id

203.130.196.5nsjkt3.telkom.net.id

203.130.196.155nsjkt2.telkom.net.id

202.134.2.5nsbdg1.telkom.net.id / ns2.telkom.net.id

202.134.1.10nssby1.telkom.net.id

203.130.208.18nssmg1.telkom.net.id

203.130.206.250nsmdn1.telkom.net.id

203.130.196.6ns1.telkom.net.id

202.134.1.7ns3.telkom.net.id

atau bisa juga DNS luar negeri di sini.

Akhiri dengan menyimpan file squid.conf tersebut.

8. Buka Start > Run > Ketik CMD [Enter]. Dalam Command Prompt, ketik baris perintah berikut untuk membuat cache direktory:

c:\squid\sbin\squid.exe -D -z [Enter]

Jika muncul pesan popup Windows Security Alert, pilih Unblock untuk memberi akses kepada instalasi Squid Proxy.

9. Selanjutnya, ketik perintah berikut:

c:\squid\sbin>squid.exe -d | -D [Enter]

Tunggu beberapa saat kemudian tekan CTRL + C.

10. Ketik perintah berikut untuk install service squid:

c:\squid\sbin>squid.exe -i [Enter]

12. Yang terakhir (masih di command prompt), ketik:

c:\squid\sbin\squid.exe -O -D [Enter]

11. Jendela command prompt bisa ditutup lalu jalankan Service Panel  melalui Control Panel > Administrative Tools > Services. atau

Start > Run > ketik Services.msc [Enter]

Temukan service bernama Squid > Klik link Start di panel sebelah kiri untuk menjalankan Squid.

12. Selanjutnya, Ubah setting pada browser. Arahkan proxy pada browser ke alamat localhost dengan port 3128 seperti gambar berikut:

Secara default Squid akan menjalankan proses sendiri tiap kali PC melakukan restart. Cache squid ini disimpan dalam folder c:\squid\var\cache. Untuk melihat log file squid proxy, temen2 bisa mengetikkan:

more c:\squid\var\logs\access.log [Enter]

UNINSTALL

Jika temen2 ingin menghapus squid, ketikkan perintah berikut di Command Prompt.

c:\squid\sbin>squid -r -n squid [Enter]

Selesai. Gampang bukan?

Semoga bermakna dan bermanfaat. 🙂